mirror of
https://github.com/erg-lang/erg.git
synced 2025-08-03 10:23:20 +00:00
chore: improve overload error msg
This commit is contained in:
parent
5cf3acbf16
commit
22cd07a414
6 changed files with 52 additions and 13 deletions
|
@ -1203,13 +1203,21 @@ impl Context {
|
|||
let Type::Subr(subr_t) = input_t else {
|
||||
unreachable!()
|
||||
};
|
||||
let non_default_params = subr_t
|
||||
.non_default_params
|
||||
.iter()
|
||||
.map(|pt| pt.clone().map_type(|t| self.readable_type(t)));
|
||||
let default_params = subr_t
|
||||
.default_params
|
||||
.iter()
|
||||
.map(|pt| pt.clone().map_type(|t| self.readable_type(t)));
|
||||
Err(TyCheckError::overload_error(
|
||||
self.cfg.input.clone(),
|
||||
line!() as usize,
|
||||
loc.loc(),
|
||||
self.caused_by(),
|
||||
subr_t.non_default_params,
|
||||
subr_t.default_params,
|
||||
non_default_params,
|
||||
default_params,
|
||||
intersecs.iter(),
|
||||
))
|
||||
}
|
||||
|
@ -3530,7 +3538,7 @@ impl Context {
|
|||
attr,
|
||||
&candidates
|
||||
.iter()
|
||||
.map(|mp| mp.definition_type.clone())
|
||||
.map(|mp| self.readable_type(mp.definition_type.clone()))
|
||||
.collect::<Vec<_>>(),
|
||||
namespace.caused_by(),
|
||||
))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue