On 11/20/2011 9:45 AM, Jan-Pieter Cornet wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 2011-11-18 19:34 , Kevin A. McGrail wrote:
Note, add/create sub filter_initialize {
use File::Copy;
}
That's superfluous and even slightly wrong. "use" is a compile-time directive,
so there's really no point putting it in a subroutine (unless you want to localise the
scope of the exported functions/variables, which currently doesn't work really well, but
is most certainly NOT what you intended here).
Just put 'use' statements at the top of your script.
I see your point but I've done it more for following convention for
mimedefang. Haven't seen any issues, though either. And I also don't
completely know what magic DFS has done for embedded perl. I can say
that having it in filter_initialize works in and out of embedded perl
environments.
I took a look at http://perldoc.perl.org/functions/use.html and except
for compiler directives, I would interpret the docs as saying it doesn't
matter:
"Some of these pseudo-modules import semantics into the current block
scope (like |strict| or |integer| , unlike ordinary modules, which
import symbols into the current package (which are effective through the
end of the file). Because |use
<http://perldoc.perl.org/functions/use.html>| takes effect at compile
time, it doesn't respect the ordinary flow control of the code being
compiled. In particular, putting a |use
<http://perldoc.perl.org/functions/use.html>| inside the false branch of
a conditional doesn't prevent it from being processed."
Regards,
KAM
_______________________________________________
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID. You may ignore it.
Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list [email protected]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang