[GHC] #16246: GHC HEAD-only Core Lint error with unboxed equality (Non-CoVar has coercion type)

GHC ghc-devs at haskell.org
Mon Jan 28 11:13:52 UTC 2019


#16246: GHC HEAD-only Core Lint error with unboxed equality (Non-CoVar has coercion
type)
-------------------------------------+-------------------------------------
        Reporter:  RyanGlScott       |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:  8.10.1
       Component:  Compiler          |              Version:  8.6.3
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  crash or panic                     |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #15648            |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 In `docs/core-spec/core-spec.pdf`, the syntax of Core includes coercions
 and coercion variables ''c''.   There is a different typing judgement for
 a coercion abstraction than for a non-coercion abstraction.  The `CoVar`
 distinction in GHC is trying to track variables that range over coercions.

 One path might be to say that there is really no distinction (in Core
 anyway) between a `CoVar` and any other `Id`; but then why do we have two
 typing judgements?

 Another path might be to uphold the distinction, explain why we have it,
 and make sure it is respected.

 Richard, which would you suggest and why?

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


More information about the ghc-tickets mailing list