termios: fix pid_t always, not just for tcgetsid
[gnulib.git] / ChangeLog
index e238131..ddc7b54 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,694 @@
+2012-02-29  Eric Blake  <eblake@redhat.com>
+
+       termios: fix pid_t always, not just for tcgetsid
+       * doc/posix-headers/termios.texi (termios.h): Mention problem.
+       * lib/termios.in.h (include): Ensure pid_t on all platforms, not
+       just when building tcgetsid.
+
+2012-02-29  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'hypotl'.
+       * modules/hypotl-tests: New file.
+       * tests/test-hypotl.c: New file.
+
+       New module 'hypotl'.
+       * lib/math.in.h (hypotl): New declaration.
+       * lib/hypotl.c: New file.
+       * m4/hypotl.m4: New file.
+       * m4/math_h.m4 (gl_MATH_H): Test whether hypotf is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_HYPOTL, HAVE_HYPOTL.
+       * modules/math (Makefile.am): Substitute GNULIB_HYPOTL, HAVE_HYPOTL.
+       * modules/hypotl: New file.
+       * tests/test-math-c++.cc: Check the hypotl declaration.
+       * doc/posix-functions/hypotl.texi: Mention the new module.
+
+2012-02-29  Eric Blake  <eblake@redhat.com>
+
+       tcgetsid: fix cygwin header bug
+       * lib/termios.in.h (includes) [Cygwin]: Ensure pid_t is defined.
+
+       docs: update cygwin progress
+       * doc/posix-functions/llround.texi (llround): Added in cygwin
+       1.7.8.
+       * doc/posix-functions/llroundf.texi (llroundf): Likewise.
+       * doc/glibc-functions/program_invocation_name.texi
+       (program_invocation_name): Likewise.
+       * doc/glibc-functions/program_invocation_short_name.texi
+       (program_invocation_short_name): Likewise.
+       * doc/glibc-functions/madvise.texi (madvise): Likewise.
+       * doc/glibc-functions/pthread_yield.texi (pthread_yield):
+       Likewise.
+       * doc/posix-functions/pthread_spin_destroy.texi
+       (pthread_spin_destroy): Added in cygwin 1.7.10.
+       * doc/posix-functions/pthread_spin_init.texi (pthread_spin_init):
+       Likewise.
+       * doc/posix-functions/pthread_spin_lock.texi (pthread_spin_lock):
+       Likewise.
+       * doc/posix-functions/pthread_spin_trylock.texi
+       (pthread_spin_trylock): Likewise.
+       * doc/posix-functions/pthread_spin_unlock.texi
+       (pthread_spin_unlock): Likewise.
+       * doc/posix-functions/pthread_setschedprio.texi
+       (pthread_setschedprio): Likewise.
+       * doc/posix-functions/pthread_attr_getstack.texi
+       (pthread_attr_getstack): Likewise.
+       * doc/pastposix-functions/pthread_attr_getstackaddr.texi
+       (pthread_attr_getstackaddr): Likewise.
+       * doc/glibc-functions/pthread_getattr_np.texi
+       (pthread_getattr_np): Likewise.
+       * doc/glibc-functions/sys_siglist.texi (sys_siglist): Likewise.
+       * doc/glibc-functions/sysinfo.texi (sysinfo): Likewise.
+       * doc/posix-functions/clock_settime.texi (clock_settime):
+       Likewise.
+       * doc/posix-functions/pthread_attr_getguardsize.texi
+       (pthread_attr_getguardsize): Likewise.
+       * doc/posix-functions/pthread_attr_setguardsize.texi
+       (pthread_attr_setguardsize): Likewise.
+       * doc/posix-functions/pthread_attr_setstack.texi
+       (pthread_attr_setstack): Likewise.
+       * doc/pastposix-functions/pthread_attr_setstackaddr.texi
+       (pthread_attr_setstackaddr): Likewise.
+       * doc/posix-functions/clock_getcpuclockid.texi
+       (clock_getcpuclockid): Likewise.
+       * doc/posix-functions/pthread_getcpuclockid.texi
+       (pthread_getcpuclockid): Likewise.
+       * doc/glibc-functions/error.texi (error): Likewise.
+       * doc/glibc-functions/error_at_line.texi (error_at_line):
+       Likewise.
+       * doc/glibc-functions/error_message_count.texi
+       (error_message_count): Likewise.
+       * doc/glibc-functions/error_one_per_line.texi
+       (error_one_per_line): Likewise.
+       * doc/glibc-functions/error_print_progname.texi
+       (error_print_progname): Likewise.
+       * doc/posix-functions/pthread_condattr_getclock.texi
+       (pthread_condattr_getclock): Likewise.
+       * doc/posix-functions/pthread_condattr_setclock.texi
+       (pthread_condattr_setclock): Likewise.
+       * doc/posix-functions/clock_nanosleep.texi (clock_nanosleep):
+       Likewise.
+       * doc/glibc-functions/getgrouplist.texi (getgrouplist): Likewise.
+       * doc/glibc-functions/getpt.texi (getpt): Likewise.
+       * doc/glibc-functions/get_current_dir_name.texi
+       (get_current_dir_name): Likewise.
+       * doc/glibc-functions/pthread_sigqueue.texi (pthread_sigqueue):
+       Likewise.
+       * doc/posix-functions/tcgetsid.texi (tcgetsid): Likewise, but with
+       wrong return type.
+       * doc/glibc-functions/scandirat.texi (scandirat): Added in cygwin
+       1.7.11.
+
+2012-02-29  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'hypotf'.
+       * modules/hypotf-tests: New file.
+       * tests/test-hypotf.c: New file.
+
+       New module 'hypotf'.
+       * lib/math.in.h (hypotf): New declaration.
+       * lib/hypotf.c: New file.
+       * m4/hypotf.m4: New file.
+       * m4/math_h.m4 (gl_MATH_H): Test whether hypotf is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_HYPOTF, HAVE_HYPOTF,
+       REPLACE_HYPOTF.
+       * modules/math (Makefile.am): Substitute GNULIB_HYPOTF, HAVE_HYPOTF,
+       REPLACE_HYPOTF.
+       * modules/hypotf: New file.
+       * tests/test-math-c++.cc: Check the hypotf declaration.
+       * doc/posix-functions/hypotf.texi: Mention the new module.
+
+       hypot: Prepare for hypotf module.
+       * m4/hypot.m4: New file.
+       * modules/hypot (Files): Add m4/hypot.m4.
+       (configure.ac): Invoke gl_FUNC_HYPOT.
+
+2012-02-29  Bruno Haible  <bruno@clisp.org>
+
+       hypot tests: More tests.
+       * tests/test-hypot.c: Include <float.h>.
+       (main): Add tests about overflow and underflow.
+
+2012-02-29  Bruno Haible  <bruno@clisp.org>
+
+       math code: Add comments.
+       * lib/acosl.c: Add comment about related glibc source files.
+       * lib/asinl.c: Likewise.
+       * lib/atanl.c: Likewise.
+       * lib/expl.c: Likewise.
+       * lib/logl.c: Likewise.
+       * lib/sincosl.c: Likewise.
+       * lib/sinl.c: Likewise.
+       * lib/tanl.c: Likewise.
+       * lib/trigl.c: Likewise.
+       * lib/cosl.c: Likewise. Fix comments.
+
+2012-02-28  Bruno Haible  <bruno@clisp.org>
+
+       math: Ensure HUGE_VAL, HUGE_VALF, HUGE_VALL are defined.
+       * lib/math.in.h (HUGE_VAL, HUGE_VALF, HUGE_VALL): Define fallbacks.
+       * tests/test-math.c: Include macros.h. Check that HUGE_VAL, HUGE_VALF,
+       HUGE_VALL are defined.
+       (numeric_equald): Renamed from numeric_equal.
+       (numeric_equalf, numeric_equall): New functions.
+       (main): Check also HUGE_VALF, HUGE_VALL.
+       * modules/math-tests (Files): Add tests/macros.h.
+       * doc/posix-headers/math.texi: Document the problems with HUGE_VALF and
+       HUGE_VALL.
+
+2012-02-28  Bruno Haible  <bruno@clisp.org>
+
+       doc: Move ISO C11 feature notes into POSIX chapters.
+       * doc/posix-functions/aligned_alloc.texi: Renamed from
+       doc/glibc-functions/aligned_alloc.texi.
+       * doc/posix-functions/quick_exit.texi: Renamed from
+       doc/glibc-functions/quick_exit.texi.
+       * doc/posix-headers/uchar.texi: Renamed from
+       doc/glibc-headers/uchar.texi.
+       * doc/posix-functions/c16rtomb.texi: Renamed from
+       doc/glibc-functions/c16rtomb.texi.
+       * doc/posix-functions/c32rtomb.texi: Renamed from
+       doc/glibc-functions/c32rtomb.texi.
+       * doc/posix-functions/mbrtoc16.texi: Renamed from
+       doc/glibc-functions/mbrtoc16.texi.
+       * doc/posix-functions/mbrtoc32.texi: Renamed from
+       doc/glibc-functions/mbrtoc32.texi.
+       * doc/gnulib.texi: Update.
+       (Glibc uchar.h): Remove section.
+       Suggested by Eric Blake.
+
+2012-02-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+       stdnoreturn: port to MSVC better
+       MSVC standard headers use __declspec(noreturn), so #define noreturn
+       to empty on that platform.  Reported by Bruno Haible in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-02/msg00152.html>.
+       * lib/stdnoreturn.in.h (noreturn): Define to empty on MSVC.
+       * doc/posix-headers/stdnoreturn.texi (stdnoreturn.h): Document this.
+
+2012-02-28  Bruno Haible  <bruno@clisp.org>
+
+       doc: Mention new glibc headers and functions.
+       * doc/glibc-headers/uchar.texi: New file.
+       * doc/glibc-functions/aligned_alloc.texi: New file.
+       * doc/glibc-functions/c16rtomb.texi: New file.
+       * doc/glibc-functions/c32rtomb.texi: New file.
+       * doc/glibc-functions/clock_adjtime.texi: New file.
+       * doc/glibc-functions/fanotify_init.texi: New file.
+       * doc/glibc-functions/fanotify_mark.texi: New file.
+       * doc/glibc-functions/inet6_opt_append.texi: New file.
+       * doc/glibc-functions/inet6_opt_find.texi: New file.
+       * doc/glibc-functions/inet6_opt_finish.texi: New file.
+       * doc/glibc-functions/inet6_opt_get_val.texi: New file.
+       * doc/glibc-functions/inet6_opt_init.texi: New file.
+       * doc/glibc-functions/inet6_opt_next.texi: New file.
+       * doc/glibc-functions/inet6_opt_set_val.texi: New file.
+       * doc/glibc-functions/inet6_rth_add.texi: New file.
+       * doc/glibc-functions/inet6_rth_getaddr.texi: New file.
+       * doc/glibc-functions/inet6_rth_init.texi: New file.
+       * doc/glibc-functions/inet6_rth_reverse.texi: New file.
+       * doc/glibc-functions/inet6_rth_segments.texi: New file.
+       * doc/glibc-functions/inet6_rth_space.texi: New file.
+       * doc/glibc-functions/login.texi: New file.
+       * doc/glibc-functions/mbrtoc16.texi: New file.
+       * doc/glibc-functions/mbrtoc32.texi: New file.
+       * doc/glibc-functions/name_to_handle_at.texi: New file.
+       * doc/glibc-functions/ntp_gettimex.texi: New file.
+       * doc/glibc-functions/open_by_handle_at.texi: New file.
+       * doc/glibc-functions/prlimit.texi: New file.
+       * doc/glibc-functions/process_vm_readv.texi: New file.
+       * doc/glibc-functions/process_vm_writev.texi: New file.
+       * doc/glibc-functions/recvmmsg.texi: New file.
+       * doc/glibc-functions/scandirat.texi: New file.
+       * doc/glibc-functions/sendmmsg.texi: New file.
+       * doc/glibc-functions/setns.texi: New file.
+       * doc/glibc-functions/timespec_get.texi: New file.
+       * doc/gnulib.texi: Include them.
+       (Glibc sys/fanotify.h, Glibc sys/resource.h, Glibc uchar.h): New
+       sections.
+       Reported by Eric Blake.
+
+2012-02-28  Bruno Haible  <bruno@clisp.org>
+
+       Avoid compilation errors with MSVC option -fp:strict.
+       * lib/floor.c: Use MSVC specific pragma fenv_access.
+       * lib/ceil.c: Likewise.
+       * lib/trunc.c: Likewise.
+       * lib/round.c: Likewise.
+       * lib/rint.c: Likewise.
+       * lib/fma.c: Likewise.
+       * lib/integer_length.c: Likewise.
+       * m4/round.m4 (gl_FUNC_ROUND): Likewise.
+       * m4/roundf.m4 (gl_FUNC_ROUNDF): Likewise.
+       * tests/test-floor2.c: Likewise.
+       * tests/test-floorf2.c: Likewise.
+       * tests/test-ceil2.c: Likewise.
+       * tests/test-ceilf2.c: Likewise.
+       * tests/test-trunc2.c: Likewise.
+       * tests/test-truncf2.c: Likewise.
+       Reported by Michael Goffioul <michael.goffioul@gmail.com>.
+
+2012-02-27  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'sqrtl-ieee'.
+       * modules/sqrtl-ieee-tests: New file.
+       * tests/test-sqrtl-ieee.c: New file.
+
+       New module 'sqrtl-ieee'.
+       * modules/sqrtl-ieee: New file.
+
+       Tests for module 'sqrt-ieee'.
+       * modules/sqrt-ieee-tests: New file.
+       * tests/test-sqrt-ieee.c: New file.
+
+       New module 'sqrt-ieee'.
+       * modules/sqrt-ieee: New file.
+
+       Tests for module 'sqrtf-ieee'.
+       * modules/sqrtf-ieee-tests: New file.
+       * tests/test-sqrtf-ieee.c: New file.
+       * tests/test-sqrt-ieee.h: New file.
+
+       New module 'sqrtf-ieee'.
+       * modules/sqrtf-ieee: New file.
+
+2012-02-27  Bruno Haible  <bruno@clisp.org>
+
+       remainderl-ieee: Work around test failure on OSF/1.
+       * m4/remainderl-ieee.m4: New file.
+       * m4/remainderl.m4 (gl_FUNC_REMAINDERL): If gl_FUNC_REMAINDERL_IEEE is
+       present, test whether remainderl works with a zero second argument.
+       Replace it if not.
+       * lib/math.in.h (remainderl): Override if REPLACE_REMAINDERL is 1.
+       * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_REMAINDERL.
+       * modules/math (Makefile.am): Substitute REPLACE_REMAINDERL.
+       * modules/remainderl (configure.ac): Consider REPLACE_REMAINDERL.
+       (Depends-on): Update conditions.
+       * modules/remainderl-ieee (Files): Add m4/remainderl-ieee.m4.
+       (Depends-on): Add remainder-ieee.
+       (configure.ac): Invoke gl_FUNC_REMAINDERL_IEEE.
+       * doc/posix-functions/remainderl.texi: Mention the remainderl-ieee
+       module.
+
+       remainderf-ieee: Work around test failure on OSF/1.
+       * m4/remainderf-ieee.m4: New file.
+       * m4/remainderf.m4 (gl_FUNC_REMAINDERF): If gl_FUNC_REMAINDERF_IEEE is
+       present, test whether remainderf works with a zero second argument.
+       Replace it if not.
+       * lib/math.in.h (remainderf): Override if REPLACE_REMAINDERF is 1.
+       * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_REMAINDERF.
+       * modules/math (Makefile.am): Substitute REPLACE_REMAINDERF.
+       * modules/remainderf (configure.ac): Consider REPLACE_REMAINDERF.
+       (Depends-on): Update conditions.
+       * modules/remainderf-ieee (Files): Add m4/remainderf-ieee.m4.
+       (Depends-on): Add remainder-ieee.
+       (configure.ac): Invoke gl_FUNC_REMAINDERF_IEEE.
+       * doc/posix-functions/remainderf.texi: Mention the remainderf-ieee
+       module.
+
+       remainder-ieee: Work around test failure on OSF/1.
+       * m4/remainder-ieee.m4: New file.
+       * m4/remainder.m4 (gl_FUNC_REMAINDER): If gl_FUNC_REMAINDER_IEEE is
+       present, test whether remainder works with a zero second argument.
+       Replace it if not.
+       * lib/math.in.h (remainder): Override if REPLACE_REMAINDER is 1.
+       * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_REMAINDER.
+       * modules/math (Makefile.am): Substitute REPLACE_REMAINDER.
+       * modules/remainder (configure.ac): Consider REPLACE_REMAINDER.
+       (Depends-on): Update dependencies.
+       * modules/remainder-ieee (Files): Add m4/remainder-ieee.m4.
+       (configure.ac): Invoke gl_FUNC_REMAINDER_IEEE.
+       * doc/posix-functions/remainder.texi: Mention the remainder-ieee module.
+
+       Tests for module 'remainderl-ieee'.
+       * modules/remainderl-ieee-tests: New file.
+       * tests/test-remainderl-ieee.c: New file.
+
+       New module 'remainderl-ieee'.
+       * modules/remainderl-ieee: New file.
+
+       Tests for module 'remainder-ieee'.
+       * modules/remainder-ieee-tests: New file.
+       * tests/test-remainder-ieee.c: New file.
+
+       New module 'remainder-ieee'.
+       * modules/remainder-ieee: New file.
+
+       Tests for module 'remainderf-ieee'.
+       * modules/remainderf-ieee-tests: New file.
+       * tests/test-remainderf-ieee.c: New file.
+       * tests/test-remainder-ieee.h: New file.
+
+       New module 'remainderf-ieee'.
+       * modules/remainderf-ieee: New file.
+
+2012-02-27  Bruno Haible  <bruno@clisp.org>
+
+       modff, modfl: Fix configure syntax error.
+       * m4/modff.m4 (gl_FUNC_MODFF): Insert ':' command in 'if'.
+       * m4/modfl.m4 (gl_FUNC_MODFL): Likewise.
+
+2012-02-27  Bruno Haible  <bruno@clisp.org>
+
+       fmodl-ieee: Work around test failures on OSF/1, MSVC 9.
+       * m4/fmodl-ieee.m4: New file.
+       * m4/fmodl.m4 (gl_FUNC_FMODL): If gl_FUNC_FMODL_IEEE is present, test
+       whether fmodl works with zero arguments. Replace it if not.
+       * modules/fmodl-ieee (Files): Add m4/fmodl-ieee.m4.
+       (Depends-on): Add fmod-ieee.
+       (configure.ac): Invoke gl_FUNC_FMODL_IEEE.
+       * doc/posix-functions/fmodl.texi: Mention the fmodl-ieee module.
+
+       fmodf-ieee: Work around test failure on OSF/1.
+       * m4/fmodf-ieee.m4: New file.
+       * m4/fmodf.m4 (gl_FUNC_FMODF): If gl_FUNC_FMODF_IEEE is present, test
+       whether fmodf works with zero arguments. Replace it if not.
+       * lib/math.in.h (fmodf): Override if REPLACE_FMODF is 1.
+       * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FMODF.
+       * modules/math (Makefile.am): Substitute REPLACE_FMODF.
+       * modules/fmodf (configure.ac): Consider REPLACE_FMODF.
+       (Depends-on): Update dependencies.
+       * modules/fmodf-ieee (Files): Add m4/fmodf-ieee.m4.
+       (configure.ac): Invoke gl_FUNC_FMODF_IEEE.
+       * doc/posix-functions/fmodf.texi: Mention the problem on OSF/1.
+
+       fmodf-ieee: Work around test failure on MSVC 9.
+       * modules/fmodf-ieee (Depends-on): Add fmod-ieee.
+       * doc/posix-functions/fmodf.texi: Mention the fmodf-ieee module.
+
+       fmod-ieee: Work around test failures on OSF/1, mingw.
+       * m4/fmod-ieee.m4: New file.
+       * m4/fmod.m4 (gl_FUNC_FMOD): If gl_FUNC_FMOD_IEEE is present, test
+       whether fmod works with zero arguments. Replace it if not.
+       * lib/math.in.h (fmod): New declaration.
+       * lib/fmod.c: New file.
+       * m4/math_h.m4 (gl_MATH_H): Test whether fmod is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_FMOD, REPLACE_FMOD.
+       * modules/math (Makefile.am): Substitute GNULIB_FMOD, REPLACE_FMOD.
+       * modules/fmod (Files): Add lib/fmod.c.
+       (Depends-on): Add math, isinf, trunc, fma.
+       (configure.ac): Arrange to compile lib/fmod.c if needed.
+       * modules/fmod-ieee (Files): Add m4/fmod-ieee.m4, m4/minus-zero.m4,
+       m4/signbit.m4.
+       (configure.ac): Invoke gl_FUNC_FMOD_IEEE.
+       * tests/test-math-c++.cc: Check the declaration of fmod.
+       * doc/posix-functions/fmod.texi: Mention the fmod-ieee module.
+
+       fmodl-ieee: Fix test failures.
+       * lib/fmodl.c (fmodl): Treat Inf specially.
+       * modules/fmodl (Depends-on): Add isinf.
+
+       Tests for module 'fmodl-ieee'.
+       * modules/fmodl-ieee-tests: New file.
+       * tests/test-fmodl-ieee.c: New file.
+
+       New module 'fmodl-ieee'.
+       * modules/fmodl-ieee: New file.
+
+       Tests for module 'fmod-ieee'.
+       * modules/fmod-ieee-tests: New file.
+       * tests/test-fmod-ieee.c: New file.
+
+       New module 'fmod-ieee'.
+       * modules/fmod-ieee: New file.
+
+       Tests for module 'fmodf-ieee'.
+       * modules/fmodf-ieee-tests: New file.
+       * tests/test-fmodf-ieee.c: New file.
+       * tests/test-fmod-ieee.h: New file.
+
+       New module 'fmodf-ieee'.
+       * modules/fmodf-ieee: New file.
+
+2012-02-27  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'rintl-ieee'.
+       * modules/rintl-ieee-tests: New file.
+       * tests/test-rintl-ieee.c: New file.
+
+       New module 'rintl-ieee'.
+       * modules/rintl-ieee: New file.
+
+       Tests for module 'rint-ieee'.
+       * modules/rint-ieee-tests: New file.
+       * tests/test-rint-ieee.c: New file.
+
+       New module 'rint-ieee'.
+       * modules/rint-ieee: New file.
+
+       Tests for module 'rintf-ieee'.
+       * modules/rintf-ieee-tests: New file.
+       * tests/test-rintf-ieee.c: New file.
+       * tests/test-rint-ieee.h: New file.
+
+       New module 'rintf-ieee'.
+       * modules/rintf-ieee: New file.
+
+2012-02-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex: re_search etc. should return -2 when memory exhausted
+       This bug was uncovered when testing 'grep'.  Without the fix,
+       re_search and friends return -1 when memory is exhausted, but -1
+       means no match, and this causes grep to falsely report no-match
+       instead of memory-exhaustion.  See
+       <http://sources.redhat.com/bugzilla/show_bug.cgi?id=13762>.
+       * lib/regexec.c (re_search_stub): Return -2 (not -1) if there is
+       trouble; this can occur if re_search_internal ran out of memory.
+
+2012-02-26  Bruno Haible  <bruno@clisp.org>
+
+       modfl-ieee: Work around test failures on IRIX, OSF/1, mingw.
+       * m4/modfl-ieee.m4: New file.
+       * m4/modfl.m4 (gl_FUNC_MODFL): If gl_FUNC_MODFL_IEEE is present, test
+       whether modfl works with Inf. Replace it if not.
+       * lib/math.in.h (modfl): Override if REPLACE_MODFF is 1.
+       * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_MODFL.
+       * modules/math (Makefile.am): Substitute REPLACE_MODFL.
+       * modules/modfl (configure.ac): Consider REPLACE_MODFL.
+       (Depends-on): Update dependencies.
+       * modules/modfl-ieee (Files): Add m4/modfl-ieee.m4, m4/minus-zero.m4,
+       m4/signbit.m4.
+       (configure.ac): Invoke gl_FUNC_MODFL_IEEE.
+       * doc/posix-functions/modfl.texi: Mention the modfl-ieee module.
+
+       modfl-ieee: Fix dependencies.
+       * modules/modfl-ieee (Depends-on): Add modf-ieee.
+
+       modfl-ieee: Fix test failures.
+       * lib/modfl.c (modfl): Treat NaN and Inf specially.
+       * modules/modfl (Depends-on): Add isfinite, isinf.
+
+       modff-ieee: Work around test failures on *BSD, IRIX, OSF/1, etc.
+       * m4/modff-ieee.m4: New file.
+       * m4/modff.m4 (gl_FUNC_MODFF): If gl_FUNC_MODFF_IEEE is present, test
+       whether modff works with NaN and Inf. Replace it if not.
+       * lib/math.in.h (modff): Override if REPLACE_MODFF is 1.
+       * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_MODFF.
+       * modules/math (Makefile.am): Substitute REPLACE_MODFF.
+       * modules/modff (configure.ac): Consider REPLACE_MODFF.
+       (Depends-on): Update dependencies.
+       * modules/modff-ieee (Files): Add m4/modff-ieee.m4, m4/minus-zero.m4,
+       m4/signbit.m4.
+       (Depends-on): Add modf-ieee.
+       (configure.ac): Invoke gl_FUNC_MODFF_IEEE.
+       * doc/posix-functions/modff.texi: Mention the modff-ieee module.
+
+       modf-ieee: Work around test failures on *BSD, IRIX, OSF/1, Cygwin.
+       * m4/modf-ieee.m4: New file.
+       * m4/modf.m4 (gl_FUNC_MODF): If gl_FUNC_MODF_IEEE is present, test
+       whether modf works with NaN and Inf. Replace it if not.
+       * lib/math.in.h (modf): New declaration.
+       * lib/modf.c: New file.
+       * m4/math_h.m4 (gl_MATH_H): Test whether modf is declared.
+       (gl_MATH_H_DEFAULTS): Initialize GNULIB_MODF, REPLACE_MODF.
+       * modules/math (Makefile.am): Substitute GNULIB_MODF, REPLACE_MODF.
+       * modules/modf (Files): Add lib/modf.c.
+       (Depends-on): Add math, isfinite, trunc, isinf.
+       (configure.ac): Addrange to compile lib/modf.c if needed.
+       * modules/modf-ieee (Files): Add m4/modf-ieee.m4, m4/minus-zero.m4,
+       m4/signbit.m4.
+       (configure.ac): Invoke gl_FUNC_MODF_IEEE.
+       * tests/test-math-c++.cc: Check the declaration of modf.
+       * doc/posix-functions/modf.texi: Mention the modf-ieee module.
+
+       Tests for module 'modfl-ieee'.
+       * modules/modfl-ieee-tests: New file.
+       * tests/test-modfl-ieee.c: New file.
+
+       New module 'modfl-ieee'.
+       * modules/modfl-ieee: New file.
+
+       Tests for module 'modf-ieee'.
+       * modules/modf-ieee-tests: New file.
+       * tests/test-modf-ieee.c: New file.
+
+       New module 'modf-ieee'.
+       * modules/modf-ieee: New file.
+
+       Tests for module 'modff-ieee'.
+       * modules/modff-ieee-tests: New file.
+       * tests/test-modff-ieee.c: New file.
+       * tests/test-modf-ieee.h: New file.
+
+       New module 'modff-ieee'.
+       * modules/modff-ieee: New file.
+
+2012-02-26  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'fabsl-ieee'.
+       * modules/fabsl-ieee-tests: New file.
+       * tests/test-fabsl-ieee.c: New file.
+
+       New module 'fabsl-ieee'.
+       * modules/fabsl-ieee: New file.
+
+       Tests for module 'fabs-ieee'.
+       * modules/fabs-ieee-tests: New file.
+       * tests/test-fabs-ieee.c: New file.
+
+       New module 'fabs-ieee'.
+       * modules/fabs-ieee: New file.
+
+       Tests for module 'fabsf-ieee'.
+       * modules/fabsf-ieee-tests: New file.
+       * tests/test-fabsf-ieee.c: New file.
+       * tests/test-fabs-ieee.h: New file.
+
+       New module 'fabsf-ieee'.
+       * modules/fabsf-ieee: New file.
+
+2012-02-26  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'fmal-ieee'.
+       * modules/fmal-ieee-tests: New file.
+       * tests/test-fmal-ieee.c: New file.
+
+       New module 'fmal-ieee'.
+       * modules/fmal-ieee: New file.
+
+       Tests for module 'fma-ieee'.
+       * modules/fma-ieee-tests: New file.
+       * tests/test-fma-ieee.c: New file.
+
+       New module 'fma-ieee'.
+       * modules/fma-ieee: New file.
+
+       Tests for module 'fmaf-ieee'.
+       * modules/fmaf-ieee-tests: New file.
+       * tests/test-fmaf-ieee.c: New file.
+       * tests/test-fma-ieee.h: New file.
+
+       New module 'fmaf-ieee'.
+       * modules/fmaf-ieee: New file.
+
+2012-02-26  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'ldexpl-ieee'.
+       * modules/ldexpl-ieee-tests: New file.
+       * tests/test-ldexpl-ieee.c: New file.
+
+       New module 'ldexpl-ieee'.
+       * modules/ldexpl-ieee: New file.
+
+       Tests for module 'ldexp-ieee'.
+       * modules/ldexp-ieee-tests: New file.
+       * tests/test-ldexp-ieee.c: New file.
+
+       New module 'ldexp-ieee'.
+       * modules/ldexp-ieee: New file.
+
+       Tests for module 'ldexpf-ieee'.
+       * modules/ldexpf-ieee-tests: New file.
+       * tests/test-ldexpf-ieee.c: New file.
+       * tests/test-ldexp-ieee.h: New file.
+
+       New module 'ldexpf-ieee'.
+       * modules/ldexpf-ieee: New file.
+
 2012-02-26  Bruno Haible  <bruno@clisp.org>
 
+       Refactor frexp*-ieee tests.
+       * tests/test-frexp-ieee.h: New file.
+       * tests/test-frexpf-ieee.c: Include test-frexp-ieee.h.
+       (main): Just call test_function.
+       * tests/test-frexp-ieee.c: Include test-frexp-ieee.h.
+       (main): Just call test_function.
+       * tests/test-frexpl-ieee.c: Include test-frexp-ieee.h.
+       (main): Just call test_function.
+       * modules/frexpf-ieee-tests (Files): Add tests/test-frexp-ieee.h.
+       * modules/frexp-ieee-tests (Files): Likewise.
+       * modules/frexpl-ieee-tests (Files): Likewise.
+
+       Tests for module 'frexpl-ieee'.
+       * modules/frexpl-ieee-tests: New file.
+       * tests/test-frexpl-ieee.c: New file.
+
+       New module 'frexpl-ieee'.
+       * modules/frexpl-ieee: New file.
+
+       Tests for module 'frexp-ieee'.
+       * modules/frexp-ieee-tests: New file.
+       * tests/test-frexp-ieee.c: New file.
+
+       New module 'frexp-ieee'.
+       * modules/frexp-ieee: New file.
+
+       Tests for module 'frexpf-ieee'.
+       * modules/frexpf-ieee-tests: New file.
+       * tests/test-frexpf-ieee.c: New file.
+
+       New module 'frexpf-ieee'.
+       * modules/frexpf-ieee: New file.
+
+2012-02-26  Bruno Haible  <bruno@clisp.org>
+
+       roundl-ieee tests: More tests.
+       * tests/test-roundl-ieee.c: Include isnanl-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/roundl-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnanl-nolibm.
+
+       round-ieee tests: More tests.
+       * tests/test-round-ieee.c: Include isnand-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/round-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnand-nolibm.
+
+       roundf-ieee tests: More tests.
+       * tests/test-roundf-ieee.c: Include isnanf-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/roundf-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnanf-nolibm.
+
+       truncl-ieee tests: More tests.
+       * tests/test-truncl-ieee.c: Include isnanl-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/truncl-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnanl-nolibm.
+
+       trunc-ieee tests: More tests.
+       * tests/test-trunc-ieee.c: Include isnand-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/trunc-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnand-nolibm.
+
+       truncf-ieee tests: More tests.
+       * tests/test-truncf-ieee.c: Include isnanf-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/truncf-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnanf-nolibm.
+
+       ceill-ieee tests: More tests.
+       * tests/test-ceill-ieee.c: Include isnanl-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/ceill-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnanl-nolibm.
+
+       ceil-ieee tests: More tests.
+       * tests/test-ceil-ieee.c: Include isnand-nolibm.h, infinity.h, nan.h.
+       (main): Add tests for [MX] shaded specification in POSIX.
+       * modules/ceil-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+       (Depends-on): Add isnand-nolibm.
+
        ceilf-ieee tests: More tests.
        * tests/test-ceilf-ieee.c: Include isnanf-nolibm.h, infinity.h, nan.h.
        (main): Add tests for [MX] shaded specification in POSIX.