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?$/ ) {
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;
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