diff options
author | Gerard Goossen <gerard@ggoossen.net> | 2011-08-27 17:08:07 +0200 |
---|---|---|
committer | Father Chrysostomos <sprout@cpan.org> | 2011-09-01 09:12:43 -0700 |
commit | 86e5639be8611d120113394b3774c1bbb3d94a38 (patch) | |
tree | 9b1ef72ee5759b1cc094827cb9c1170d88383a9b /pp.h | |
parent | b4155db21af9a8f817d175591c873bccbd919871 (diff) | |
download | perl-86e5639be8611d120113394b3774c1bbb3d94a38.tar.gz |
Fix overloaded <> when the peephole optimiser is disabled.
Diffstat (limited to 'pp.h')
-rw-r--r-- | pp.h | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -448,8 +448,12 @@ Does not use C<TARG>. See also C<XPUSHu>, C<mPUSHu> and C<PUSHu>. SETTARG; \ PUTBACK; \ if (jump) { \ + OP *jump_o = NORMAL->op_next; \ + while (jump_o->op_type == OP_NULL) \ + jump_o = jump_o->op_next; \ + assert(jump_o->op_type == OP_ENTERSUB); \ PL_markstack_ptr--; \ - return NORMAL->op_next->op_next; \ + return jump_o->op_next; \ } \ return NORMAL; \ } \ |