Your small code sample has no violations using the default settings on Perl::Critic. However, you can turn up the severity, and start to get complaints. I am more familiar with the perlcritic command line tool:
$ perlcritic -1 critic
Code is not tidy at line 1, column 1. See page 33 of PBP. (Severity:
+ 1)
Use Emacs file variables to declare coding style at line 1, column 1.
+ Emacs can read per-file settings. (Severity: 2)
RCS keywords $Id$ not found at line 1, column 1. See page 441 of PBP.
+ (Severity: 2)
RCS keywords $Revision$, $HeadURL$, $Date$ not found at line 1, column
+ 1. See page 441 of PBP. (Severity: 2)
RCS keywords $Revision$, $Source$, $Date$ not found at line 1, column
+1. See page 441 of PBP. (Severity: 2)
Missing Perl version at line 1, column 1. Add "use 5.006" or similar.
+ (Severity: 1)
No package-scoped "$VERSION" variable found at line 1, column 1. See
+page 404 of PBP. (Severity: 2)
Return value of flagged function ignored - print at line 11, column 1.
+ See pages 208,278 of PBP. (Severity: 1)
Your results may vary depending on the version of Perl::Critic (I also have additional policies loaded on my system).
UPDATE: Why didn't you pass a filename on the command line to your critic program? $file has not been assigned a value.
Also, to set the severity in your critic program:
my $critic = Perl::Critic->new(-severity=>1);
|