diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 1998-10-13 03:15:50 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1998-10-13 03:15:50 +0000 |
commit | 6b35e00972a13cc3d5e641e82fd498a9d9f6a324 (patch) | |
tree | 3e809e40b478caf5f1a1d7f844fef4f2229189fc /pp_hot.c | |
parent | 155fc61f8f24f48a8180aab9a504f33842272586 (diff) | |
download | perl-6b35e00972a13cc3d5e641e82fd498a9d9f6a324.tar.gz |
change#1614 merely disabled earlier fix (doh!); undo it and properly
fixup the cop_seq value that must be seen by lexical lookups that
emanate within eval''
p4raw-link: @1614 on //depot/perl: bd28dd3ca083953e5682058b02b9529902e14ca9
p4raw-id: //depot/perl@1944
Diffstat (limited to 'pp_hot.c')
-rw-r--r-- | pp_hot.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -1465,7 +1465,7 @@ PP(pp_iter) EXTEND(SP, 1); cx = &cxstack[cxstack_ix]; - if (cx->cx_type != CXt_LOOP) + if (CxTYPE(cx) != CXt_LOOP) DIE("panic: pp_iter"); av = cx->blk_loop.iterary; @@ -2273,6 +2273,11 @@ PP(pp_entersub) PUSHBLOCK(cx, CXt_SUB, MARK); PUSHSUB(cx); CvDEPTH(cv)++; + /* XXX This would be a natural place to set C<PL_compcv = cv> so + * that eval'' ops within this sub know the correct lexical space. + * Owing the speed considerations, we choose to search for the cv + * in doeval() instead. + */ if (CvDEPTH(cv) < 2) (void)SvREFCNT_inc(cv); else { /* save temporaries on recursion? */ |