TickBox representation change
[ghc-hetmet.git] / compiler / iface / IfaceSyn.lhs
index 4f37ca0..bcff5f0 100644 (file)
@@ -17,7 +17,7 @@ module IfaceSyn (
 
        -- Equality
        GenIfaceEq(..), IfaceEq, (&&&), bool, eqListBy, eqMaybeBy,
-       eqIfDecl, eqIfInst, eqIfRule, checkBootDecl,
+       eqIfDecl, eqIfInst, eqIfFamInst, eqIfRule, checkBootDecl,
        
        -- Pretty printing
        pprIfaceExpr, pprIfaceDeclHead 
@@ -41,6 +41,7 @@ import SrcLoc
 import BasicTypes
 import Outputable
 import FastString
+import Module
 
 import Data.List
 import Data.Maybe
@@ -483,6 +484,7 @@ instance Outputable IfaceNote where
     ppr IfaceInlineMe     = ptext SLIT("__inline_me")
     ppr (IfaceCoreNote s) = ptext SLIT("__core_note") <+> pprHsString (mkFastString s)
 
+
 instance Outputable IfaceConAlt where
     ppr IfaceDefault     = text "DEFAULT"
     ppr (IfaceLitAlt l)   = ppr l
@@ -649,6 +651,9 @@ eqWith = eq_ifTvBndrs emptyEqEnv
 eqIfInst d1 d2 = bool (ifDFun d1 == ifDFun d2 && ifOFlag d1 == ifOFlag d2)
 -- All other changes are handled via the version info on the dfun
 
+eqIfFamInst d1 d2 = bool (ifFamInstTyCon d1 == ifFamInstTyCon d2)
+-- All other changes are handled via the version info on the tycon
+
 eqIfRule (IfaceRule n1 a1 bs1 f1 es1 rhs1 o1)
         (IfaceRule n2 a2 bs2 f2 es2 rhs2 o2)
        = bool (n1==n2 && a1==a2 && o1 == o2) &&&