diff options
author | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2006-07-05 20:00:10 +0000 |
---|---|---|
committer | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2006-07-05 20:00:10 +0000 |
commit | f17e6c41cacfbc6fe88a5ea5e01ba690dfdc7f2e (patch) | |
tree | 90e0e01e43cbcda7781b15d8a1f04ca5f5ea9ec2 /op.c | |
parent | fba16c4d09cfcc4722bb692c88c7da4ddeabb5ac (diff) | |
download | perl-f17e6c41cacfbc6fe88a5ea5e01ba690dfdc7f2e.tar.gz |
Fix a bug on setting OPpASSIGN_COMMON on a AASSIGN op when the left
side is made out a list declared with our(). In this case OPpLVAL_INTRO
isn't set on the left op, so we just remove that check. Add new tests.
p4raw-id: //depot/perl@28488
Diffstat (limited to 'op.c')
-rw-r--r-- | op.c | 2 |
1 files changed, 0 insertions, 2 deletions
@@ -3783,7 +3783,6 @@ Perl_newASSIGNOP(pTHX_ I32 flags, OP *left, I32 optype, OP *right) * to store these values, evil chicanery is done with SvCUR(). */ - if (!(left->op_private & OPpLVAL_INTRO)) { OP *lastop = o; PL_generation++; for (curop = LINKLIST(o); curop != o; curop = LINKLIST(curop)) { @@ -3837,7 +3836,6 @@ Perl_newASSIGNOP(pTHX_ I32 flags, OP *left, I32 optype, OP *right) } if (curop != o) o->op_private |= OPpASSIGN_COMMON; - } if (right && right->op_type == OP_SPLIT) { OP* tmpop = ((LISTOP*)right)->op_first; if (tmpop && (tmpop->op_type == OP_PUSHRE)) { |