
#14332: Deriving clauses can have forall types -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (Type | Version: 8.2.1 checker) | Resolution: | Keywords: deriving Operating System: Unknown/Multiple | Architecture: Type of failure: GHC accepts | Unknown/Multiple invalid program | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by goldfire): In both of your examples, IIUC, the unification happens to the datatype variables, not the newly-quantified variables in the `deriving` clause. I agree that this kind unification is good. I further agree that any unwritten kinds in a `deriving` clause should be unified. But I think any explicitly written kinds are skolems, and that this doesn't cause problems. The example toward the end of comment:8 should be rejected; the user should have to write `Type`, not `k`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14332#comment:9 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler