+2011-05-24 Jim Meyering <meyering@redhat.com>
+
+ utimensat: do not reference an out-of-scope buffer
+ Otherwise, with __linux__ defined, "times" would point to a buffer, "ts"
+ declared in an inner scope, yet "times" would be dereferenced outside
+ the scope in which "ts" was valid.
+ * lib/utimensat.c (rpl_utimensat) [__linux__]: Move the declaration
+ of ts[2] "out/up", so that the use of aliased "times" (via "times = ts;")
+ does not end up referencing an out-of-scope "ts"
+
+ opendir-safer.c: don't clobber errno; don't close negative FD
+ * lib/opendir-safer.c (opendir_safer):
+ [HAVE_FDOPENDIR || GNULIB_FDOPENDIR]: Don't close a negative
+ file descriptor, and more importantly, don't clobber the
+ offending errno value with EINVAL. Before, upon failure
+ of dup_safer, we would pass the negative file descriptor to
+ fdopendir, which would clobber errno.
+
+2011-05-23 Bruno Haible <bruno@clisp.org>
+
+ idcache: Fix module description.
+ * modules/idcache (Include): Set to "idcache.h".
+
+2011-05-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ gnulib-tool: fix portability problem with MacOS sed
+ A sed command like "/x/{s/a/b/}" is not portable; a newline is needed
+ before the "}". Problem reported by Leo in
+ <http://lists.gnu.org/archive/html/emacs-devel/2011-05/msg00717.html>.
+ * gnulib-tool (func_modules_transitive_closure): Insert newlines in
+ sed_extract_condition1, sed_extract_condition2.
+
+2011-05-23 Bruno Haible <bruno@clisp.org>
+
+ hash: Simplify autoconf macro.
+ * m4/hash.m4 (gl_HASH): Don't require AM_STDBOOL_H.
+
+2011-05-23 Bruno Haible <bruno@clisp.org>
+
+ getugroups: Fix module description.
+ * modules/getugroups (Include): Set to "getugroups.h".
+
+2011-05-23 Bruno Haible <bruno@clisp.org>
+
+ linkat: Simplify autoconf macro.
+ * m4/linkat.m4 (gl_FUNC_LINKAT): Don't require gl_FUNC_LINK.
+
+2011-05-23 Bruno Haible <bruno@clisp.org>
+ Eric Blake <eblake@redhat.com>
+
+ linkat, renameat: Update dependencies.
+ * modules/renameat (Depends-on): Add dosname, save-cwd. Remove stpcpy.
+ * modules/linkat (Depends-on): Likewise. Remove also readlink,
+ symlinkat.
+
+2011-05-23 Jim Meyering <meyering@redhat.com>
+
+ maint.mk: more tight_scope improvements
+ * top/maint.mk: (_gl_TS_var_match): Use $(_gl_TS_extern) here, too.
+ (_gl_TS_headers): Define only in if-0'd block.
+ (_gl_TS_dir): Omit the $(srcdir)/ prefix. Sometimes we need it,
+ sometimes we must *not* use it. Adjust uses accordingly.
+ (sc_tight_scope): Use much simpler grep-based test to determine
+ whether we skip this rule.
+
+ maint.mk: generalize/improve the tight-scope rule
+ * top/maint.mk: Emit a warning when the test is skipped.
+ (_gl_TS_dir): Add $(srcdir)/ prefix.
+ (_gl_TS_function_match): Simplify, rather than trying
+ to enumerate common types. Otherwise, it would fail to match an
+ "extern unsigned char const *" declaration in idutils.
+ (_gl_TS_extern): Do not endorse use of "XTERN", but do provide
+ a way to support use of that type of macro.
+ (_gl_TS_var_match): Simplify regexp.
+ (_gl_TS_obj_files): New configurable variable.
+ (_gl_TS_headers): Likewise.
+
+2011-05-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ verify: fix bug when gnulib <assert.h> is also included
+ * lib/verify.h (verify, verify_true): Define if _GL_VERIFY_H
+ is defined, not if _GL_STATIC_ASSERT_H is not defined.
+ Perhaps there's a better way, but this fixes the immediate problem.
+ Problem reported by Bruno Haible in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00478.html>.
+
+2011-05-22 Bruno Haible <bruno@clisp.org>
+
+ xgetcwd: Simplify autoconf macro.
+ * m4/xgetcwd.m4 (gl_XGETCWD): Don't require gl_FUNC_GETCWD.
+
+2011-05-22 Bruno Haible <bruno@clisp.org>
+
+ New module 'mktime-internal'.
+ * modules/mktime-internal: New file.
+ * m4/timegm.m4 (gl_PREREQ_TIMEGM): Move contents to ...
+ * m4/mktime.m4 (gl_FUNC_MKTIME_INTERNAL): New macro. Define
+ mktime_internal as a C macro if libc has __mktime_internal.
+ * modules/timegm (Depends-on): Add mktime-internal. Remove mktime. Add
+ conditions.
+ * MODULES.html.sh (Date and time <time.h>): Add mktime-internal.
+
+2011-05-22 Bruno Haible <bruno@clisp.org>
+
+ timegm: Correct mktime replacement statements.
+ * m4/timegm.m4 (gl_PREREQ_TIMEGM): Set REPLACE_MKTIME, instead of
+ defining mktime as a C macro. This completes a 2009-07-28 commit.
+
+2011-05-22 Bruno Haible <bruno@clisp.org>
+
+ timegm: Simplify autoconf macro.
+ * m4/timegm.m4 (gl_PREREQ_TIMEGM): Don't require gl_TIME_R.
+
+2011-05-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ clock-time: change to LGPLv2+.
+ * modules/clock-time: Change from GPL to LGPLv2+. Actually, it's
+ BSD-like but we have no mark for that; this is good enough for now.
+
+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.
+