How can I make Perl die if a warning is generated?
I would like my script perl to die whenever a warning is generated, including warnings which are generated by used packages. For example, this should die: use strict; use warnings; use Statistics::Descriptive; my @data = ( 8, 9, 10, "bbb" ); my $stat = Statistics::Descriptive::Full->new(); $stat->add_data(@data); use warnings FATAL => 'all'; won't help since it's lexically scoped. Test::NoWarnings also doesn't do the work since it doesn't kill the script. To add to rafl's answer: when adding a handler to %SIG , it is (usually) better to not overwrite any previous handler, but call it after