[GHC] #13911: GHC RTS VEH swallowing exceptions

GHC ghc-devs at haskell.org
Tue Aug 15 11:43:38 UTC 2017


#13911: GHC RTS VEH swallowing exceptions
-------------------------------------+-------------------------------------
        Reporter:  tim-m89           |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:  8.4.1
       Component:  Runtime System    |              Version:  8.0.1
      Resolution:                    |             Keywords:
Operating System:  Windows           |         Architecture:
 Type of failure:  Incorrect result  |  Unknown/Multiple
  at runtime                         |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------
Changes (by Phyx-):

 * failure:  Runtime crash => Incorrect result at runtime
 * architecture:  x86_64 (amd64) => Unknown/Multiple
 * milestone:   => 8.4.1


Comment:

 We do want to handle unhandled exceptions internally because of the
 interpreter. Code faulting during runtime linker handling leaves the
 application in an indeterminate state.
 Especially if it happened during e.g. processing of relocation.

 The problem with `SetUnhandledExceptionFilter` is that it replaces any
 existing top level filter. So it again interacts badly with your interop
 scenario, though maybe to a lesser extend.

 I think using a `VCH` instead of a `VEH` should work since those would be
 the last to be called instead of the first.

 I'll get this changed for `8.4` when I make the crash output more useful.

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


More information about the ghc-tickets mailing list