[Chapter 8] 8.16 B::Lint
Author: Ellen Siever, Stephen Spainhour & Nathan Patwardhan
Date: 1999-07-02T01:42:05Z

#

| Chapter 8 Standard Modules |

## 8.16 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 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 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

  Warns whenever an undefined subroutine is invoked.

8.15 B::Disassembler |  | 8.17 B::Showlex