The error supplied doesn't agree with the code provided, but I get it too. I'm using an older version of Perl, though. I don't have a newer version for that system, so it could have been fixed since.
$ perl -e 'use warnings FATAL => qw(all); eval { open(CMD, "_bad_exe_ +a b c|") or die "open failed: $!\n" }; if($@){ die "$$: ERROR: $@" } +print "$$: HOW DID I GET HERE?\n"; while(<CMD>){}' 11089: ERROR: Can't exec "_bad_exe_": No such file or directory at -e +line 1. 11089: HOW DID I GET HERE? $ perl -v This is perl, v5.8.4 built for i386-linux-thread-multi ...
Update: I added the PID to the error messages in case something went bad with the forking code.
Update: Interestingly, open dies instead of returning an error. Notice how "open failed" is not part of the output. Are there two bugs here?
In reply to Re^2: Weird use warnings FATAL behavior
by ikegami
in thread Weird use warnings FATAL behavior
by jneil
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |