[GHC] #13233: typePrimRep panic while compiling GHC with profiling

GHC ghc-devs at haskell.org
Mon Feb 6 19:04:48 UTC 2017


#13233: typePrimRep panic while compiling GHC with profiling
-------------------------------------+-------------------------------------
        Reporter:  bgamari           |                Owner:
            Type:  bug               |               Status:  new
        Priority:  highest           |            Milestone:  8.2.1
       Component:  Compiler          |              Version:  8.0.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  crash or panic                     |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by bgamari):

 At this point I'm fairly convinced that this was introduced by the levity
 polymorphism work. While I'm still working out precisely what is going on,
 it seems that our conception of arity may be a bit inconsistent, meaning
 that we don't eta expand enough in CorePrep.

 One thing that surprised me is the type of the worker for `(#,#)`,
 {{{#!hs
 (#,#) :: forall (a :: TYPE k0) (b :: TYPE k1). a -> b -> (# a, b #)
 }}}
 In contrast I would have expected,
 {{{#!hs
 (#,#) :: forall (r1 :: RuntimeRep) (r2 :: RuntimeRep)
          (a :: TYPE r1) (b :: TYPE r2).
          a -> b -> (#,#) r1 r2 a b
 }}}
 That is, it seems to me like the worker is missing `RuntimeRep` arguments.
 Goldfire, am I missing something here?

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


More information about the ghc-tickets mailing list