#7053: Panic with PolyKinds + GADTs
--------------------------------------+-------------------------------------
Reporter: dreixel | Owner:
Type: bug | Status: closed
Priority: normal | Milestone:
Component: Compiler | Version: 7.5
Resolution: fixed | Keywords: PolyKinds
Os: Unknown/Multiple | Architecture: Unknown/Multiple
Failure: None/Unknown | Difficulty: Unknown
Testcase: polykinds/T7053, T7053a | Blockedby:
Blocking: | Related:
--------------------------------------+-------------------------------------
Changes (by simonpj):
* status: new => closed
* difficulty: => Unknown
* resolution: => fixed
* testcase: => polykinds/T7053, T7053a
Comment:
Great. With HEAD it now gives
{{{
T7053.hs:6:52:
Expecting one more argument to `b'
In the type `TypeRep (a b)'
In the definition of data constructor `TyApp'
In the data declaration for `TypeRep'
}}}
which is right because there isn't a "complete kind signature". See
Section 7.8.3 of the user manual
http://www.haskell.org/ghc/dist/current/docs/html/users_guide/kind-
polymorphism.html#id9430056
If you give a "complete kind signature", it compiles fine:
{{{
data TypeRep (a :: k) :: * where
TyApp :: TypeRep a -> TypeRep b -> TypeRep (a b)
}}}
The precise specification of what it means to have a "complete kind
signature" is up for debate. Currently it is signalled by that "::" I
added.
Simon
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7053#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs