summaryrefslogtreecommitdiff
path: root/perly.y
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2015-01-05 21:41:26 -0800
committerFather Chrysostomos <sprout@cpan.org>2015-01-06 06:39:32 -0800
commit070d3cb6f06f7c7f0a932b57616cd28061cb96c0 (patch)
tree13f17a9a873b1ebf062605c5d27336931737be3d /perly.y
parenta8c717cfeba2a8e3b9ad4886fdb19601d89d846c (diff)
downloadperl-070d3cb6f06f7c7f0a932b57616cd28061cb96c0.tar.gz
perly.y: Don’t call op_lvalue on refgen kid
ck_spair also applies lvalue context to the kid ops, so we just end up calling op_lvalue twice on the same ops. It’s harmless (being idempo- tent), but wasteful.
Diffstat (limited to 'perly.y')
-rw-r--r--perly.y2
1 files changed, 1 insertions, 1 deletions
diff --git a/perly.y b/perly.y
index 99ee27b312..e575b70e02 100644
--- a/perly.y
+++ b/perly.y
@@ -857,7 +857,7 @@ term : termbinop
| term '?' term ':' term
{ $$ = newCONDOP(0, $1, $3, $5); }
| REFGEN term /* \$x, \@y, \%z */
- { $$ = newUNOP(OP_REFGEN, 0, op_lvalue($2,OP_REFGEN)); }
+ { $$ = newUNOP(OP_REFGEN, 0, $2); }
| myattrterm %prec UNIOP
{ $$ = $1; }
| LOCAL term %prec UNIOP