|
@@ -175,9 +175,9 @@ module Monomorph = struct
|
|
m.tm_type <- Some t;
|
|
m.tm_type <- Some t;
|
|
let monos,kind = classify_constraints' m in
|
|
let monos,kind = classify_constraints' m in
|
|
Std.finally (fun () -> m.tm_type <- None) (fun () -> check_constraints kind t) ();
|
|
Std.finally (fun () -> m.tm_type <- None) (fun () -> check_constraints kind t) ();
|
|
- (* If the monomorph we're binding to has other yet unbound monomorphs, constrain them to our target type (issue #9640) .*)
|
|
|
|
|
|
+ (* If the monomorph we're binding to has other yet unbound monomorphs, bind them to our target type (issue #9640) .*)
|
|
List.iter (fun m2 ->
|
|
List.iter (fun m2 ->
|
|
- constrain_to_type m2 None t;
|
|
|
|
|
|
+ bind m2 t
|
|
) monos;
|
|
) monos;
|
|
do_bind m t
|
|
do_bind m t
|
|
end
|
|
end
|