[GHC] #12423: Panic with DeriveAnyClass and DefaultSignatures
GHC
ghc-devs at haskell.org
Wed Aug 24 20:45:19 UTC 2016
#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
More information about the ghc-tickets
mailing list