]> sourceware.org Git - newlib-cygwin.git/commit
Cygwin: let feraiseexcept actually raise an exception
authorCorinna Vinschen <corinna@vinschen.de>
Tue, 31 Oct 2023 12:07:36 +0000 (13:07 +0100)
committerCorinna Vinschen <corinna@vinschen.de>
Tue, 31 Oct 2023 12:29:15 +0000 (13:29 +0100)
commit97a975dac2dee9640964f54fa9693f0295c2363c
tree8886c6a801e537d192514337d3394966b46e3970
parentf0c90d3a8aa4409608abe76e035eab5919133a61
Cygwin: let feraiseexcept actually raise an exception

The exception handling inside of Cygwin functions marked as SIGFE
covers exceptions and lets the library code handle them gracefully.
If these functions want to raise an exception, they have to send a
signal explicitely via raise(3).

That's not what we want in feraiseexcept(). It triggers a floating
point exception explicitely by calling the i387 op "fwait".  Being
marked as SIGFE, this exception will be suppressed and the normal
exception handling won't kick in.

Fix this by moving feraiseexcept into the NOSIGFE realm.

Fixes: 0f81b5d4bcaa ("* Makefile.in (DLL_OFILES): Add new fenv.o module.")
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
winsup/cygwin/cygwin.din
winsup/cygwin/release/3.4.10
This page took 0.0307 seconds and 5 git commands to generate.