#13330: forkIO has inconsistent behavior under optimization -------------------------------------+------------------------------------- Reporter: dfeuer | Owner: dfeuer Type: bug | Status: patch Priority: normal | Milestone: 8.2.1 Component: Core Libraries | Version: 8.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: Other | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D3189 Wiki Page: | -------------------------------------+------------------------------------- Comment (by David Feuer <David.Feuer@…>): In [changeset:"701256df88c61a2eee4cf00a59e61ef76a57b4b4/ghc" 701256df/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="701256df88c61a2eee4cf00a59e61ef76a57b4b4" Change catch# demand signature * Give `catch#` a lazy demand signature, to make it more honest. * Make `catchException` and `catchAny` force their arguments so they actually behave as advertised. * Use `catch` rather than `catchException` in `forkIO`, `forkOn`, and `forkOS` to avoid losing exceptions. Fixes #13330 Reviewers: rwbarton, simonpj, simonmar, bgamari, hvr, austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D3244 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13330#comment:11> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler