diff options
author | Peter Scott <Peter@PSDT.com> | 2003-03-28 08:34:47 -0800 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2003-04-01 15:56:27 +0000 |
commit | df26a7db8f2a7fec12d403bcefa0501353e16991 (patch) | |
tree | 071c6650a737a26bc285fbcfa13f8c6d6b7647a9 | |
parent | d002699eadfced2538773fac7c19592455e9d630 (diff) | |
download | perl-df26a7db8f2a7fec12d403bcefa0501353e16991.tar.gz |
Text::Abbrev warnings safe
Message-id: <5.2.0.9.2.20030328161002.00b45f08@shell2.webquarry.com>
p4raw-id: //depot/perl@19114
-rw-r--r-- | lib/Text/Abbrev.pm | 1 | ||||
-rw-r--r-- | lib/Text/Abbrev.t | 10 |
2 files changed, 10 insertions, 1 deletions
diff --git a/lib/Text/Abbrev.pm b/lib/Text/Abbrev.pm index 08143fea8f..d7feedc30d 100644 --- a/lib/Text/Abbrev.pm +++ b/lib/Text/Abbrev.pm @@ -43,6 +43,7 @@ The values are the original list elements. sub abbrev { my ($word, $hashref, $glob, %table, $returnvoid); + @_ or return; # So we don't autovivify onto @_ and trigger warning if (ref($_[0])) { # hash reference preferably $hashref = shift; $returnvoid = 1; diff --git a/lib/Text/Abbrev.t b/lib/Text/Abbrev.t index fb5a9841eb..38d4a39886 100644 --- a/lib/Text/Abbrev.t +++ b/lib/Text/Abbrev.t @@ -1,6 +1,6 @@ #!./perl -print "1..7\n"; +print "1..8\n"; BEGIN { chdir 't' if -d 't'; @@ -49,3 +49,11 @@ abbrev \%y, @z; $s = join ':', sort keys %y; print (($r eq $s)?"ok $test\n":"not ok $test\n"); $test++; + + +# warnings safe with zero arguments +my $notok; +$^W = 1; +$SIG{__WARN__} = sub { $notok++ }; +abbrev(); +print ($notok ? "not ok $test\n" : "ok $test\n"); $test++; |