
#15648: Core Lint error with source-level unboxed equality -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.8.1 Component: Compiler | Version: 8.4.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: #15209 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by RyanGlScott): More shenanigans: if you put this at the end of `Bug.hs`: {{{#!hs main :: IO () main = case ueqSym @Bool @Bool of _ -> mkLegit `seq` print () }}} Then you'll get an outright panic when you compile it: {{{ $ /opt/ghc/8.6.1/bin/ghc -O2 -fforce-recomp Bug.hs [1 of 2] Compiling Foo ( Foo.hs, Foo.o ) [2 of 2] Compiling Bug ( Bug.hs, Bug.o ) ghc: panic! (the 'impossible' happened) (GHC version 8.6.0.20180907 for x86_64-unknown-linux): StgCmmEnv: variable not found x_a5Pc local binds for: main $tc'Jank $trModule $tc'Jank2 $tc'Jank1 $tc'Jank3 $tc'Legit $tc'Legit2 $tc'Legit1 $tc'Legit3 $tcJankyEquality $tcJankyEquality1 $tcJankyEquality2 $tcLegitEquality $tcLegitEquality1 $tcLegitEquality2 $trModule3 $trModule1 $trModule2 $trModule4 main1 $WLegit $krep_r6Fh $krep1_r6Fi $krep2_r6Fj $krep3_r6Fk $krep4_r6Fl $krep5_r6Fm $krep6_r6Fn $krep7_r6Fo $krep8_r6Fp $krep9_r6Fq Call stack: CallStack (from HasCallStack): callStackDoc, called at compiler/utils/Outputable.hs:1160:37 in ghc:Outputable pprPanic, called at compiler/codeGen/StgCmmEnv.hs:149:9 in ghc:StgCmmEnv }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15648#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler