summaryrefslogtreecommitdiff
path: root/op.c
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2001-12-08 15:13:39 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2001-12-08 15:13:39 +0000
commit188083017597a2a872494fc4c4e56a5c39b3f02e (patch)
tree2b3605ae61ac8c7c7b734e37dd8d110869aef78b /op.c
parentb734d6c9a69b651b431318a8a85ae26a06dc580e (diff)
downloadperl-188083017597a2a872494fc4c4e56a5c39b3f02e.tar.gz
Retract #11156 since Sarathy has found that it breaks code:
http://bugs.ActiveState.com/show_bug.cgi?id=18457 http://bugs.ActiveState.com/show_bug.cgi?id=18858 p4raw-id: //depot/perl@13533
Diffstat (limited to 'op.c')
-rw-r--r--op.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/op.c b/op.c
index d633b479cb..d3253d7d65 100644
--- a/op.c
+++ b/op.c
@@ -2065,15 +2065,9 @@ Perl_bind_match(pTHX_ I32 type, OP *left, OP *right)
right->op_type == OP_SUBST ||
right->op_type == OP_TRANS)) {
right->op_flags |= OPf_STACKED;
- if ((right->op_type != OP_MATCH &&
- ! (right->op_type == OP_TRANS &&
- right->op_private & OPpTRANS_IDENTICAL)) ||
- /* if SV has magic, then match on original SV, not on its copy.
- see note in pp_helem() */
- (right->op_type == OP_MATCH &&
- (left->op_type == OP_AELEM ||
- left->op_type == OP_HELEM ||
- left->op_type == OP_AELEMFAST)))
+ if (right->op_type != OP_MATCH &&
+ ! (right->op_type == OP_TRANS &&
+ right->op_private & OPpTRANS_IDENTICAL))
left = mod(left, right->op_type);
if (right->op_type == OP_TRANS)
o = newBINOP(OP_NULL, OPf_STACKED, scalar(left), right);