strerror_r: Fix comments.
[pspp] / ChangeLog
index 8eaefefdd81f694696d459e1e847ca9c4f6c0486..ffd1ba6980ce3aefb1bdb86302ce8eec89d489c3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,174 @@
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Fix comments.
+       * lib/strerror_r.c (strerror_r): Fix comment about Cygwin and sys_nerr.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       relocatable-prog-wrapper: Fix possible link error.
+       * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): Move determination of
+       HAVE_SETENV and REPLACE_SETENV and AC_LIBOBJ invocation from here...
+       (gl_FUNC_SETENV): ... to here.
+       * m4/canonicalize.m4 (gl_CANONICALIZE_LGPL_SEPARATE): Update comment.
+       * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): Likewise.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       relocatable-prog-wrapper: Assume strerror() exists.
+       * modules/relocatable-prog-wrapper (Files): Remove lib/strerror.c,
+       m4/strerror.m4.
+       (configure.ac): Don't invoke gl_FUNC_STRERROR_SEPARATE.
+       * lib/relocwrapper.c: Remove mention of strerror module.
+       * lib/strerror.c: Assume REPLACE_STRERROR is 1.
+       * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Remove macro.
+       (gl_FUNC_STRERROR): Inline it here. Don't define REPLACE_STRERROR as a
+       C macro.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       select: Simplify replacement idiom.
+       * m4/select.m4 (gl_FUNC_SELECT): Set REPLACE_SELECT also on native
+       Win32 platforms.
+       * lib/sys_select.in.h (select): Simplify accordingly.
+       * modules/select (Depends-on): Likewise.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       mkdir-p: Simplify autoconf macro.
+       * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't require gl_FUNC_LCHMOD,
+       gl_FUNC_LCHOWN.
+
+2011-05-21  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: avoid clobbering strerror on cygwin
+       * lib/strerror_r.c (strerror_r): Don't use cygwin's strerror_r;
+       fall back instead to sys_errlist.
+       * modules/strerror (configure.ac): Add witness.
+       * tests/test-strerror_r.c (main): Enhance test.
+       * doc/posix-functions/strerror_r.texi (strerror_r): Document it.
+       * tests/test-perror2.c (main): Free memory before exit.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       mkdtemp: Use gnulib naming conventions.
+       * m4/mkdtemp.m4 (gl_FUNC_MKDTEMP): Renamed from gt_FUNC_MKDTEMP.
+       * modules/mkdtemp (configure.ac): Update.
+
+2011-05-20  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: avoid corrupting errno on Solaris
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Check for Solaris behavior.
+       * doc/posix-functions/strerror_r.texi (strerror_r): Document it.
+
+       strerror_r: avoid compiler warning
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Don't return a char*.
+
+       strerror_r: simplify AIX code
+       * lib/strerror_r.c (strerror_r): Filter out buflen of 1 up front.
+
+       test-perror: avoid spurious failure on FreeBSD
+       * modules/perror-tests (Depends-on): Add strerror, now that
+       strerror_r no longer pulls it in.
+
+2011-05-20  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r-posix: Remove unused dependencies.
+       * modules/strerror_r-posix (Depends-on): Remove strerror.
+       Reported by Eric Blake.
+
+2011-05-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprops: remove assumption about A|B representation
+       * lib/intprops.h (_GL_BINARY_OP_OVERFLOW): Do not assume that A|B
+       is a valid integer if both A and B are.  Although this is true for
+       all known practical hosts, the C standard doesn't guarantee it,
+       and the code need not assume it.  Also, this change may work around
+       HP-UX 11.23 and IRIX 6.5 cc bugs reported by Bruno Haible in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00426.html>.
+
+2011-05-20  Eric Blake  <eblake@redhat.com>
+
+       perror: work around FreeBSD bug
+       * m4/perror.m4 (gl_FUNC_PERROR): Also replace perror if strerror_r
+       is broken.  Move AC_LIBOBJ...
+       * modules/perror (configure.ac): Here.
+       * doc/posix-functions/perror.texi (perror): Document this.
+       * tests/test-perror2.c (main): Enhance test.
+
+       test-perror: check for strerror interactions
+       * tests/macros.h (STREQ): Add macro.
+       * modules/perror-tests (Files): Add second test.
+       * tests/test-perror2.c (main): New file.
+       * doc/posix-functions/perror.texi (perror): Document glibc bug.
+
+       test-perror: rewrite to use init script
+       * modules/perror-tests (Files): Add init.sh.
+       * tests/test-perror.sh: Use temporary directory.
+
+2011-05-20  Jim Meyering  <meyering@redhat.com>
+
+       maint: replace misused "a" with "an"
+       * doc/intprops.texi: "a integer"
+       * doc/regex.texi: "a explanation"
+       * lib/alignof.h: "a object"
+       * lib/argmatch.h: "a explanation"
+       * lib/argp-help.c: "a option" and "a OPTION_DOC"
+       * lib/stdint.in.h: "a integer"
+       * lib/userspec.c: "a owner"
+       * doc/gnulib.texi: Fix "a idea", and reword.
+
+2011-05-19  Jim Meyering  <meyering@redhat.com>
+
+       maint: correct misuse of "a" and "an"
+       * doc/regex.texi (Collating Symbol Operators): s/an close.../a close/
+       * lib/argp-help.c: "an docum...": s/an/a/
+       * lib/argp-parse.c: "An vector": s/An/A/
+       * lib/execute.c: "an native": s/an/a/
+       * lib/spawn-pipe.c: Likewise.
+       * lib/gc.h: "an Gc_rc": s/an/a/
+       * lib/unigbrk.in.h: "an grapheme": s/an/a/
+       * lib/fts.c: "an stat.st_dev": s/an/a/
+
+2011-05-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprops-tests: work around HP-UX 11.23 cc bug with constants
+       * tests/test-intprops.c (VERIFY): New macro.
+       (main): Use it, instead of verify, to work around the compiler bug; see
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00401.html>.
+
+       intprops: work around IRIX 6.5 cc bug with 0u - 0u + -1
+       See http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00406.html
+       * lib/intprops.h (_GL_INT_NEGATE_CONVERT): New macro.
+       (_GL_INT_SIGNED, _GL_INT_MAXIMUM, _GL_DIVIDE_OVERFLOW):
+       (_GL_REMAINDER_OVERFLOW): Use it.
+
+       intprops-tests: revert unsigned part of previous change
+       * tests/test-intprops.c (UINT_MAX, ULONG_MAX, UINTMAX_MAX, U0, U1):
+       Remove; they weren't actually needed.  All uses of U0 and U1 removed,
+       and other casts to 'unsigned int' reverted to 'u' suffixes.  See
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00406.html>.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Work around strerror_r() change in Cygwin 1.7.8.
+       * lib/strerror_r.c (strerror_r) [CYGWIN]: Recognize when the system's
+       strerror_r() returned without filling the buffer.
+       Reported by Eric Blake.
+
+2011-05-19  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: guarantee unchanged errno
+       * lib/strerror_r.c (strerror_r): Guarantee unchanged errno.
+       * lib/strerror-impl.h (strerror): Set errno to match strerror_r
+       failure.
+       * tests/test-strerror_r.c (main): Enhance test.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Reorder #if blocks.
+       * lib/strerror_r.c (strerror_r): Reorder conditionals in the function
+       for consistency with the previous commit.
+
 2011-05-19  Bruno Haible  <bruno@clisp.org>
 
        perror: Avoid clobbering the strerror buffer when possible.
 2011-05-19  Eric Blake  <eblake@redhat.com>
 
        strerror_r: fix on newer cygwin
-       * lib/strerror_r.c (rpl_strerror_r): Cygwin now has
+       * lib/strerror_r.c (strerror_r): Cygwin now has
        __xpg_strerror_r, use it.
 
 2011-05-19  Bruno Haible  <bruno@clisp.org>
 
        (x)memcoll: speedup when input is known to be NUL delimited
        * lib/memcoll.c: Include stdlib.
-       (memcoll0) New function.
-       (strcoll_loop) New function, refactored for use in both memcoll
+       (memcoll0): New function.
+       (strcoll_loop): New function, refactored for use in both memcoll
        and memcoll0.
-       * lib/memcoll.h: Add prototype for memcoll0.
-       * lib/xmemcoll.c: (xmemcoll0) New function.
-       (collate_error) New function, refactored for use in both xmemcoll
+       * lib/memcoll.h (memcoll0): Add prototype.
+       * lib/xmemcoll.c (xmemcoll0): New function.
+       (collate_error): New function, refactored for use in both xmemcoll
        and xmemcoll0.
-       * lib/xmemcoll.h: Add prototype for xmemcoll0.
+       * lib/xmemcoll.h (xmemcoll0): Add prototype.
        * m4/memcoll.m4: add inline invocation.
 
 2010-07-06  Pádraig Brady  <P@draigBrady.com>
 2010-06-08  Peter Simons  <simons@cryp.to>
 
        maint.mk: make the news-check rule more configurable
-       * top/maint.mk (news-check-lines-spec) New variable.
+       * top/maint.mk (news-check-lines-spec): New variable.
        (news-check): Use "sed -n 1,10p" in place of "head".
 
 2010-06-07  Jim Meyering  <meyering@redhat.com>
        * lib/pipe.c (create_pipe) [WIN32]: Likewise. Use fd_safer_noinherit
        instead of fd_safer.
        * tests/test-pipe.c: Include <windows.h>.
-       (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close() result.
+       (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close()
+       result.
 
        * tests/test-pipe.c (child_main, parent_main): New functions, extracted
        from main.
        (signbit): New macro.
        * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
        REPLACE_SIGNBIT.
-       * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
+       * modules/math (Makefile.am): Substibute also GNULIB_SIGNBIT and
        REPLACE_FREXPL into math.h.
 
 2007-04-06  Bruno Haible  <bruno@clisp.org>
        * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
        is set. Don't provide a prototype if REPLACE_FREXPL is not set.
        * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
-       * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
+       * modules/math (Makefile.am): Substibute also REPLACE_FREXPL into
+       math.h.
 
 2007-03-25  Bruno Haible  <bruno@clisp.org>
 
        * modules/tempname (Depends-on): Likewise.
        * modules/utimens (Depends-on): Likewise.
        * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
-       (Include:) Change back to <sys/time.h>.
-       (Maintainer:) Add self.
+       (Include): Change back to <sys/time.h>.
+       (Maintainer): Add self.
        * modules/sys_time: New file.
        * modules/tempname (Depends-on): Add gettimeofday.
        * tests/test-gettimeofday.c: Include <sys/time.h>
        * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
        * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
        AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
-       * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
+       * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
 
        * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
        changes.  Make 2.59 a prerequisite.  Check and substitute for
 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
 
        * gnulib-tool (Options): Add -s for --symlink/--symbolic.
-       (func_ln_if_changed) Remove forcibly for no error message
+       (func_ln_if_changed): Remove forcibly for no error message
        in case file does not exist.
 
 2005-04-19  Simon Josefsson  <jas@extundo.com>
        * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
        * lib/timespec.h (gettime): Return void, since it always
        succeeds now.  All uses changed.
-       * lib/gettime.c (gettime) Likewise.
+       * lib/gettime.c (gettime): Likewise.
        [HAVE_NANOTIME]: Prefer nanotime.
        Assume gettimeofday succeeds, as POSIX requires.
        Assime time () succeeds, since other code already does.
        * lib/full-write.c: Correct credits, as cccp.c no longer
        exists and anyway it was so heavily changed from the old cccp
        code as to be unrecognizable.  Include full-write.h.
-       (full_write) Return size_t, with short writes meaning failure.
+       (full_write): Return size_t, with short writes meaning failure.
        All callers changed.  This fixes a bug with large buffers
        on 64-bit hosts.
        * lib/utime.c: Include full-write.h.