http://www.perlmonks.org?node_id=244830


in reply to warning: perl bug in 5.6.x, Win32 (use warnings and STDERR)

Not really. Try
open(ME, "$0") or die "crap $!"; close(STDERR); use warnings; while (<ME>) { print; } close ME;
So it would appear there is a bug only if you close(STDERR); and use warnings; before you do a open.

This definetly warrants a look-see by the perl 5 porters (p5p).

 
______crazyinsomniac_____________________________
Of all the things I've lost, I miss my mind the most.
perl -e "$q=$_;map({chr unpack qq;H*;,$_}split(q;;,q*H*));print;$q/$q;"

Replies are listed 'Best First'.
Re: Re: warning: perl bug in 5.6.x, Win32 (use warnings and STDERR)
by Jenda (Abbot) on Mar 21, 2003 at 13:42 UTC

    I tried to play with this a little more. It only prints the first line even if you remove the use warnings and run the script with perl -w or if you set the $^W.

    close(STDERR); open(ME, "$0"); $^W=1; while (<ME>) { print; } close ME;

    It fails even if you put the $^W=1; inside the loop, but you always have to close the STDERR before opening the file.

    Jenda
    Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.
       -- Rick Osborne