[GHC] #15621: Error message involving type families points to wrong location

GHC ghc-devs at haskell.org
Wed Sep 12 23:50:52 UTC 2018


#15621: Error message involving type families points to wrong location
-------------------------------------+-------------------------------------
        Reporter:  RyanGlScott       |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:  8.6.1
       Component:  Compiler (Type    |              Version:  8.4.3
  checker)                           |
      Resolution:                    |             Keywords:  TypeFamilies
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Poor/confusing    |  Unknown/Multiple
  error message                      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by goldfire):

 I agree that the fix for #14185 will fix this precise example, but will it
 fix all such examples? What if there is a `Refl :: F Int :~: F Int` and a
 `Refl :: F Int :~: F Bool` in the same function? Then we'd be right back
 here. So I think #14185 is a bit of a red herring here. (I also think that
 fix might not fix all cases of #14185 itself.)

 With the way deriveds currently work, the "wanteds don't rewrite wanteds"
 story applies really only to skolems (which can't be "improved" through
 deriveds). Here, we want it also to apply to unification variables. Yet we
 also want to keep the work that deriveds do in other cases. I'm out of
 time now, but I don't think this will be so easy, somehow...

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15621#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list