Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the Perl-Critic CPAN distribution.

Report information
The Basics
Id: 39787
Status: resolved
Priority: 0/
Queue: Perl-Critic

People
Owner: Nobody in particular
Requestors: STEFFENW [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 1.090
Fixed in: (no value)



Subject: RequireNoMatchVarsWithUseEnglish
you only accept # fill up my namespace with all the English variables use Englisch qw(-no_match_vars); or # uppend to shut up perl critic use Englisch qw($OS_ERROR -no_match_vars); and not use Englisch qw($OS_ERROR);
Subject: Re: [rt.cpan.org #39787] RequireNoMatchVarsWithUseEnglish
Date: Fri, 03 Oct 2008 06:46:10 -0500
To: bug-Perl-Critic [...] rt.cpan.org
From: Elliot Shank <perl [...] galumph.com>
Steffen Winkler via RT wrote: Show quoted text
> you only accept > > # fill up my namespace with all the English variables > use Englisch qw(-no_match_vars); > > or > # uppend to shut up perl critic > use Englisch qw($OS_ERROR -no_match_vars); > > and not > > use Englisch qw($OS_ERROR);
Yup. Bug.
Subject: Re: [rt.cpan.org #39787] RequireNoMatchVarsWithUseEnglish
Date: Fri, 10 Oct 2008 22:31:15 -0500
To: bug-Perl-Critic [...] rt.cpan.org
From: Elliot Shank <perl [...] galumph.com>
Elliot Shank wrote: Show quoted text
> Steffen Winkler via RT wrote:
>> you only accept >> >> # fill up my namespace with all the English variables >> use Englisch qw(-no_match_vars); >> >> or >> # uppend to shut up perl critic >> use Englisch qw($OS_ERROR -no_match_vars); >> >> and not >> >> use Englisch qw($OS_ERROR);
> > Yup. Bug.
Whoops. Wrong. Not bug. If you specify arguments to the import other than the match variables, but don't include the "-no_match_vars", the match variables aren't imported into your package, but they are still created in the English package. In other words, with use English qw($OS_ERROR); $English::POSTMATCH exists. You must use use English qw($OS_ERROR -no_match_vars); in order to avoid the performance penalty.
I am surprised about. Thank you for this critic rule. I will change all my source.