X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=utils%2Fext-core%2FCore.hs;h=66270cd36ca43b0ce3ff319966c90a23f2e2d056;hp=5f8ed827d5545fd9e576f88d157a7ed049d7c330;hb=10704b34c1928dde3d0ef33fe37c3eb7b948975f;hpb=b0045fdd4404f3ac2ddacad8c39a017f01f8ff6b diff --git a/utils/ext-core/Core.hs b/utils/ext-core/Core.hs index 5f8ed82..66270cd 100644 --- a/utils/ext-core/Core.hs +++ b/utils/ext-core/Core.hs @@ -60,6 +60,7 @@ data Ty | TransCoercion Ty Ty | SymCoercion Ty | UnsafeCoercion Ty Ty + | InstCoercion Ty Ty | LeftCoercion Ty | RightCoercion Ty @@ -132,9 +133,9 @@ eqKind Kunlifted Kunlifted = True eqKind Kopen Kopen = True eqKind (Karrow k1 k2) (Karrow l1 l2) = k1 `eqKind` l1 && k2 `eqKind` l2 -eqKind _ _ = False -- no Keq kind is ever equal to any other... - -- maybe ok for now? - +eqKind (Keq t1 t2) (Keq u1 u2) = t1 == u1 + && t2 == u2 +eqKind _ _ = False splitTyConApp_maybe :: Ty -> Maybe (Qual Tcon,[Ty]) splitTyConApp_maybe (Tvar _) = Nothing