[GHC] #15066: EtaExpandLevPoly triggers a core lint error in profasm/profthreaded ways

GHC ghc-devs at haskell.org
Thu Apr 19 23:35:37 UTC 2018


#15066: EtaExpandLevPoly triggers a core lint error in profasm/profthreaded ways
---------------------------------+----------------------------------------
        Reporter:  alpmestan     |                Owner:  (none)
            Type:  bug           |               Status:  new
        Priority:  normal        |            Milestone:
       Component:  Compiler      |              Version:  8.5
      Resolution:                |             Keywords:
Operating System:  Linux         |         Architecture:  Unknown/Multiple
 Type of failure:  None/Unknown  |            Test Case:  EtaExpandLevPoly
      Blocked By:                |             Blocking:
 Related Tickets:                |  Differential Rev(s):
       Wiki Page:                |
---------------------------------+----------------------------------------

Comment (by RyanGlScott):

 I can also reproduce this with GHC 8.4.1 when compiling with `-prof
 -fprof-auto -O1` (or `-O2`).

 Here is a slightly more minimal reproduction:

 {{{#!hs
 {-# LANGUAGE UnboxedTuples, GADTs, TypeInType, ExplicitForAll #-}
 module Bug where

 import GHC.Exts

 data G a where
   MkG :: G (TupleRep '[LiftedRep])

 foo :: forall a (b :: TYPE a). G a -> b -> b
 foo MkG = (\x -> x) :: forall (c :: TYPE (TupleRep '[LiftedRep])). c -> c

 main :: IO ()
 main =
   let (# b #) = foo MkG (# True #)
   in print b
 }}}

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


More information about the ghc-tickets mailing list