3 ms·
Is the exception handling DMC C++ implements zero cost or setjmp/longjmp based?
by le-mark 8y ago
Is the exception handling DMC C++ implements zero cost or setjmp/longjmp based?
- MaxBarraclough 8y agoI'm pretty clueless here, but from a quick search on GitHub it looks like there's support for NT exception handling, and DWARF exception handling. (I realise this doesn't really answer your question, but it's a start.) https://github.com/DigitalMars/Compiler/blob/7a33233c/dm/src/dmc/nteh.c#L302 https://github.com/DigitalMars/Compiler/blob/7a33233c/dm/src... https://github.com/DigitalMars/Compiler/blob/7a33233c/dm/src/dmc/dwarfeh.c#L4 https://github.com/DigitalMars/Compiler/blob/7a33233c/dm/src...
- WalterBright 8y agoC++ EH is never zero cost, despite the hype. Herb Sutter just wrote a proposal to redo the semantics in C++ to reduce the cost of it. DMC++'s EH is not setjmp/longjmp, it is Windows SEH (Structured Exception Handling) based. The 32 bit DOS extender EH is based on my own table-based design.