This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
TRY_CATCH_EXPR/TRY_FINALLY_EXPRIf operand 0 throws an exception, there is an implicit rethrow after
executing operand 1. (Of course, operand 1 can prevent that rethrow
by doing its own throw, or by calling a function which does not
return, etc.).
TRY_CATCH_EXPR is generated for C++ try { ... } catch (...) { }
TRY_FINALLY_EXPR is generated for class C { ~C(); }; ... { C c; ... } to ensure that C's destructor is run.
And of course they can be generated for other languages as well.
For the C++ code shown above try { ... } catch(...) {} From memory I get a TRY_BLOCK node and not a TRY_CATCH_EXPR.
Thanks, Brendon.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |