Is there a more graceful way of doing this other than disabling warnings for that chunk - through __WARN__ - as I have done there?I think your introduction of _unset_sig_warn() was misguided. Why not simply use lexical warnings? (see: perllexwarn). You typically switch off specific warnings in the smallest possible lexical scope. For example:
If there is a reason you cannot use this technique in your inherited CPAN module please let us know.use strict; use warnings; my $z; # $z contains undef if ($z eq "") { # oops, Use of uninitialized value $z in string eq print "1. string is empty (with warnings)\n"; } # Switch off the specific uninitialized warning in a lexical scope. { no warnings 'uninitialized'; if ($z eq "") { # no warning this time print "2. string is empty (with no warnings)\n"; } } # warnings switched back on at end of scope
In reply to Re^2: How come undef eq '' ??
by eyepopslikeamosquito
in thread How come undef eq '' ??
by tmharish
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |