JMP_BUF recovery; if(SETJMP(recovery)) { /* an exception was thrown, value in throw_value */ } else { apply_svalue(...); /* no exception was thrown */ } UNSETJMP(recovery);
Btw, shouldn't throw_value and throw_severity really be fields in the Pike_interpreter struct?