Perl::CriticPerl::Critic::Policy::Modules::RequireNoMatchVarsWithUseEnglish(3)NAMEPerl::Critic::Policy::Modules::RequireNoMatchVarsWithUseEnglish - "use
English" must be passed a "-no_match_vars" argument.
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
Due to unfortunate history, if you use the English module but don't
pass in a "-no_match_vars" argument, all regular expressions in the
entire program, not merely the module in question, suffer a significant
performance penalty, even if you only import a subset of the variables.
use English; # not ok
use English '-no_match_vars'; # ok
use English qw< $ERRNO -no_match_vars >; # ok
use English qw($OS_ERROR); # not ok
In the last example above, while the match variables aren't loaded into
your namespace, they are still created in the "English" namespace and
you still pay the cost.
CONFIGURATION
This Policy is not configurable except for the standard options.
AUTHOR
Elliot Shank "<perl@galumph.com>"
COPYRIGHT
Copyright (c) 2008-2011 Elliot Shank.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself. The full text of this license can
be found in the LICENSE file included with this module.
perl v5.14.1Perl::Critic::Policy::Modules::RequireNoMatchVarsWithUseEnglish(3)