[GHC] #14131: Difference between newtype and newtype instance

GHC ghc-devs at haskell.org
Mon Aug 21 13:42:38 UTC 2017


#14131: Difference between newtype and newtype instance
-------------------------------------+-------------------------------------
        Reporter:  Iceland_jack      |                Owner:  RyanGlScott
            Type:  bug               |               Status:  patch
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.2.1
      Resolution:                    |             Keywords:  TypeFamilies
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #7938, #9574,     |  Differential Rev(s):  Phab:D3872
  #13985                             |
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by RyanGlScott):

 Replying to [comment:11 simonpj]:
 > What I mean is: the renaner cannot reject the right set of programs (see
 comment:8).  So the renamer must err on the side of acceptance, and leave
 the type checker to reject programs where variables appear on the RHS that
 are not bound on the left.

 Right, this is exactly what Phab:D3872 is doing at the moment. In
 particular, it changes `TcTyClsDecls` so that we check for free-floating
 kind variables (or, as you put it, variables that appear on the RHS that
 are not bound on the left) when typechecking family instances.

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


More information about the ghc-tickets mailing list