
#11334: GHC panic when calling typeOf on a promoted data constructor -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: goldfire Type: bug | Status: new Priority: highest | Milestone: 8.0.1 Component: Compiler (Type | Version: 8.0.1-rc1 checker) | Resolution: | Keywords: TypeInType Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1757 Wiki Page: | -------------------------------------+------------------------------------- Changes (by simonpj): * owner: bgamari => goldfire Comment:
I suppose it would be reasonable to set all kind variables of kind * to be *, and use Any for the others. We don't want to just use Any all the time, because that wouldn't be backwards compatible and defaulting to * is quite sensible. The other reasonable way forward is to issue an error at `Proxy 'Con` without having more direction
I think I favour: * Default kind vars of kind `*` to `*` * Don't default others; instead error. But note that if we have `{k1:k2, k2:*}` then defaulting `k2` to `*` might mean we could then default `k1`. We do need to do deafulting somehow because even without `PolyKinds` consider {{{ data T f a = MkT (f a) }}} We get `{f :: k -> *, a :: k}` and we can't reject the program. Anyway, Richard, thanks for saying you'll get to it. Simon -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11334#comment:18 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler