swap <[]> and <{}> syntax
[ghc-hetmet.git] / compiler / types / Generics.lhs
index f4afda5..323da41 100644 (file)
@@ -135,11 +135,7 @@ tc_mkRepTyCon tycon metaDts =
      ; let -- `tyvars` = [a,b]
            tyvars  = tyConTyVars tycon
 
-           -- rep0Ty has kind `kind of D` -> *
-           --      rep_kind = tyConKind tycon `mkArrowKind` liftedTypeKind
-          --      SLPJ The above type looks quite wrong to me! 
-          --           The kind sig in the comment for rep0Ty looks right
-          --      
+           -- rep0Ty has kind * -> *
            rep_kind = liftedTypeKind `mkArrowKind` liftedTypeKind
 
            -- `appT` = D a b
@@ -222,7 +218,7 @@ data MetaTyCons = MetaTyCons { -- One meta datatype per dataype
                              , metaS :: [[TyCon]] }
                              
 instance Outputable MetaTyCons where
-  ppr (MetaTyCons d c s) = ppr d <+> ppr c <+> ppr s
+  ppr (MetaTyCons d c s) = ppr d $$ vcat (map ppr c) $$ vcat (map ppr (concat s))
                                    
 metaTyCons2TyCons :: MetaTyCons -> [TyCon]
 metaTyCons2TyCons (MetaTyCons d c s) = d : c ++ concat s