
#10524: PolyKinds doesn't interact well with DeriveFunctor -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: GHC rejects | Unknown/Multiple valid program | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by RyanGlScott): Oh, right. So in both GHC 7.10 and 7.11, the derived kinds for the type variables in {{{(Functor f, Functor g) => Functor (Compose f g)}}} are incorrect, but GHC 7.11 defers the errors until later. In that case, can this can of problem be fixed? Would {{{deriving}}} clauses always be able to infer the correct kinds, or would it be necessary in some cases to specify the kinds in a standalone {{{deriving}}} statement, e.g., {{{#!hs deriving instance (Functor (f :: * -> *), Functor (g :: * -> *)) => Functor (Compose f g) }}} (The kind signatures wouldn't be needed here due to the explicit {{{Functor}}} constraint, but you get the idea.) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10524#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler