![]() |
|
There's more than one way to do things | |
PerlMonks |
Re: FPE not deferred in 5.36by haj (Priest) |
on May 31, 2022 at 14:58 UTC ( #11144316=note: print w/replies, xml ) | Need Help?? |
I ran into a FPE once.... and while I've not dug into the details, I can give a somewhat dirty way to reproduce it. It is dirty because the bug causing the FPE has been fixed since then. Here's the code:
If you run this in vanilla Perl 5.34 or older without a signal handler, it dies with Floating point exception. If you include the handler like I did, you'll get: Maximal count of pending signals (120) exceeded at fpe.pl line 3.If you run this in vanilla Perl 5.36, you get the expected result of -1, because the bug (RT139601) has been fixed in that release (in List::Util 1.60, to be precise). But you can catch the FPE by installing an "older" List::Util on top of Perl 5.36:
This dies with the message Ooops, so in Perl 5.36 the signal handler works as you'd expect. Don't forget to upgrade your List::Util after that test :)
In Section
Seekers of Perl Wisdom
|
|