X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fiface%2FBuildTyCl.lhs;h=aa01e70316cb9d5883b11f85856427dd2fdd92a6;hb=8406c69e81f9416bc4b93c4323bbd36b25655e65;hp=0e50f959d2d7d4c59986e22f0d77ed71be9f7aac;hpb=fd6ccd023fe4c1d4124a4fe504e07a23bf433722;p=ghc-hetmet.git diff --git a/compiler/iface/BuildTyCl.lhs b/compiler/iface/BuildTyCl.lhs index 0e50f95..aa01e70 100644 --- a/compiler/iface/BuildTyCl.lhs +++ b/compiler/iface/BuildTyCl.lhs @@ -37,7 +37,7 @@ import Data.List \begin{code} ------------------------------------------------------ buildSynTyCon :: Name -> [TyVar] -> SynTyConRhs -> TyCon -buildSynTyCon name tvs rhs@(OpenSynTyCon rhs_ki) +buildSynTyCon name tvs rhs@(OpenSynTyCon rhs_ki _) = mkSynTyCon name kind tvs rhs where kind = mkArrowKinds (map tyVarKind tvs) rhs_ki @@ -100,10 +100,10 @@ mkAbstractTyConRhs :: AlgTyConRhs mkAbstractTyConRhs = AbstractTyCon mkOpenDataTyConRhs :: AlgTyConRhs -mkOpenDataTyConRhs = OpenDataTyCon +mkOpenDataTyConRhs = OpenTyCon Nothing False mkOpenNewTyConRhs :: AlgTyConRhs -mkOpenNewTyConRhs = OpenNewTyCon +mkOpenNewTyConRhs = OpenTyCon Nothing True mkDataTyConRhs :: [DataCon] -> AlgTyConRhs mkDataTyConRhs cons @@ -141,7 +141,7 @@ mkNewTyConRhs tycon_name tycon con etad_rhs :: Type -- return a TyCon without pulling on rhs_ty -- See Note [Tricky iface loop] in LoadIface (etad_tvs, etad_rhs) = eta_reduce (reverse tvs) rhs_ty - + eta_reduce :: [TyVar] -- Reversed -> Type -- Rhs type -> ([TyVar], Type) -- Eta-reduced version (tyvars in normal order)