+ for( handy = curp->labl ; handy != nil ; handy = handy->d.cdr)
+ {
+ if(handy->d.car == tag) goto foundit;
+ }
+ }
+ }
+ return;
+
+ foundit: /* restore context at catch */
+ if(pass1 && founduw)
+ { pass1 = FALSE;
+ goto ps2;
+ }
+ if(founduw) /* remember the state */
+ { protect(handy2 = newdot());
+ handy2->d.car = Veruwpt;
+ handy = handy2->d.cdr = newdot();
+ handy->d.car = tatom; /* t for throw */
+ handy = handy->d.cdr = newdot();
+ handy->d.car = tag;
+ handy = handy->d.cdr = newdot();
+ handy->d.car = value;
+ value = handy2;
+ /* printf("Ret uwp: ");printr(value,stdout);fflush(stdout);*/
+ }
+