[D-runtime] [D-Programming-Language/druntime] 1117e5: implemented proper exception chaining on Posix
Sean Kelly
sean at invisibleduck.org
Mon Mar 28 15:09:17 PDT 2011
These changes should bring Posix exception chaining in line with Windows. The basic rule is that when a new (non-Error) Throwable T is thrown past an in-flight Throwable F it is replaced by F and appended to F's chain. If T is an Error then F is appended to T's chain and T continues to meander up the stack. I wasn't sure what to do if both T and F were of type Error, so I stuck to the aforementioned rule for now. I've tested this for a few moderately complex cases, but haven't gotten really fancy with nested exception generation. Hopefully the test suite will prove things out further.
More information about the D-runtime
mailing list