summaryrefslogtreecommitdiff
path: root/warnings.pl
diff options
context:
space:
mode:
authorPaul Marquess <paul.marquess@btinternet.com>2000-08-29 00:55:06 +0100
committerJarkko Hietaniemi <jhi@iki.fi>2000-08-28 23:12:05 +0000
commitf1f338184e4a44fc14036174dbaf0664efde29d6 (patch)
tree83c2c046990c9d1bfbe59b8e24a1788f84ed540d /warnings.pl
parentdbc74947e9fc1a7cf5a73c334e78f12a4207c5c2 (diff)
downloadperl-f1f338184e4a44fc14036174dbaf0664efde29d6.tar.gz
warnings fixes
Message-ID: <000501c01143$0230af80$2014140a@bfs.phone.com> p4raw-id: //depot/perl@6869
Diffstat (limited to 'warnings.pl')
-rw-r--r--warnings.pl9
1 files changed, 7 insertions, 2 deletions
diff --git a/warnings.pl b/warnings.pl
index 4be428031f..0c2d2ec458 100644
--- a/warnings.pl
+++ b/warnings.pl
@@ -473,14 +473,19 @@ sub bits {
sub import {
shift;
- ${^WARNING_BITS} |= bits(@_ ? @_ : 'all') ;
+ my $mask = ${^WARNING_BITS} ;
+ if (vec($mask, $Offsets{'all'}, 1)) {
+ $mask |= $Bits{'all'} ;
+ $mask |= $DeadBits{'all'} if vec($mask, $Offsets{'all'}+1, 1);
+ }
+ ${^WARNING_BITS} = $mask | bits(@_ ? @_ : 'all') ;
}
sub unimport {
shift;
my $mask = ${^WARNING_BITS} ;
if (vec($mask, $Offsets{'all'}, 1)) {
- $mask = $Bits{'all'} ;
+ $mask |= $Bits{'all'} ;
$mask |= $DeadBits{'all'} if vec($mask, $Offsets{'all'}+1, 1);
}
${^WARNING_BITS} = $mask & ~ (bits(@_ ? @_ : 'all') | $All) ;