Print infix function definitions correctly in HsSyn
[ghc-hetmet.git] / compiler / iface / IfaceType.lhs
index 8af258a..84c71ff 100644 (file)
@@ -29,9 +29,7 @@ import TypeRep
 import TyCon
 import Var
 import TysWiredIn
-import OccName
 import Name
-import Module
 import BasicTypes
 import Outputable
 import FastString
@@ -52,8 +50,7 @@ type IfaceIdBndr  = (FastString, IfaceType)
 type IfaceTvBndr  = (FastString, IfaceKind)
 
 -------------------------------
-type IfaceKind = IfaceType                     -- Re-use the Kind type, but no KindVars in it
-
+type IfaceKind     = IfaceType
 type IfaceCoercion = IfaceType
 
 data IfaceType
@@ -81,6 +78,7 @@ data IfaceTyCon       -- Abbreviations for common tycons with known names
   | IfaceTupTc Boxity Arity 
   | IfaceLiftedTypeKindTc | IfaceOpenTypeKindTc | IfaceUnliftedTypeKindTc
   | IfaceUbxTupleKindTc | IfaceArgTypeKindTc 
+  deriving( Eq )
 
 ifaceTyConName :: IfaceTyCon -> Name
 ifaceTyConName IfaceIntTc        = intTyConName
@@ -178,14 +176,7 @@ pprIfaceTvBndrs tyvars = hsep (map pprIfaceTvBndr tyvars)
 \begin{code}
 ---------------------------------
 instance Outputable IfaceType where
-  ppr ty = pprIfaceTypeForUser ty
-
-pprIfaceTypeForUser ::IfaceType -> SDoc
--- Drop top-level for-alls; if that's not what you want, use pprIfaceType dire
-pprIfaceTypeForUser ty
-  = pprIfaceForAllPart [] theta (pprIfaceType tau)
- where         
-    (_tvs, theta, tau) = splitIfaceSigmaTy ty
+  ppr ty = pprIfaceType ty
 
 pprIfaceType, pprParendIfaceType ::IfaceType -> SDoc
 pprIfaceType       = ppr_ty tOP_PREC