… | |
… | |
629 | } |
629 | } |
630 | else |
630 | else |
631 | { |
631 | { |
632 | UNOP myop; |
632 | UNOP myop; |
633 | |
633 | |
634 | PL_op = (OP *)&myop; |
|
|
635 | |
|
|
636 | Zero(&myop, 1, UNOP); |
634 | Zero(&myop, 1, UNOP); |
637 | myop.op_next = Nullop; |
635 | myop.op_next = Nullop; |
638 | myop.op_flags = OPf_WANT_VOID; |
636 | myop.op_flags = OPf_WANT_VOID; |
|
|
637 | |
|
|
638 | PL_op = (OP *)&myop; |
639 | |
639 | |
640 | PUSHMARK(SP); |
640 | PUSHMARK(SP); |
641 | XPUSHs (sub_init); |
641 | XPUSHs (sub_init); |
642 | /* |
642 | /* |
643 | * the next line is slightly wrong, as PL_op->op_next |
643 | * the next line is slightly wrong, as PL_op->op_next |
… | |
… | |
954 | /*coro->mainstack = 0; *//*actual work is done inside transfer */ |
954 | /*coro->mainstack = 0; *//*actual work is done inside transfer */ |
955 | /*coro->stack = 0;*/ |
955 | /*coro->stack = 0;*/ |
956 | |
956 | |
957 | /* same as JMPENV_BOOTSTRAP */ |
957 | /* same as JMPENV_BOOTSTRAP */ |
958 | /* we might be able to recycle start_env, but safe is safe */ |
958 | /* we might be able to recycle start_env, but safe is safe */ |
959 | /*Zero(&coro->start_env, 1, JMPENV);*/ |
959 | /*Zero (&coro->start_env, 1, JMPENV);*/ |
960 | coro->start_env.je_ret = -1; |
960 | coro->start_env.je_ret = -1; |
961 | coro->start_env.je_mustcatch = TRUE; |
961 | coro->start_env.je_mustcatch = TRUE; |
962 | |
962 | |
963 | RETVAL = coro; |
963 | RETVAL = coro; |
964 | OUTPUT: |
964 | OUTPUT: |