This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Setting $_ to multiline glob in @INC filter
[perl5.git] / lib / strict.pm
index e9fc4ff..8eed8bc 100644 (file)
@@ -1,6 +1,6 @@
 package strict;
 
-$strict::VERSION = "1.06";
+$strict::VERSION = "1.08";
 
 # Verify that we're called correctly so that strictures will work.
 unless ( __FILE__ =~ /(^|[\/\\])\Q${\__PACKAGE__}\E\.pmc?$/ ) {
@@ -14,13 +14,18 @@ refs => 0x00000002,
 subs => 0x00000200,
 vars => 0x00000400
 );
+my %explicit_bitmask = (
+refs => 0x00000020,
+subs => 0x00000040,
+vars => 0x00000080
+);
 
 sub bits {
     my $bits = 0;
     my @wrong;
     foreach my $s (@_) {
        if (exists $bitmask{$s}) {
-           $^H{"strict/$s"} = undef;
+           $^H |= $explicit_bitmask{$s};
        }
        else { push @wrong, $s };
         $bits |= $bitmask{$s} || 0;
@@ -124,9 +129,9 @@ is a simple identifier (no colons) and that it appears in curly braces or
 on the left hand side of the C<< => >> symbol.
 
     use strict 'subs';
-    $SIG{PIPE} = Plumber;      # blows up
-    $SIG{PIPE} = "Plumber";    # just fine: quoted string is always ok
-    $SIG{PIPE} = \&Plumber;    # preferred form
+    $SIG{PIPE} = Plumber;   # blows up
+    $SIG{PIPE} = "Plumber"; # fine: quoted string is always ok
+    $SIG{PIPE} = \&Plumber; # preferred form
 
 =back