in reply to Filehandle woes
I'm not sure if this is it (since I don't have 5.004_01 around), but this is what I think is happening.
This code works (it's bad for many reasons, but it works):
as does thisopen (TEST,"test") || die $!; mysub (TEST); sub mysub { my $fh = shift; print $fh; my $txt = <$fh>; print $txt; }
The line mysub (TEST) is called like mysub ("TEST"). When using a filehandle, you can use a string instead of the filehandle (which is the my $txt = <$fh>). I'm guessing that perl 5.004_01 had a shared namespace for filehandles, and later versions of perl do not.package mypac; sub mysub { my $fh = shift; print $fh; my $txt = <$fh>; print $txt; } package main; open (TEST,"test") || die $!; mypac::mysub ("main::TEST");
|
---|
In Section
Seekers of Perl Wisdom