Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Okay, I don't really want to read from STDERR, but I noticed that doing so messes with return value from print:

#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my %status; $status{print_1} = print STDERR "1\n"; $status{read} = read STDERR, my $str, 10; $status{print_2} = print STDERR "2\n"; print Dumper(\%status);

The print to STDERR works, but it no longer returns true:

1 Filehandle STDERR opened only for output at jam.pl line 10. 2 $VAR1 = { 'print_1' => 1, 'print_2' => undef, 'read' => undef };

Replies are listed 'Best First'.
Re: Reading from STDERR
by zentara (Cardinal) on Oct 05, 2011 at 20:40 UTC
    Are you looking for something like this?
    #!/usr/bin/perl use strict; use IO::Scalar; use Data::Dumper; my $str; my $io = tie *STDERR, 'IO::Scalar', \$str; print STDERR 'foobar'; print Dumper($str);

    I'm not really a human, but I play one on earth.
    Old Perl Programmer Haiku ................... flash japh
Re: Reading from STDERR
by ikegami (Patriarch) on Oct 05, 2011 at 20:44 UTC
    Please submit a bug report using by running perlbug. It'll ask you a few question and allow you to enter a message to send.