diff options
author | Jesse Luehrs <doy@tozt.net> | 2013-07-21 10:50:36 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2013-07-21 10:50:36 -0400 |
commit | 61364ad449079a38afb60e4d27197ff2a61c460f (patch) | |
tree | fb0386317e783e99b1b042c288a6522458018aef | |
parent | 82c7c18a4c0bd537a55cd9313afa9c5213006bb2 (diff) | |
download | parse-keyword-61364ad449079a38afb60e4d27197ff2a61c460f.tar.gz parse-keyword-61364ad449079a38afb60e4d27197ff2a61c460f.zip |
need to save PL_op too
-rw-r--r-- | Keyword.xs | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -83,13 +83,16 @@ parse_block() PREINIT: I32 floor; CV *code; + OP *old_pl_op; CODE: PL_curcop = &PL_compiling; + old_pl_op = PL_op; floor = start_subparse(0, CVf_ANON); code = newATTRSUB(floor, NULL, NULL, NULL, parse_block(0)); if (CvCLONE(code)) { code = cv_clone(code); } + PL_op = old_pl_op; RETVAL = newRV_inc((SV*)code); OUTPUT: RETVAL |