
#15814: Orphan Instance Overlap Error Message -------------------------------------+------------------------------------- Reporter: parsonsmatt | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.4.3 Resolution: | Keywords: newcomer Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by RyanGlScott): * keywords: => newcomer Comment: Good idea. I don't think this would be that hard to do, given that we do something similar for other errors already. Here is an example of an ambiguous name occurrence error message (taken from the `tcfail037` test case): {{{ tcfail037.hs:7:11: error: Ambiguous occurrence ‘+’ It could refer to either ‘Prelude.+’, imported from ‘Prelude’ at tcfail037.hs:3:8-17 (and originally defined in ‘GHC.Num’) or ‘ShouldFail.+’, defined at tcfail037.hs:10:5 }}} That "and originally defined in ..." part is exactly what we need. The code for this error message can be found [http://git.haskell.org/ghc.git/blob/23956b2ada690c78a134fe6d149940c777c7efcc... here], in `ppr_defn_site`. We'd just need to incorporate similar logic to the function [http://git.haskell.org/ghc.git/blob/23956b2ada690c78a134fe6d149940c777c7efcc... here] which constructs error messages for overlapping instances. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15814#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler