Added a CLEANUP mechanism to the exception handling library. Fixed a bug in the way setjmp() return codes were being handled that lead to infinite loops in some cases, exceptions getting missed in others. Made FINALLY {} a required element (unfortunately).

This commit is contained in:
2024-12-22 08:55:51 -05:00
parent d20fbbebe6
commit 53e7e6a094
14 changed files with 195 additions and 82 deletions

View File

@@ -4,10 +4,12 @@ int main(void)
{
TRY {
THROW(2, NULL);
} EXCEPT {
} CATCH_GROUP(1) {
} CATCH_GROUP(2) {
} CATCH_GROUP(3) {
EXCLIB_TRACE("Inside of CATCH_GROUP");
} FINALLY {
} ETRY;
return 0;
}