"{" starts both hash references and blocks, so "map { ..."
could be either the start of map BLOCK LIST or map EXPR, LIST.
Because perl doesn’t look ahead for the closing "}" it has to
take a guess at which its dealing with based what it finds just
after the "{". Usually it gets it right, but if it doesn’t it
won’t realize something is wrong until it gets to the "}" and
encounters the missing (or unexpected) comma. The syntax error
will be reported close to the "}" but you’ll need to change
something near the "{" such as using a unary "+" to give perl
some help:
Since PBP "map EXPR, LIST" fell completely out of my scope, but it explains why a hash-ref could even be considered valid here.
Cheers Rolf
( addicted to the Perl Programming Language)
In reply to Re^3: map syntax error -- weird
by LanX
in thread map syntax error -- weird
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |