mirror of
https://github.com/roc-lang/roc.git
synced 2025-09-30 15:21:12 +00:00
Calling ability with non-specialized type is an error
This commit is contained in:
parent
de9d97c5d1
commit
0792ccbbe8
6 changed files with 113 additions and 6 deletions
|
@ -108,9 +108,15 @@ pub fn constrain_module(
|
|||
let mut constraint = crate::expr::constrain_decls(constraints, home, declarations);
|
||||
|
||||
for (member_name, member_data) in abilities_store.root_ability_members().iter() {
|
||||
let vars = &member_data.variables;
|
||||
let rigids = (vars.rigid_vars.iter())
|
||||
// For our purposes, in the let constraint, able vars are treated like rigids.
|
||||
.chain(vars.able_vars.iter())
|
||||
.copied();
|
||||
let flex = vars.flex_vars.iter().copied();
|
||||
constraint = constraints.let_constraint(
|
||||
[],
|
||||
[],
|
||||
rigids,
|
||||
flex,
|
||||
[(*member_name, Loc::at_zero(member_data.signature.clone()))],
|
||||
Constraint::True,
|
||||
constraint,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue