@@ -1131,7 +1131,9 @@ subsumes' val ty1 ty2 = do
11311131-- TODO: handle constrained types
11321132--
11331133meet :: Expr -> Expr -> Type -> Type -> UnifyT Type Check (Expr, Expr, Type)
1134−meet e1 e2 t1@(ForAll _ _ _) t2 = meet e1 e2 t1 t2
1134+meet e1 e2 (ForAll ident t1 _) t2 = do
1135+ t1' <- replaceVarWithUnknown ident t1
1136+ meet e1 e2 t1' t2
11351137meet e1 e2 t1 (ForAll ident t2 _) = do
11361138 t2' <- replaceVarWithUnknown ident t2
11371139 meet e1 e2 t1 t2'