in reply to Optionally / safely disabling a warning category for a complete package
Sorry for not testing this (which would require multiple versions of Perl that I didn't already have handy). I suspect this will work based on prior similar code I've used:
BEGIN { warnings->unimport('experimental::signatures') if eval "no warnings 'experimental::signatures'; 1"; }
The advantage to this version is that it doesn't presume that the Perl version is a reliable indicator of whether or not some type of warning can be disabled. It is at least possible that some future version of something would mean that an upper bound on the version would need to be added. But I'm also not convinced that you can't have cases where unusual requirements lead to a mismatch between the Perl version and the behavior of "no warnings 'experimental::signatures';". For example, in building Perl for weird environments (like tiny Unix devices) I've ended up with versions of Perl where standard features got disabled because porting of base Perl got finished but not porting of some standard extensions for that version of Perl.
- tye
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Optionally / safely disabling a warning category for a complete package (silent failure)
by tye (Sage) on May 18, 2016 at 19:39 UTC | |
|
Re^2: Optionally / safely disabling a warning category for a complete package (magic numbers)
by haukex (Archbishop) on May 18, 2016 at 19:53 UTC | |
by tye (Sage) on May 18, 2016 at 20:37 UTC |