/* handler for function 2 */ static Obj HdlrFunc2 ( Obj self ) { Obj t_1 = 0; Bag oldFrame; /* allocate new stack frame */ SWITCH_TO_NEW_FRAME(self,0,0,oldFrame); /* return 1 + 2; */ C_SUM_INTOBJS( t_1, INTOBJ_INT(1), INTOBJ_INT(2) ) SWITCH_TO_OLD_FRAME(oldFrame); return t_1; /* return; */ SWITCH_TO_OLD_FRAME(oldFrame); return 0; }
/* handler for function 2 */ static Obj HdlrFunc2 ( Obj self ) { Obj t_1 = 0; Bag oldFrame; OLD_BRK_CURR_STAT /* allocate new stack frame */ SWITCH_TO_NEW_FRAME(self,0,0,oldFrame); REM_BRK_CURR_STAT(); SET_BRK_CURR_STAT(0); /* return 1 + 2; */ C_SUM_INTOBJS( t_1, INTOBJ_INT(1), INTOBJ_INT(2) ) RES_BRK_CURR_STAT(); SWITCH_TO_OLD_FRAME(oldFrame); return t_1; /* return; */ RES_BRK_CURR_STAT(); SWITCH_TO_OLD_FRAME(oldFrame); return 0; }