rxvt-unicode (and all children) ignore SIGFPE

Marc Lehmann schmorp at schmorp.de
Sun Jul 21 15:15:58 CEST 2013

On Sat, Jul 20, 2013 at 05:13:32PM -0400, Anders Kaseorg <andersk at MIT.EDU> wrote:
> My friend just ran across a problem where rxvt-unicode ignores SIGFPE, and 
> its child processes inherit this state, leading to undefined behavior.  
> The signal is ignored inside PERL_SYS_INIT3:
> https://rt.perl.org/rt3/Public/Bug/Display.html?id=114574

After having read through this, I need to stress this again: the analysis of
the initial reported is not complete - while it is undefined behaviour to
ignore a SIGFPE, it's undefined behaviour to rely on SIGFPE having a suitable
handler installed.

Any program or library causing SIGFPE runs into undefined behaviour the very
instant it does so without providing a handler (or SIG_DFL). If a library is
inconvenienced by that, it needs to install a handler.

There is no such thing as additional undefined behaviour - once you hit
it, you keep it.

I agree that it's the right thing not to set SIGFPE to SIG_IGN (which is
probably why SIG_IGN is ignored by most operating sytsems these days), but
it's important to fix the buggy libraries and programs that rely on this
behaviour, because not all platforms behave like that.

                The choice of a       Deliantra, the free code+content MORPG
      -----==-     _GNU_              http://www.deliantra.net
      ----==-- _       generation
      ---==---(_)__  __ ____  __      Marc Lehmann
      --==---/ / _ \/ // /\ \/ /      schmorp at schmorp.de
      -=====/_/_//_/\_,_/ /_/\_\

More information about the rxvt-unicode mailing list