B::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 that will be checked. The options are separated by commas and follow normal backend option conventions. Most of the options are lint-check options, in which 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 a print 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 ...

Get Perl in a Nutshell, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.