note
tachyon
<p>You can't hide a use like that.
<readmore>
<code>
if (0) {
print "This block is happening!\n";
use Win32;
}
print "$_\n" for keys %INC;
__DATA__
Exporter.pm
Carp.pm
strict.pm
vars.pm
Config.pm
warnings/register.pm
warnings.pm
DynaLoader.pm
AutoLoader.pm
Win32.pm <------- Perl sees all uses (almost)
</code>
<p>And on a system where the module is not available......
<code>
[root@devel3 root]# cat test.pl
#!/usr/bin/perl -wT
BEGIN{print "We are on $^O\n"}
if ($^O eq 'MSWin32') {
use Win32::TieRegistry( Delimiter=>"/", ArrayValues=>0 );
# load $config from registry
} else {
# else load $config from flat files
}
[root@devel3 root]# ./test.pl
We are on linux
Can't locate Win32/TieRegistry.pm in @INC (@INC contains: /usr/local/lib/perl5/5.6.2/i686-linux /usr/local/lib/perl5/5.6.2 /usr/local/lib/perl5/site_perl/5.6.2/i686-linux /usr/local/lib/perl5/site_perl/5.6.2 /usr/local/lib/perl5/site_perl) at ./test.pl line 4.
BEGIN failed--compilation aborted at ./test.pl line 4.
[root@devel3 root]#
</code>
<!-- Node text goes above. Div tags should contain sig only -->
<div class="pmsig"><div class="pmsig-80749">
<p>cheers
<p><font color="#0000ff">tachyon</font>
</div></div>
404777
404799