[GHC] #13398: Associated type family instance validity checking is too conservative

GHC ghc-devs at haskell.org
Wed Mar 8 15:10:36 UTC 2017


#13398: Associated type family instance validity checking is too conservative
-------------------------------------+-------------------------------------
        Reporter:  RyanGlScott       |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  high              |            Milestone:  8.2.1
       Component:  Compiler          |              Version:  8.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #11450            |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by RyanGlScott):

 Upon further thought, I'm not even sure why this particular restriction
 was added in the first place. #11450 was about making the type variables
 used in a class instance head the same as the variables used in the same
 positions in the associated type family instances. This business about not
 allowing multiple associated type family instances feels completely
 orthogonal to that issue (indeed, I wasn't even aware of its existence
 until just now, as it seems to have been snuck in without a mention in the
 GHC 8.2 release notes).

 Moreover, this additional check is causing code in the wild to fail, and
 for reasons that I don't comprehend. Simon, what exactly is the problem
 with allowing code like what is shown in the original program?

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


More information about the ghc-tickets mailing list