'impossible' happened when deriving Functor on a type with a type family application
The following should fail with an appropriate error message.
I discovered this by accident when I changed the definition of type 'U' and forgot to remove 'deriving Functor'.
> {-# LANGUAGE TypeFamilies, DeriveFunctor #-}
> data U a = U (G a) deriving Functor
>
> class A a where
> type G a
Trac metadata
| Trac field | Value |
|---|---|
| Version | 7.2.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |