I don't see that as separate statements
Perl::Critic doesn't understand 100.00% of Perl. But then again, if perlcritic is misreading that statement, other people might too. perlcritic doesn't complain with both {$_=>0} or {($_,0)}, and those make it a little more obvious what you're trying to do.
Anyway, to get an explanation from perlcritic, add the option --verbose 11:
$ perlcritic -3 --verbose 11 1129720.pl Comma used to separate statements at line 7, near '$_,0'. ValuesAndExpressions::ProhibitCommaSeparatedStatements (Severity: 4) Perl's comma statement separator has really low precedence, which leads to code that looks like it's using the comma list element separator not actually doing so. Conway suggests that the statement separator not be used in order to prevent this situation. ...
In reply to Re: explain perlcritic
by Anonymous Monk
in thread explain perlcritic
by EBADF
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |