I supposed it's obvious that strictures must be used in each file, since pragmas are scoped.
# noname1.pm:
use strict;
use warnings;
package noname1;
sub get_value {
return $missingVar // 'Bogus value';
}
1;
now running ...
# noname.pl:
use warnings;
use strict;
use lib '.';
use noname1;
print noname1::get_value();
output
Compilation started at Sun Dec 13 22:16:46
C:/Perl_524/bin\perl.exe -w d:/tmp/pm/noname_strictures/noname.pl
Global symbol "$missingVar" requires explicit package name (did you fo
+rget to declare "my $missingVar"?) at noname1.pm line 9.
Compilation failed in require at d:/tmp/pm/noname_strictures/noname.pl
+ line 6.
BEGIN failed--compilation aborted at d:/tmp/pm/noname_strictures/nonam
+e.pl line 6.
Compilation exited abnormally with code 255 at Sun Dec 13 22:16:46
|