--- gforth/prim 2010/08/31 20:10:59 1.255 +++ gforth/prim 2010/09/01 16:52:12 1.256 @@ -618,6 +618,18 @@ f_fp = fp; c_lp = lp; a_newhandler = rp-5; +(throw1) ( ... wball a_handler -- ... wball ) gforth paren_throw1 +rp = a_handler; +lp = (Address)rp[1]; +fp = (Float *)rp[2]; +sp = (Cell *)rp[3]; +#ifndef NO_IP +ip=IP; +#endif +SUPER_END; +VM_JUMP(EXEC1(*(Xt *)rp[4])); + + \+ \ don't make any assumptions where the return stack is!!