diff options
author | Father Chrysostomos <sprout@cpan.org> | 2015-01-05 21:41:26 -0800 |
---|---|---|
committer | Father Chrysostomos <sprout@cpan.org> | 2015-01-06 06:39:32 -0800 |
commit | 070d3cb6f06f7c7f0a932b57616cd28061cb96c0 (patch) | |
tree | 13f17a9a873b1ebf062605c5d27336931737be3d | |
parent | a8c717cfeba2a8e3b9ad4886fdb19601d89d846c (diff) | |
download | perl-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.
-rw-r--r-- | perly.act | 4 | ||||
-rw-r--r-- | perly.h | 2 | ||||
-rw-r--r-- | perly.tab | 2 | ||||
-rw-r--r-- | perly.y | 2 |
4 files changed, 5 insertions, 5 deletions
@@ -1078,7 +1078,7 @@ case 2: case 168: #line 860 "perly.y" - { (yyval.opval) = newUNOP(OP_REFGEN, 0, op_lvalue((ps[(2) - (2)].val.opval),OP_REFGEN)); ;} + { (yyval.opval) = newUNOP(OP_REFGEN, 0, (ps[(2) - (2)].val.opval)); ;} break; case 169: @@ -1502,6 +1502,6 @@ case 2: /* Generated from: - * 0c499ecc5892868c1d5acd74ecc34b917f3c7fc5aa57d93b01ecd12f4a0f7a8b perly.y + * 742ccd162893f72458d7102c054eda970bae7a1de1a02b75fb23afc88e332e7f perly.y * d1d4df7b8e30ac9dede664af9179e6e5e7ddc7f2ad9c4eff9e2e5b32c9e16a6e regen_perly.pl * ex: set ro: */ @@ -256,6 +256,6 @@ typedef union YYSTYPE /* Generated from: - * 0c499ecc5892868c1d5acd74ecc34b917f3c7fc5aa57d93b01ecd12f4a0f7a8b perly.y + * 742ccd162893f72458d7102c054eda970bae7a1de1a02b75fb23afc88e332e7f perly.y * d1d4df7b8e30ac9dede664af9179e6e5e7ddc7f2ad9c4eff9e2e5b32c9e16a6e regen_perly.pl * ex: set ro: */ @@ -1140,6 +1140,6 @@ static const toketypes yy_type_tab[] = }; /* Generated from: - * 0c499ecc5892868c1d5acd74ecc34b917f3c7fc5aa57d93b01ecd12f4a0f7a8b perly.y + * 742ccd162893f72458d7102c054eda970bae7a1de1a02b75fb23afc88e332e7f perly.y * d1d4df7b8e30ac9dede664af9179e6e5e7ddc7f2ad9c4eff9e2e5b32c9e16a6e regen_perly.pl * ex: set ro: */ @@ -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 |