diff options
author | David Mitchell <davem@iabyn.com> | 2010-04-08 13:16:56 +0100 |
---|---|---|
committer | David Mitchell <davem@iabyn.com> | 2010-04-08 13:16:56 +0100 |
commit | 27e904532594b7fb224bdf9a05bf3b5336b8a39e (patch) | |
tree | faa272ed88223c30d736516f0ce4e58056a0ac3a /opcode.h | |
parent | 91e35ba127b7082418836f7f9f428e4d2f9b5745 (diff) | |
download | perl-27e904532594b7fb224bdf9a05bf3b5336b8a39e.tar.gz |
fix RT 23810: eval and tied methods
Something like the following ended up corrupted:
sub FETCH { eval 'BEGIN{syntax err}' }
The croak on error popped back the context stack etc to the EVAL pushed by
entereval, but the corresponding JUMPENV_PUSH(3) unwound all the way to the
outer perl_run, losing all the mg_get() related parts of the C stack.
It turns out that the run-time parts of pp_entereval were protected with
a new JUMPENV level, but the compile-time parts weren't. Add this.
Diffstat (limited to 'opcode.h')
0 files changed, 0 insertions, 0 deletions