X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypes%2FTyCon.lhs;h=7d114820c206acefb6d2dd09ab183adf8d3843d2;hb=34429d31b0d48352e4ffd29186e919b6248cdd5c;hp=87ae25d1ca8eeabcf4c29c429cfd4a0b75187165;hpb=25f84fa7e4b84c3db5ba745a7881c009b778e0b1;p=ghc-hetmet.git diff --git a/compiler/types/TyCon.lhs b/compiler/types/TyCon.lhs index 87ae25d..7d11482 100644 --- a/compiler/types/TyCon.lhs +++ b/compiler/types/TyCon.lhs @@ -256,6 +256,8 @@ data AlgTyConRhs -- See Note [Newtype coercions] -- Invariant: arity = #tvs in nt_etad_rhs; -- See Note [Newtype eta] + -- Watch out! If any newtypes become transparent + -- again check Trac #1072. nt_etad_rhs :: ([TyVar], Type) , -- The same again, but this time eta-reduced @@ -475,6 +477,7 @@ data PrimRep | AddrRep -- a pointer, but not to a Haskell value | FloatRep | DoubleRep + deriving( Eq ) -- Size of a PrimRep, in bytes sizeofPrimRep :: PrimRep -> Int @@ -814,7 +817,7 @@ tcExpandTyCon_maybe, coreExpandTyCon_maybe Type, -- Body type (not yet substituted) [Type]) -- Leftover args --- For the *typechecker* view, we expand synonyms only +-- For the *typechecker* view, we expand (closed) synonyms only tcExpandTyCon_maybe (SynTyCon {tyConTyVars = tvs, synTcRhs = SynonymTyCon rhs }) tys = expand tvs rhs tys