X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcTyClsDecls.lhs;h=6788eee018ee58f40da5cb97e70ab21790ef0d4c;hp=0474581f61178be2d9e2a936a45c523b0a6f0921;hb=8406c69e81f9416bc4b93c4323bbd36b25655e65;hpb=2c634afb31848fd08c7f645beb5de21d8dbe09ea diff --git a/compiler/typecheck/TcTyClsDecls.lhs b/compiler/typecheck/TcTyClsDecls.lhs index 0474581..6788eee 100644 --- a/compiler/typecheck/TcTyClsDecls.lhs +++ b/compiler/typecheck/TcTyClsDecls.lhs @@ -615,7 +615,7 @@ tcTyClDecl1 _calc_isrec -- Check that we don't use families without -findexed-types ; checkTc idx_tys $ badFamInstDecl tc_name - ; return [ATyCon $ buildSynTyCon tc_name tvs' (OpenSynTyCon kind)] + ; return [ATyCon $ buildSynTyCon tc_name tvs' (OpenSynTyCon kind Nothing)] } -- "newtype family" or "data family" declaration @@ -634,8 +634,8 @@ tcTyClDecl1 _calc_isrec ; tycon <- buildAlgTyCon tc_name final_tvs [] (case new_or_data of - DataType -> OpenDataTyCon - NewType -> OpenNewTyCon) + DataType -> mkOpenDataTyConRhs + NewType -> mkOpenNewTyConRhs) Recursive False True Nothing ; return [ATyCon tycon] } @@ -945,8 +945,8 @@ checkValidTyCon :: TyCon -> TcM () checkValidTyCon tc | isSynTyCon tc = case synTyConRhs tc of - OpenSynTyCon _ -> return () - SynonymTyCon ty -> checkValidType syn_ctxt ty + OpenSynTyCon _ _ -> return () + SynonymTyCon ty -> checkValidType syn_ctxt ty | otherwise = -- Check the context on the data decl checkValidTheta (DataTyCtxt name) (tyConStupidTheta tc) `thenM_`