#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

Reply via email to