… | |
… | |
335 | |
335 | |
336 | /* this is an EXACT copy of S_nuke_stacks in perl.c, which is unfortunately static */ |
336 | /* this is an EXACT copy of S_nuke_stacks in perl.c, which is unfortunately static */ |
337 | STATIC void |
337 | STATIC void |
338 | destroy_stacks(pTHX) |
338 | destroy_stacks(pTHX) |
339 | { |
339 | { |
340 | dSP; |
|
|
341 | |
|
|
342 | /* die does this while calling POPSTACK, but I just don't see why. */ |
340 | /* die does this while calling POPSTACK, but I just don't see why. */ |
343 | dounwind(-1); |
341 | dounwind(-1); |
344 | |
342 | |
345 | /* is this ugly, I ask? */ |
343 | /* is this ugly, I ask? */ |
346 | while (PL_scopestack_ix) |
344 | while (PL_scopestack_ix) |
… | |
… | |
439 | UNOP myop; |
437 | UNOP myop; |
440 | |
438 | |
441 | init_stacks (); /* from perl.c */ |
439 | init_stacks (); /* from perl.c */ |
442 | PL_op = (OP *)&myop; |
440 | PL_op = (OP *)&myop; |
443 | /*PL_curcop = 0;*/ |
441 | /*PL_curcop = 0;*/ |
444 | GvAV (PL_defgv) = (SV *)SvREFCNT_inc (next->args); |
442 | GvAV (PL_defgv) = (AV *)SvREFCNT_inc ((SV *)next->args); |
445 | |
443 | |
446 | SPAGAIN; |
444 | SPAGAIN; |
447 | Zero(&myop, 1, UNOP); |
445 | Zero(&myop, 1, UNOP); |
448 | myop.op_next = Nullop; |
446 | myop.op_next = Nullop; |
449 | myop.op_flags = OPf_WANT_VOID; |
447 | myop.op_flags = OPf_WANT_VOID; |