[GHC] #11148: T9563 doesn't pass with reversed uniques
GHC
ghc-devs at haskell.org
Tue Dec 1 16:46:29 UTC 2015
#11148: T9563 doesn't pass with reversed uniques
-------------------------------------+-------------------------------------
Reporter: niteria | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.10.2
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 RyanGlScott):
I'm not immediately sure what's wrong, but it doesn't seem specific to
`Generic1`. In fact, you can get the same error if you change `Generic1`
to `Functor`, `Foldable`, or `Traversable`. It seems that something about
typeclasses with kind `(* -> *) -> Constraint` triggers this, since I can
derive `Eq`, `Ord`, `Read`, `Show`, `Data`, and `Lift` for `G Int b Float
d` without any issue.
Another clue is that `data instance F A a = AData a deriving Generic1`
works fine, but `data instance F b a = AData a deriving Generic1` triggers
this error, so you need at least one type variable in a data instance for
this to happen. Perhaps the type variable in the data family declaration
and the type variable in the data family instance have conflicting
`Unique`s when reversed?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11148#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list