package CriticTest; use Moose; our $VERSION = '1.01'; has 'needs_build' => ( isa => 'Int', is => 'rw', lazy => 1, builder => '_build_needs_build', ); sub _build_needs_build { my $self = shift; my %args = @_; return $self; } 1; __END__ [~/perl/test]$ perlcritic -1 CriticTest.pm Private subroutine/method '_build_needs_build' declared but not used at line 14, column 1. Eliminate dead code. (Severity: 3) Always unpack @_ first at line 14, column 1. See page 178 of PBP. (Severity: 4)