#1465: Type errors due to different package versions are a bit cryptic
----------------------------------------+-----------------------------------
Reporter: guest | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 6.8
Component: Compiler (Type checker) | Version: 6.6.1
Severity: normal | Resolution:
Keywords: | Difficulty: Easy (1 hr)
Os: Unknown | Testcase: tcfail182
Architecture: Unknown |
----------------------------------------+-----------------------------------
Comment (by simonmar):
Trouble is, that's just the problem 'guest' reported. It's not enough to
say that
Display imported from M does not match Display imported from Y! We want
to say where
Display originally came from.
What distinguishes these two types is the ''package'' they came from, not
the defining module. In the original example, the defining modules were
the same. GHC should never report the defining module of a name, because
that breaks abstraction, and it isn't useful: the defining module might be
unexposed, and undocumented. (I think we already report original names
when the name in question is not in scope at all, perhaps this should be
fixed too).
I suggest that when the unqualified names of the types that failed to
unify are the same, we report the package names, since this is the case
that is likely to be confusing to the user. It's probably useful to
report where the types were imported from too.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/1465>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs