in reply to Re: Why <c>eval {...};if ($@) { die $@ } else { ...</c> ???
in thread Why <c>eval {...};if ($@) { die $@ } else { ...</c> ???
Note that anything that happens to alter $SIG{__DIE__} would break that since the exception string wouldn't be "alarm\n" anymore.
I've done that myself numerous times when adding a use Carp::Always; for debugging purposes, thereby accidentally the whole test run.
If you want to be extra super safe, you should do local $SIG{__DIE__}; in the block as well.
/J
In Section
Seekers of Perl Wisdom