strict
Pragma for doing strict error checking within the
current block. Can be turned off by prefixing with no
:
use strict 'vars'; ... no strict 'vars';
Provides three kinds of restriction:
strict 'refs'
Generates runtime error if you use any symbolic references.
strict 'subs'
Generates compile-time error if you use a bareword identifier that’s not a predeclared subroutine.
strict 'vars'
Generates compile-time error if you access a variable that wasn’t declared via
my
, isn’t fully qualified, or wasn’t imported.
use strict
by itself (with no
import list) is the most restrictive, causing all possible
restrictions to be imposed.
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.