@@ -53,7 +53,7 @@ addDataConstructor moduleName name args dctor tys = do
5353 let retTy = foldl TypeApp (TypeConstructor (Qualified (Just moduleName) name)) (map TypeVar args)
5454 let dctorTy = foldr function retTy tys
5555 let polyType = mkForAll args dctorTy
56− putEnv $ env { dataConstructors = M.insert (moduleName, dctor) (qualifyAllUnqualifiedNames moduleName env polyType, DataConstructor) (dataConstructors env) }
56+ putEnv $ env { dataConstructors = M.insert (moduleName, dctor) (qualifyAllUnqualifiedNames moduleName env polyType) (dataConstructors env) }
5757
5858addTypeSynonym :: ModuleName -> ProperName -> [String] -> Type -> Kind -> Check ()
5959addTypeSynonym moduleName name args ty kind = do
@@ -221,13 +221,12 @@ typeCheckAll mainModuleName currentModule (d@(ImportDeclaration moduleName ident
221221 Just (k, _) -> do
222222 guardWith (show currentModule ++ "." ++ show pn ++ " is already defined") $ (currentModule, pn) `M.notMember` types env
223223 modifyEnv (\e -> e { types = M.insert (currentModule, pn) (k, DataAlias moduleName pn) (types e) })
224− let keys = map (snd . fst) . filter (\(_, (fn, _)) -> fn `constructs` pn) . M.toList . dataConstructors $ env
224+ let keys = map (snd . fst) . filter (\(_, fn) -> fn `constructs` pn) . M.toList . dataConstructors $ env
225225 forM_ keys $ \dctor ->
226226 case (moduleName, dctor) `M.lookup` dataConstructors env of
227− Just (_, Alias _ _) -> return ()
228− Just (ctorTy, _) -> do
227+ Just ctorTy -> do
229228 guardWith (show currentModule ++ "." ++ show dctor ++ " is already defined") $ (currentModule, dctor) `M.notMember` dataConstructors env
230− modifyEnv (\e -> e { dataConstructors = M.insert (currentModule, dctor) (ctorTy, Alias moduleName (Ident (runProperName dctor))) (dataConstructors e) })
229+ modifyEnv (\e -> e { dataConstructors = M.insert (currentModule, dctor) ctorTy (dataConstructors e) })
231230 Nothing -> throwError (show moduleName ++ "." ++ show dctor ++ " is undefined")
232231 shadowTypeClassInstances env = do
233232 let instances = filter (\tcd ->