@@ -14,6 +14,7 @@ import SourceSyntax.Location (Located, noneNoDocs)
14import SourceSyntax.PrettyPrint
14import SourceSyntax.PrettyPrint
15import Text.PrettyPrint
15import Text.PrettyPrint
16import qualified Type.State as TS
16import qualified Type.State as TS
17+import Type.ExtraChecks (extraChecks)
17import Control.Monad.State
18import Control.Monad.State
18import Control.Arrow (second)
19import Control.Arrow (second)
19import Transform.SortDefinitions as Sort
20import Transform.SortDefinitions as Sort
@@ -46,6 +47,6 @@ infer interfaces modul = unsafePerformIO $ do
46 state <- execStateT (Solve.solve constraint) TS.initialState
47 state <- execStateT (Solve.solve constraint) TS.initialState
47 let errors = TS.sErrors state
48 let errors = TS.sErrors state
48 if null errors
49 if null errors
49− then return $ Right (Map.difference (TS.sSavedEnv state) header)
50+ then return . extraChecks $ Map.difference (TS.sSavedEnv state) header
50 else Left `fmap` sequence (reverse errors)
51 else Left `fmap` sequence (reverse errors)