#14580 closed bug (fixed)
GHC panic (TypeInType) (the 'impossible' happened)
Reported by: | Iceland_jack | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Compiler | Version: | 8.3 |
Keywords: | TypeInType | Cc: | |
Operating System: | Unknown/Multiple | Architecture: | Unknown/Multiple |
Type of failure: | None/Unknown | Test Case: | polykinds/T14580 |
Blocked By: | Blocking: | ||
Related Tickets: | Differential Rev(s): | ||
Wiki Page: |
Description
$ ghci -ignore-dot-ghci GHCi, version 8.3.20171208: http://www.haskell.org/ghc/ :? for help Prelude> import Data.Kind Prelude Data.Kind> :set -XPolyKinds -XDataKinds -XTypeInType -XTypeOperators Prelude Data.Kind> type Cat ob = ob -> ob -> Type Prelude Data.Kind> data ISO' :: Cat i -> i -> i -> Type Prelude Data.Kind> type ISO cat a b = ISO' cat a b -> Type Prelude Data.Kind> type (a <--> b) iso cat = ISO (iso :: cat a b) ghc-stage2: panic! (the 'impossible' happened) (GHC version 8.3.20171208 for x86_64-unknown-linux): piResultTy k_a1x1[tau:1] a_a1wU[sk:1] Call stack: CallStack (from HasCallStack): callStackDoc, called at compiler/utils/Outputable.hs:1144:37 in ghc:Outputable pprPanic, called at compiler/types/Type.hs:951:35 in ghc:Type Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug Prelude Data.Kind>
Change History (3)
comment:1 Changed 14 months ago by
comment:2 Changed 14 months ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Test Case: | → polykinds/T14580 |
HEAD gives
Prelude Data.Kind> type (a <--> b) iso cat = ISO (iso :: cat a b) <interactive>:7:31: error: • Expected kind ‘Cat a’, but ‘(iso :: cat a b)’ has kind ‘cat a b’ • In the first argument of ‘ISO’, namely ‘(iso :: cat a b)’ In the type ‘ISO (iso :: cat a b)’ In the type declaration for ‘<-->’
probably as a result of the patches I pushed yesterday. Hurrah.
I've added a regression test, to be on the safe side.
Note: See
TracTickets for help on using
tickets.
In 6f6d1050/ghc: