Ticket #1820 (new bug)
Windows segfault-catching only works for the main thread
|Reported by:||simonmar||Owned by:|
|Type of failure:||None/Unknown||Difficulty:||Unknown|
|Test Case:||derefnull(ghci), divbyzero(ghci)||Blocked By:|
On Windows, the RTS tries to catch segmentation faults and divide-by-zero exceptions using structured exception handling in rts/Main.c. Unfortunately this only works for the main thread, so if the exception occurs in another thread it won't be caught. GHCi runs all its computations in a separate thread, hence derefnull(ghci) and divbyzero(ghci) are failing.