
#12423: Panic with DeriveAnyClass and DefaultSignatures -------------------------------------+------------------------------------- Reporter: knrafto | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by dfeuer): `DefaultSignatures` isn't actually relevant here; `DeriveAnyClass` seems to be solely responsible. I get the same error using {{{#!hs {-# LANGUAGE DeriveAnyClass #-} class Eq1 f where (==#) :: Eq a => f a -> f a -> Bool data Foo a = Foo (Either a a) deriving (Eq, Eq1) }}} Most surprisingly, to me, these examples compile successfully if `Foo` is modified just a drop. Both of the following work: {{{#!hs data Foo2 a = Foo2 a deriving (Eq, Eq1) data Foo3 a b = Foo3 (Either a b) deriving (Eq, Eq1) }}} (the latter needing the obvious `Eq a => Eq1 (Either a)` instance.) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12423#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler