summaryrefslogtreecommitdiff
path: root/op.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2005-12-24 14:48:42 +0000
committerNicholas Clark <nick@ccl4.org>2005-12-24 14:48:42 +0000
commitde3370bc7b91fa6f0f1f71c18926bc94bdc83114 (patch)
treeaadf02c421a24660a9fad015c017d4839038dafd /op.c
parente67426a489d5f4a242c5edc688e24e7e32e60c26 (diff)
downloadperl-de3370bc7b91fa6f0f1f71c18926bc94bdc83114.tar.gz
Unless the peephole optimiser already knows that we're in void context,
avoid even attempting the whole proxy constant sub copying optimisation. p4raw-id: //depot/perl@26482
Diffstat (limited to 'op.c')
-rw-r--r--op.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/op.c b/op.c
index eebaf67952..cb9b0e6ebf 100644
--- a/op.c
+++ b/op.c
@@ -7319,6 +7319,10 @@ Perl_peep(pTHX_ register OP *o)
o->op_opt = 1;
+
+ if ((o->op_flags && OPf_WANT) != OPf_WANT_VOID)
+ break;
+
if ((o->op_private & ~OPpASSIGN_BACKWARDS) != 2)
break;