ghc-8.0.1-rc4: tyConRoles sees a TcTyCon
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE UnicodeSyntax #-}
type Constrd a = Num a ⇒ a
data ADT a = ADT (Constrd a) ExistentiallyLost
data ExistentiallyLost = ∀ u. TC u ⇒ ExistentiallyLost u
class u ~ (ATF1 u, ATF2 u) ⇒ TC u where
type ATF1 u ∷ *
type ATF2 u ∷ *
uie_handlers ∷ ADT Int
-- Loop:
-- - ADT depends on ExistentiallyLost (also the Constrd appendage)
-- - ExistentiallyLost depends on TC
-- - TC depends on ADT
-->
[1 of 1] Compiling Main ( /home/deepfire/src/ghc-testcases/tyconroles-sees-a-tctycon-tyalias.hs, interpreted )
<- ghc: panic! (the 'impossible' happened)
(GHC version 8.0.0.20160421 for x86_64-unknown-linux):
tyConRoles sees a TcTyCon Constrd
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug