
Daniel Fischer
Is there any information, or otherwise accessible source specifying exactly when this was changed,
Checking the sources, it wasn't in base-4.2.0.2 (ghc-6.12.3), but it was in base-4.3.1.0 (ghc-7.0.2), so it was introduced with base-4.3
Thanks to you, and everybody else who replied. Now, it turns out, both me (who get this instance from imports) and my user (who doesn't) are using base-4.2.0.2, so it has to be elsewhere. The duplicate instance reports Control.Monad.Trans.Error - hackage insists this is part of "transformers", which I don't use, but maybe mtl imports and reexports the instances? Apparently this is the case, I tried to ghc-pkg hide mtl-2, and then I could load a file declaring an instance for Error e => Applicative (Either e) using mtl-1. So it appears I should require mtl >= 2 (and possibly base >= 4.3 as an alternative, but I guess mtl-2 is not too draconian). (This case was a bit opaque for me, I'm not sure how it could be made easier to trace down conflicts like this, perhaps I just don't know the right tools.) -k -- If I haven't seen further, it is by standing in the footprints of giants