logb: Provide replacement and workarounds.
[gnulib.git] / ChangeLog
index 25b0b87..b4c162d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,62 @@
+2012-04-02  Bruno Haible  <bruno@clisp.org>
+
+       logb: Provide replacement and workarounds.
+       * lib/math.in.h (logb): Ensure declaration. Replace if REPLACE_LOGB
+       is 1.
+       * lib/logb.c: New file.
+       * m4/logb.m4 (gl_FUNC_LOGB_WORKS): New macro.
+       (gl_FUNC_LOGB): Invoke it. Set HAVE_LOGB, REPLACE_LOGB.
+       * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOGB.
+       * modules/math (Makefile.am): Substitute REPLACE_LOGB.
+       * modules/logb (Files): Add lib/logb.c.
+       (Depends-on): Add isfinite, frexp, isnand.
+       (configure.ac): Compile the replacement code logb.c if needed.
+       * tests/test-math-c++.cc: Check the declaration of logb.
+       * doc/posix-functions/logb.texi: Mention the replacement and the bug
+       with subnormal numbers.
+
+2012-04-02  Bruno Haible  <bruno@clisp.org>
+
+       log10* tests: Speed up.
+       * tests/test-log10.h (test_function): Reduce amount of random numbers
+       to test.
+
 2012-04-01  Bruno Haible  <bruno@clisp.org>
 
+       logf-ieee: Fix test whether logf works.
+       * m4/logf.m4 (gl_FUNC_LOGF): Fix typo in test program.
+
+2012-04-01  Bruno Haible  <bruno@clisp.org>
+
+       log10l: Work around log10l-ieee test failure on IRIX 6.5.
+       * lib/log10l.c: Include <float.h>
+       (log10l): On IRIX, normalize the +Infinity value.
+       * modules/log10l (Depends-on): Add 'float'.
+       * doc/posix-functions/log10l.texi: Mention the IRIX problem with
+       +Infinity.
+
+       log10f-ieee: Work around test failure on NetBSD 5.1.
+       * m4/log10f-ieee.m4: New file.
+       * m4/log10f.m4 (gl_FUNC_LOG10F): If gl_FUNC_LOG10F_IEEE is present,
+       test whether log10f works with a negative argument. Replace it if not.
+       * lib/log10f.c (log10f): For negative arguments, return NaN.
+       * modules/log10f-ieee (Files): Add m4/log10f-ieee.m4.
+       (configure.ac): Invoke gl_FUNC_LOG10F_IEEE.
+       * doc/posix-functions/log10f.texi: Mention the log10f-ieee module.
+
+       log10f-ieee: Work around test failure on Solaris 9.
+       * modules/log10f-ieee (Depends-on): Add log10-ieee.
+       (configure.ac): Require gl_FUNC_LOG10F.
+
+       log10-ieee: Work around test failure on NetBSD 5.1 and Solaris 11.
+       * m4/log10-ieee.m4: New file.
+       * m4/log10.m4 (gl_FUNC_LOG10): If gl_FUNC_LOG10_IEEE is present, test
+       whether log10 works with a negative argument. Replace it if not.
+       * lib/log10.c (log10): For negative arguments, return NaN.
+       * modules/log10-ieee (Files): Add m4/log10-ieee.m4.
+       (configure.ac): Invoke gl_FUNC_LOG10_IEEE.
+       * doc/posix-functions/log10.texi: Mention the log10-ieee module.
+
        Tests for module 'log10l-ieee'.
        * modules/log10l-ieee-tests: New file.
        * tests/test-log10l-ieee.c: New file.