1
0
mirror of https://git.savannah.gnu.org/git/gnulib.git synced 2025-08-08 17:22:05 +03:00

fenv-exceptions-tracking-c99: New module.

* lib/fenv.in.h (feclearexcept, feraiseexcept, fetestexcept): New
declarations.
* lib/fenv-except-tracking-clear.c: New file, based on glibc.
* lib/fenv-except-tracking-raise.c: New file, based on glibc.
* lib/fenv-except-tracking-test.c: New file, based on glibc.
* m4/fenv-exceptions-tracking.m4: New file.
* m4/fenv-exceptions.m4: New file.
* modules/fenv-exceptions-tracking-c99: New file.
* doc/posix-functions/feclearexcept.texi: Mention the new module.
* doc/posix-functions/fetestexcept.texi: Likewise.
* doc/posix-functions/feraiseexcept.texi: Likewise. Mention the glibc
and Cygwin bugs.
This commit is contained in:
Bruno Haible
2023-10-28 18:31:22 +02:00
parent 72bd753df7
commit 2ce970a271
11 changed files with 1434 additions and 14 deletions

View File

@@ -0,0 +1,50 @@
Description:
Functions for tracking which floating-point exceptions have occurred:
feclearexcept, feraiseexcept, fetestexcept.
Files:
lib/fenv-except-tracking-clear.c
lib/fenv-except-tracking-test.c
lib/fenv-except-tracking-raise.c
lib/fenv-private.h
m4/fenv-exceptions-tracking.m4
m4/fenv-exceptions.m4
m4/mathfunc.m4
Depends-on:
fenv
configure.ac:
gl_FENV_EXCEPTIONS_TRACKING
gl_CONDITIONAL([GL_COND_OBJ_FENV_EXCEPTIONS_TRACKING_CLEAR],
[test $HAVE_FECLEAREXCEPT = 0 || test $REPLACE_FECLEAREXCEPT = 1])
gl_CONDITIONAL([GL_COND_OBJ_FENV_EXCEPTIONS_TRACKING_TEST],
[test $HAVE_FETESTEXCEPT = 0 || test $REPLACE_FETESTEXCEPT = 1])
gl_CONDITIONAL([GL_COND_OBJ_FENV_EXCEPTIONS_TRACKING_RAISE],
[test $HAVE_FERAISEEXCEPT = 0 || test $REPLACE_FERAISEEXCEPT = 1])
gl_FENV_MODULE_INDICATOR([feclearexcept])
gl_FENV_MODULE_INDICATOR([fetestexcept])
gl_FENV_MODULE_INDICATOR([feraiseexcept])
Makefile.am:
if GL_COND_OBJ_FENV_EXCEPTIONS_TRACKING_CLEAR
lib_SOURCES += fenv-except-tracking-clear.c
endif
if GL_COND_OBJ_FENV_EXCEPTIONS_TRACKING_TEST
lib_SOURCES += fenv-except-tracking-test.c
endif
if GL_COND_OBJ_FENV_EXCEPTIONS_TRACKING_RAISE
lib_SOURCES += fenv-except-tracking-raise.c
endif
Include:
#include <fenv.h>
Link:
$(FENV_EXCEPTIONS_TRACKING_LIBM)
License:
LGPLv2+
Maintainer:
all