
#8813: further support deriving instances Typeable1, Typeable2, etc ----------------------------------------------+---------------------------- Reporter: maeder | Owner: Type: task | Status: closed Priority: normal | Milestone: Component: Compiler | Version: Resolution: wontfix | 7.8.1-rc1 Operating System: Unknown/Multiple | Keywords: Type of failure: GHC rejects valid program | Architecture: Test Case: | Unknown/Multiple Blocking: | Difficulty: Unknown | Blocked By: | Related Tickets: ----------------------------------------------+---------------------------- Comment (by rwbarton): Well, I think this is a bit silly—you should just write the kind signature and forget that `Typeable1` ever existed. However, this does appear to work (with `ConstraintKinds`): {{{ type Typeable1 (t :: * -> *) = Typeable t class Typeable1 t => C t -- *Main> :k C -- C :: (* -> *) -> Constraint }}} so I suppose `Data.Typeable` could export such type synonyms `Typeable1`, etc. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8813#comment:11 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler