Don't freshen types in list comprehension generators
This commit is contained in:
parent
244ef6a6e2
commit
9eeb9ab11d
@ -1135,7 +1135,7 @@ infer_expr(Env, {list_comp, AsLC, Yield, [{letval, AsLV, Pattern, Type, E}|Rest]
|
|||||||
};
|
};
|
||||||
infer_expr(Env, {list_comp, AsLC, Yield, [Def={letfun, AsLF, _, _, _, _}|Rest]}) ->
|
infer_expr(Env, {list_comp, AsLC, Yield, [Def={letfun, AsLF, _, _, _, _}|Rest]}) ->
|
||||||
{{Name, TypeSig}, LetFun} = infer_letfun(Env, Def),
|
{{Name, TypeSig}, LetFun} = infer_letfun(Env, Def),
|
||||||
FunT = freshen_type(AsLF, typesig_to_fun_t(TypeSig)),
|
FunT = typesig_to_fun_t(TypeSig),
|
||||||
NewE = bind_var({id, AsLF, Name}, FunT, Env),
|
NewE = bind_var({id, AsLF, Name}, FunT, Env),
|
||||||
{typed, _, {list_comp, _, TypedYield, TypedRest}, ResType} =
|
{typed, _, {list_comp, _, TypedYield, TypedRest}, ResType} =
|
||||||
infer_expr(NewE, {list_comp, AsLC, Yield, Rest}),
|
infer_expr(NewE, {list_comp, AsLC, Yield, Rest}),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user