Nein, -w ist global, wirkt sich also auch auf Module aus.
use warnings bezieht sich nur auf den aktuellen Namespace!
Test.pm:
package Test;
use strict;
sub test{
my ($string) = @_;
print $string;
}
1;
Das hier läuft ohne Warnung:
Skript
#!/usr/bin/perl
use strict;
use warnings;
use lib qw(.);
use Test;
Test::test();
Das hier gibt ne Warnung aus:
Skript:
#!/usr/bin/perl -w
use strict;
use lib qw(.);
use Test;
Test::test();