
#13409: Data types with higher-rank kinds are pretty-printed strangely -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.2 (Type checker) | Keywords: TypeInType | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: #13399 Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- First observed in https://ghc.haskell.org/trac/ghc/ticket/13399#comment:5. If you define this: {{{#!hs data Foo :: (* -> *) -> (forall k. k -> *) }}} and type `:i Foo` into GHCi, you get this back: {{{ type role Foo phantom nominal phantom data Foo (a :: * -> *) k (c :: k) }}} This seems to imply that Foo has three visible type parameters, which isn't true at all! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/13409 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler