zude has asked for the wisdom of the Perl Monks concerning the following question:
I expect this to produce "DIED: outside: cya!", and with perl 5.8 this is exactly what happens.$SIG{__DIE__}=sub{$^S and return; print("DIED: ",@_); exit }; eval { die "cya!\n" }; $@ and die "outside: ",$@;
However perl 5.6 only gives "outside: cya!". Further hacking shows that the $^S variable is still set when eval exits (and trying to force $^S to 0 is runtime error).
Problem is that this needs to go into production environment with perl 5.6 (RH7.3 distro). Is there a workaround for this bug in 5.6?
Or, any information on installing 5.8 in tandem with existing 5.6 without exploding anything? :)
Thanks for your help.
--------
~%{${@_[0]}}->{0}&&+++ NO CARRIER
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Perl 5.6 exception problem
by dragonchild (Archbishop) on Aug 20, 2004 at 18:26 UTC | |
by ysth (Canon) on Aug 20, 2004 at 19:22 UTC |