TypeSynonymInstances dysfunctional in ghc-7.2.1-rc1?
The following code causes GHC to suggest enabling the TypeSynonymInstances language extension:
type Foo = Maybe Int
class Bar x where
bar :: x -> ()
bar _ = ()
instance Bar Int
instance Bar Foo
but adding a {-# LANGUAGE TypeSynonymInstances #-}
doesn't suffice, as GHC then suggests enabling FlexibleInstances instead.
With ghc-7.0.4 the TypeSynonymInstances extension by itself was enough to make the code above compile. This breaks compilation for a few packages on hackage which assume that TypeSynonymInstances suffices.
Trac metadata
Trac field | Value |
---|---|
Version | 7.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |