-
Simon Peyton Jones authored
*** NO NEED TO MERGE WITH 4.07 *** (but it would do no harm) * Improve an error message when overlapping instance declarations are present. Carl Witty reported this infelicitous message. The problem arises for this code: class Foo a class (Foo a) => Bar a data Dat a = Dat instance Foo (Dat a) instance Foo (Dat Integer) instance Bar (Dat a) The instance decl for Bar should say instance Foo (Dat a) => Bar (Dat a) because the overlapping instance decls for Foo can't be resolved (or at least might vary depending on how a is instantiated).
5f352824