bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

simplify fpe-tracking and fpe-trapping modules


From: Bruno Haible
Subject: simplify fpe-tracking and fpe-trapping modules
Date: Sun, 05 Nov 2023 14:48:46 +0100

Now that proper modules for tracking and trapping floating-point exceptions
are in place (that work on all platforms, and with unit tests), the modules
fpe-tracking and fpe-trapping can take advantage of them:

* The module fpe-tracking can be removed. fenv-exceptions-tracking-c99 is
  its replacement. (The module was not yet picked up by any package outside
  gnulib.)

* The module fpe-trapping becomes a trivial combination of
  fenv-exceptions-tracking-c99 and fenv-exceptions-trapping.


2023-11-05  Bruno Haible  <bruno@clisp.org>

        fpe-trapping: Simplify.
        * lib/fpe-trapping.h (sigfpe_on_invalid): Remove all platform specific
        code. Just rely on feclearexcept and feenableexcept.
        * m4/fpe-trapping.m4: Renamed from m4/fpe.m4.
        (gl_FPE_TRAPPING): Greatly simplify.
        * modules/fpe-trapping (Files): Use m4/fpe-trapping.m4 instead of
        m4/fpe.m4. Remove m4/mathfunc.m4, m4/musl.m4.
        (Depends-on): Add fenv-exceptions-trapping.
        * tests/test-fenv-except-state-2.c (main): Update skip message.
        * tests/test-fenv-except-tracking-2.c (main): Likewise.
        * tests/test-fenv-except-tracking-3.c (main): Likewise.
        * tests/test-fenv-except-tracking-5.c (main): Likewise.
        * tests/test-nan-2.c (main): Likewise.
        * tests/test-snan-2.c (main): Likewise.

2023-11-05  Bruno Haible  <bruno@clisp.org>

        fpe-tracking: Remove module.
        * modules/fpe-tracking: Remove file.
        * m4/fpe.m4 (gl_FPE_TRACKING): Remove macro.
        (gl_FPE_TRAPPING): Require gl_FENV_EXCEPTIONS_TRACKING instead of
        gl_FPE_TRACKING. Use FENV_EXCEPTIONS_TRACKING_LIBM instead of
        FPE_TRACKING_LIBM.
        * modules/nan-tests (Depends-on): Add fenv-exceptions-tracking-c99.
        Remove fpe-tracking.
        (Makefile.am): Use FENV_EXCEPTIONS_TRACKING_LIBM instead of
        FPE_TRACKING_LIBM.
        * modules/snan-tests (Depends-on): Add fenv-exceptions-tracking-c99.
        Remove fpe-tracking.
        (Makefile.am): Use FENV_EXCEPTIONS_TRACKING_LIBM instead of
        FPE_TRACKING_LIBM.
        * tests/test-nan-1.c: Assume HAVE_FE_INVALID is 1.
        * tests/test-snan-1.c: Likewise.

Attachment: 0001-fpe-tracking-Remove-module.patch
Description: Text Data

Attachment: 0002-fpe-trapping-Simplify.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]