summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/Carp.pm6
-rw-r--r--lib/Math/BigFloat.pm1
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/Carp.pm b/lib/Carp.pm
index f8f750a5d7..5fb8809900 100644
--- a/lib/Carp.pm
+++ b/lib/Carp.pm
@@ -215,7 +215,7 @@ sub shortmess { # Short-circuit &longmess if called via multiple packages
# merge all the caller's @ISA packages into %isa.
@isa{@{"${prevpack}::ISA"}} = ()
- if(defined @{"${prevpack}::ISA"});
+ if(@{"${prevpack}::ISA"});
# now we crawl up the calling stack and look at all the packages in
# there. For each package, we look to see if it has an @ISA and then
@@ -223,7 +223,7 @@ sub shortmess { # Short-circuit &longmess if called via multiple packages
# our caller is a derived class of that package and its calls can also
# be ignored
while (($pack,$file,$line) = caller($i++)) {
- if(defined @{$pack . "::ISA"}) {
+ if(@{$pack . "::ISA"}) {
my @i = @{$pack . "::ISA"};
my %i;
@i{@i} = ();
@@ -247,7 +247,7 @@ sub shortmess { # Short-circuit &longmess if called via multiple packages
if ($extra-- > 0) {
%isa = ($pack,1);
@isa{@{$pack . "::ISA"}} = ()
- if(defined @{$pack . "::ISA"});
+ if(@{$pack . "::ISA"});
}
else {
# OK! We've got a candidate package. Time to construct the
diff --git a/lib/Math/BigFloat.pm b/lib/Math/BigFloat.pm
index 0435cd89e8..8aa6a6604b 100644
--- a/lib/Math/BigFloat.pm
+++ b/lib/Math/BigFloat.pm
@@ -74,6 +74,7 @@ sub fnorm; sub fsqrt;
sub fnorm { #(string) return fnum_str
local($_) = @_;
s/\s+//g; # strip white space
+ local $^W = 0; # $4 and $5 below might legitimately be undefined
if (/^([+-]?)(\d*)(\.(\d*))?([Ee]([+-]?\d+))?$/ && "$2$4" ne '') {
&norm(($1 ? "$1$2$4" : "+$2$4"),(($4 ne '') ? $6-length($4) : $6));
} else {