Lint
Provides program checking for Perl programs, equivalent to running Perl with the -w option. Named after the Unix lint program for checking C programs. Invoked as:
perl -MO=Lint[,options] program
program
is the name of the Perl program to be checked. The options are separated by commas and follow normal backend option conventions. Most of the options are lint-check options, where each option is a word specifying one lint check. Preceding an option with no-
turns off that option. Options specified later override earlier options. There is also one non-lint-check option, -u. Here is the list of available options:
- all
- Turns all warnings on.
- context
- Warns whenever an array is used in implicit scalar context.
- dollar-underscore
- Warns whenever
$_
is explicitly used anywhere or whenever it is used as the implicit argument of aprint
statement. - implicit-read
- Warns whenever an operation implicitly reads a Perl special variable.
- implicit-write
- Warns whenever an operation implicitly writes to a Perl special variable.
- none
- Turns off all warnings.
- private-names
- Warns whenever any variable, subroutine, or method name lives in a non-current package but begins with an underscore (
_
); doesn't warn about an underscore as a single-character name, e.g.,$_
. - regexp-variables
- Warns whenever one of the regular-expression variables
$'
,$&
, or$`
is used. - -u Package
- Normally checks only the main program code and all subroutines defined in package
main
; -u lets you specify other packages to be checked. - undefined-subs
- Warns whenever an undefined subroutine is invoked.