strerror_r: fix OpenBSD behavior on out-of-range
[pspp] / ChangeLog
index d26cd37089d1476ed865092d8849c145a3c85ee5..07f38198f4620a0c16ea90ae37b527e53c21db5c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,126 @@
+2011-06-21  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: fix OpenBSD behavior on out-of-range
+       * lib/strerror_r.c (strerror_r): Always use maximal string.
+       * doc/posix-functions/strerror_r.texi (strerror_r): Document it.
+
+       strerror_r: fix OpenBSD behavior on 0
+       * lib/strerror-override.c (strerror_override): Also override 0
+       when needed.
+       * lib/strerror-override.h (strerror_override): Likewise.
+       * lib/strerror.c (strerror): Simplify, now that 0 override is done
+       earlier.
+       * lib/strerror_r.c (strerror_r): Likewise.
+       * m4/strerror.m4 (gl_FUNC_STRERROR): Split detection of 0
+       behavior...
+       (gl_FUNC_STRERROR_0): ...into new macro.
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Replace strerror_r if 0
+       is overridden.
+       (gl_FUNC_STRERROR_R_WORKS): Avoid extra tests if 0 is broken.
+       * modules/strerror-override (Files): Add strerror.m4.
+       (configure.ac): Also provide override for 0 when needed.
+       * doc/posix-functions/strerror.texi (strerror): Document this.
+       * doc/posix-functions/perror.texi (perror): Likewise.
+
+       perror: adjust array size
+       * modules/perror (Depends-on): Add strerror-override.
+       * lib/perror.c (perror): Use it to avoid magic number.
+
+       strerror-override: reduce size
+       * lib/strerror-override.c (strerror_override): Use fewer lines.
+
+2011-06-20  Bruno Haible  <bruno@clisp.org>
+
+       pathmax: Ensure correct value for PATH_MAX on HP-UX.
+       * lib/pathmax.h (PATH_MAX) [HP-UX]: Define to 1024.
+
+2011-06-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       alloca: port to compilers that can optimize like GCC 4.6.0
+       * lib/alloca.c (find_stack_direction): New signature, taken from
+       Autoconf git.  This works with GCC 4.6.0.  This code should never
+       be used with GCC 4.6.0 itself, as GCC has alloca, but it might
+       be used with other compilers that optimize as well as GCC 4.6.0 does.
+       (alloca): Adjust to new signature.
+       * m4/alloca.m4 (__AC_LIBOBJ_ALLOCA) [Autoconf version < 2.69]:
+       New macro, which patches Autoconf in a similar way.
+
+       c-stack: stop worrying about stack direction
+       * lib/c-stack.c (find_stack_direction): Remove.
+       (segv_handler): Don't worry about stack direction growth, as it's
+       too much of a pain to configure this correctly, given how compilers
+       are optimizing-away our stack-growth detection code.  Instead, assume
+       that any access to just before or just after the stack is OK.
+       * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
+       Don't require AC_FUNC_ALLOCA; no longer needed.
+
+2011-06-20  Eric Blake  <eblake@redhat.com>
+
+       test-stat: don't allocate PATH_MAX bytes
+       * tests/test-stat.h (test_stat_func): Don't stack-allocate a
+       PATH_MAX-sized buffer.
+       * modules/openat-tests (Depends-on): Add getcwd-lgpl, drop pathmax.
+       * modules/stat-tests (Depends-on): Likewise.
+       * tests/test-fstatat.c (includes): Drop pathmax.h.
+       * tests/test-stat.c (includes): Likewise.
+       Reported by Bruno Haible.
+
+2011-06-20  Bruno Haible  <bruno@clisp.org>
+
+       float: Work around <float.h> bugs on FreeBSD/x86, AIX with GCC, IRIX.
+       * lib/float.in.h: Add workarounds for FreeBSD/x86, AIX with GCC, IRIX.
+       * lib/float.c: New file.
+       * m4/float_h.m4 (gl_FLOAT_H): Also handle FreeBSD, AIX, IRIX. Set
+       REPLACE_FLOAT_LDBL.
+       * modules/float (Files): Add lib/float.c.
+       (configure.ac): Invoke AC_LIBOBJ.
+       * doc/posix-headers/float.texi: Mention problems on FreeBSD, AIX, IRIX.
+
+2011-06-20  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'float'.
+       * modules/float-tests: New file.
+       * tests/test-float.c: New file.
+
+2011-06-19  Bruno Haible  <bruno@clisp.org>
+
+       isinf: Coding style.
+       * lib/isinf.c: Use GNU coding style.
+
+2011-06-19  Bruno Haible  <bruno@clisp.org>
+
+       linkat test: Avoid test failure on AIX 7.1.
+       * tests/test-linkat.c (main): Allow EINVAL as alternate error value.
+       * tests/test-link.h (test_link): Likewise.
+
+2011-06-19  Bruno Haible  <bruno@clisp.org>
+
+       pread test: Avoid test failure on OpenBSD 4.9.
+       * tests/test-pread.c (main): Allow EFBIG instead of EINBAL.
+
+2011-06-19  Bruno Haible  <bruno@clisp.org>
+
+       sprintf-posix: Fix test failure on AIX 7.1.
+       * m4/printf.m4 (gl_PRINTF_PRECISION): Test against AIX bug.
+       * doc/posix-functions/dprintf.texi: Mention limited precision problem
+       on AIX.
+       * doc/posix-functions/fprintf.texi: Likewise.
+       * doc/posix-functions/printf.texi: Likewise.
+       * doc/posix-functions/snprintf.texi: Likewise.
+       * doc/posix-functions/sprintf.texi: Likewise.
+       * doc/posix-functions/vdprintf.texi: Likewise.
+       * doc/posix-functions/vfprintf.texi: Likewise.
+       * doc/posix-functions/vprintf.texi: Likewise.
+       * doc/posix-functions/vsnprintf.texi: Likewise.
+       * doc/posix-functions/vsprintf.texi: Likewise.
+
+2011-06-19  Bruno Haible  <bruno@clisp.org>
+
+       roundl-ieee: Fix test failure on AIX 7.1.
+       * m4/roundl.m4 (gl_FUNC_ROUNDL): Test also the sign of roundl (-0.3L).
+       * doc/posix-functions/roundl.texi: Mention problem with negative
+       arguments.
+
 2011-06-19  Bruno Haible  <bruno@clisp.org>
 
        round-ieee: Fix test failures on AIX 7.1 and OSF/1 5.1.