
#12785: GHC panic, TypeFamily in equality constraint -------------------------------------+------------------------------------- Reporter: heisenbug | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.1 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Compiling the attached module I get {{{ $ ghc --interactive Tree.hs GHCi, version 8.1.20161030: http://www.haskell.org/ghc/ :? for help [1 of 1] Compiling Tree ( Tree.hs, interpreted ) Tree.hs:28:63: error:ghc-stage2: panic! (the 'impossible' happened) (GHC version 8.1.20161030 for x86_64-apple-darwin): tcTyVarDetails cobox0_a1eK :: (m_a1ej[sk:2] :: Peano) ~# ('S n_a1eJ[ssk:3] :: Peano) Call stack: CallStack (from HasCallStack): prettyCurrentCallStack, called at compiler/utils/Outputable.hs:1076:58 in ghc:Outputable callStackDoc, called at compiler/utils/Outputable.hs:1080:37 in ghc:Outputable pprPanic, called at compiler/basicTypes/Var.hs:457:22 in ghc:Var Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug }}} When switching the call to `SBranchX` in line 29 to a call to `SBranch` the program compiles. So I suspect that the problem is rooted in the extra constraint attached to constructor `SBranchX`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12785 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler