
#8091: retry# lacks strictness information -------------------------------------+------------------------------------ Reporter: parcs | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by parcs): To be clear, the form of dead code elimination that this change enables is replacing {{{ #!haskell case retry# s1 of (# s2, a #) -> ...inaccessible.. }}} with simply {{{ #!haskell retry# s1 }}} Such Core can appear after performing case-of-case on code like {{{ #!haskell s <- readTVar v when (s > 0) retry ... }}} where everything after the `when` statement might get inlined under the scrutinization of `retry`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8091#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler