maint: replace misused "a" with "an"
[gnulib.git] / ChangeLog
index 99e2c3e..f42002c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,156 @@
+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.
+       * lib/strerror-impl.h: New file, extracted from lib/strerror.c.
+       * lib/strerror.c: Include it.
+       * modules/strerror (Files): Add lib/strerror-impl.h.
+       * lib/perror.c: Include <stdlib.h>, intprops.h, verify.h.
+       (my_strerror): New function, defined through lib/strerror-impl.h.
+       (perror): Use it instead of strerror.
+       * modules/perror (Files): Add lib/strerror-impl.h.
+       (Depends-on): Remove strerror. Add intprops, verify, strerror_r-posix.
+
+2011-05-19  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: fix on newer cygwin
+       * lib/strerror_r.c (strerror_r): Cygwin now has
+       __xpg_strerror_r, use it.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Avoid clobbering the strerror buffer when possible.
+       * lib/strerror.c: Define _NETBSD_SOURCE. Include <nl_types.h>.
+       (sys_nerr, sys_errlist): New declarations.
+       (strerror_r): Be careful not to clobber the strerror buffer on NetBSD,
+       HP-UX, native Win32, IRIX, and 32-bit Solaris.
+       * m4/strerror_r.m4 (gl_PREREQ_STRERROR_R): Test whether catgets exists.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Fix test failure on mingw.
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Don't define
+       EXTEND_STRERROR_R.
+       * lib/strerror_r.c (strerror_r): Test the various GNULIB_defined_*
+       macros from errno.in.h instead.
+
+2011-05-19  Eric Blake  <eblake@redhat.com>
+
+       strerror: relax test for Solaris
+       * tests/test-strerror.c (main): Permit Solaris behavior.
+       * tests/test-strerror_r.c (main): Likewise.
+
+       strerror: enforce POSIX ruling on strerror(0)
+       * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Expose BSD bug.
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Likewise.
+       * lib/strerror_r.c (rpl_strerror_r): Work around it.
+       * doc/posix-functions/strerror.texi (strerror): Document it.
+       * doc/posix-functions/strerror_r.texi (strerror_r): Likewise.
+       * tests/test-strerror.c (main): Strengthen test.
+       * tests/test-strerror_r.c (main): Likewise.
+
+2011-05-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprop-tests: port to older and more-pedantic compilers
+       * modules/intprops-tests (Files): Add tests/macros.h.
+       * tests/test-intprops.c: Include macros.h.
+       (TYPE_IS_INTEGER): Use ASSERT, not verify, to test this macro, as
+       it's no longer documented to expand to an integer constant expression.
+       (TYPE_SIGNED): Use ASSERT, not verify, to test this macro when the
+       argument is floating point, as it's no longer documented to expand
+       to an integer constant expression in that case.
+       (UINT_MAX, ULONG_MAX, UINTMAX_MAX): Redefine to work around
+       compiler bugs reported by Bruno Haible.  See
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00401.html>.
+       (U0, U1): New constants, to work around the same bugs.  Also,
+       in tests, use e.g., "(unsigned int) 39" rather than "39u".
+
+       intprops: work around C compiler bugs
+       * lib/intprops.h (INT_MULTIPLY_RANGE_OVERFLOW): Work around compiler
+       bug in Sun C 5.11 2010/08/13 and other compilers; see
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00401.html>.
+
+       intprops: TYPE_IS_INTEGER, TYPE_SIGNED not integer constant exprs
+       * doc/intprops.texi (Integer Type Determination): Fix
+       documentation for TYPE_IS_INTEGER: it returns an constant
+       expression, not an integer constant expression.  Fix doc for
+       TYPE_SIGNED: it returns an integer constant expression only if its
+       argument is an integer type.  (TYPE_IS_INTEGER is the same, but is
+       hardly worth documented that way....)
+
+2011-05-18  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Avoid clobbering the strerror buffer when possible.
+       * lib/strerror_r.c (strerror_r): Merge the three implementations.
+       Handle gnulib defined errno values here. When strerror() returns NULL
+       or an empty string, return EINVAL.
+       * lib/strerror.c (strerror): Always call strerror_r. Don't handle
+       gnulib defined errno values here.
+       * modules/strerror (Depends-on): Add verify, strerror_r-posix.
+
 2011-05-18  Eric Blake  <eblake@redhat.com>
 
        fnmatch: avoid compiler warning