summaryrefslogtreecommitdiff
path: root/perly.y
diff options
context:
space:
mode:
authorBranislav ZahradnĂ­k <barney@cpan.org>2021-12-23 23:27:18 +0100
committerKarl Williamson <khw@cpan.org>2022-02-05 20:54:09 -0700
commit18cbf839872f70dd53e87fcb7f8a3be570a69669 (patch)
tree9d092835cf4753d3ec9a73dcb2131eb5d51b0b8d /perly.y
parent6e9eef6684fc76adb123d29c872346b287f47aad (diff)
downloadperl-18cbf839872f70dd53e87fcb7f8a3be570a69669.tar.gz
Use `optexpr` in anonymous to reduce number of symbols
Diffstat (limited to 'perly.y')
-rw-r--r--perly.y13
1 files changed, 5 insertions, 8 deletions
diff --git a/perly.y b/perly.y
index 3f63387952..67877cd7b9 100644
--- a/perly.y
+++ b/perly.y
@@ -1175,14 +1175,11 @@ termunop : PERLY_MINUS term %prec UMINUS /* -$x */
;
/* Constructors for anonymous data */
-anonymous: PERLY_BRACKET_OPEN expr PERLY_BRACKET_CLOSE
- { $$ = newANONLIST($expr); }
- | PERLY_BRACKET_OPEN PERLY_BRACKET_CLOSE
- { $$ = newANONLIST(NULL);}
- | HASHBRACK expr PERLY_SEMICOLON PERLY_BRACE_CLOSE %prec PERLY_PAREN_OPEN /* { foo => "Bar" } */
- { $$ = newANONHASH($expr); }
- | HASHBRACK PERLY_SEMICOLON PERLY_BRACE_CLOSE %prec PERLY_PAREN_OPEN /* { } (PERLY_SEMICOLON by tokener) */
- { $$ = newANONHASH(NULL); }
+anonymous
+ : PERLY_BRACKET_OPEN optexpr PERLY_BRACKET_CLOSE
+ { $$ = newANONLIST($optexpr); }
+ | HASHBRACK optexpr PERLY_SEMICOLON PERLY_BRACE_CLOSE %prec PERLY_PAREN_OPEN /* { foo => "Bar" } */
+ { $$ = newANONHASH($optexpr); }
| ANONSUB startanonsub proto subattrlist subbody %prec PERLY_PAREN_OPEN
{ SvREFCNT_inc_simple_void(PL_compcv);
$$ = newANONATTRSUB($startanonsub, $proto, $subattrlist, $subbody); }