diff --git a/src/Rlp/HindleyMilner.hs b/src/Rlp/HindleyMilner.hs index 9696300..64f5d09 100644 --- a/src/Rlp/HindleyMilner.hs +++ b/src/Rlp/HindleyMilner.hs @@ -85,7 +85,8 @@ gather' = \case (te,je) <- gather e let cs = concatMap (uncurry . equals $ je ^. assumptions) $ bs `zip` tbs as = foldr H.delete (je ^. assumptions) bs - j = mempty & constraints .~ cs & assumptions .~ as + j = mempty & constraints .~ (je ^. constraints <> cs) + & assumptions .~ as t = foldr (:->) te tbs pure (t,j) where