Magnus pushed to branch wip/mangoiv/27556 at Glasgow Haskell Compiler / GHC

Commits:

5 changed files:

Changes:

  • changelog.d/27556
    1
    +section: compiler
    
    2
    +synopsis: Remove a too strict assert in coreprep
    
    3
    +mrs: !16558
    
    4
    +issues: #27556

  • compiler/GHC/CoreToStg/Prep.hs
    ... ... @@ -1260,10 +1260,9 @@ cpeApp top_env expr
    1260 1260
     
    
    1261 1261
           -- See Note [Ticks and mandatory eta expansion]
    
    1262 1262
           AITick tickish
    
    1263
    -        | tickishPlace tickish == PlaceRuntime
    
    1263
    +        | PlaceRuntime <- tickishPlace tickish
    
    1264 1264
             , req_depth > 0
    
    1265
    -        -> assert (isProfTick tickish) $
    
    1266
    -           rebuild_app' env as fun' floats ss (tickish:rt_ticks) req_depth
    
    1265
    +        -> rebuild_app' env as fun' floats ss (tickish:rt_ticks) req_depth
    
    1267 1266
             | otherwise
    
    1268 1267
             -- See [Floating Ticks in CorePrep]
    
    1269 1268
             -> rebuild_app' env as fun' (snocFloat floats (FloatTick tickish)) ss rt_ticks req_depth
    

  • testsuite/tests/simplCore/should_compile/T27556.hs
    1
    +import Control.Exception
    
    2
    +
    
    3
    +main = mask $ \restore -> restore (pure ())
    
    4
    +

  • testsuite/tests/simplCore/should_compile/T27556.script
    1
    +:l T27556

  • testsuite/tests/simplCore/should_compile/all.T
    ... ... @@ -611,3 +611,4 @@ test('T27296', [], makefile_test, ['T27296'])
    611 611
     test('T27296b', [], makefile_test, ['T27296b'])
    
    612 612
     test('T27589', [grep_errmsg(r'wombat')], compile, ['-O -ddump-simpl -dno-typeable-binds -dsuppress-uniques'])
    
    613 613
     test('T27590', [grep_errmsg(r'wombat')], compile, ['-O -ddump-simpl -dno-typeable-binds -dsuppress-uniques'])
    
    614
    +test('T27556', [only_ways('ghci'), extra_hc_opts('-O -fno-unoptimized-core-for-interpreter')], ghci_script, ['T27556.script'])