+2011-06-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lib/timespec.h (timespec_sign): New inline function.
+
+ pselect: new module
+ * lib/sys_select.in.h: Include <signal.h>, for 'sigset_t'.
+ (pselect): New decls.
+ * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Require AC_C_RESTRICT,
+ since the standard pselect decl uses 'restrict'.
+ (gl_SYS_SELECT_H_DEFAULTS): Add defaults for GNULIB_PSELECT,
+ HAVE_PSELECT, REPLACE_PSELECT.
+ * modules/sys_select (sys/select.h): Substitute GNULIB_PSELECT,
+ HAVE_PSELECT, REPLACE_PSELECT.
+ * lib/pselect.c, m4/pselect.m4, modules/pselect: New files.
+
+ sys_select: don't depend on sys_socket
+ This is so that Emacs doesn't have to drag in m4/sockpfaf.m4 etc; see
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-06/msg00358.html>.
+ This fix works on GNU and GNU-like platforms, but has not been tested
+ on native Windows.
+ * lib/sys_select.in.h: Include <sys/socket.h> only if native Windows.
+ * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Do not require
+ gl_HEADER_SYS_SOCKET.
+ * modules/sys_select (Files): Add m4/sys_socket_h.m4, for
+ gl_PREREQ_SYS_H_WINSOCK2.
+
+2011-06-29 Eric Blake <eblake@redhat.com>
+
+ pipe2: fix C89 compile problem
+ * lib/pipe2.c (pipe2): Avoid C99 array initialization.
+ Reported by Bruno Haible.
+
+ pipe, pipe2: don't corrupt fd on error
+ * lib/pipe.c (pipe): Leave fd unchanged on error.
+ * lib/pipe2.c (pipe2): Likewise.
+ * doc/posix-functions/pipe.texi (pipe): Document cygwin issue.
+ * doc/glibc-functions/pipe2.texi (pipe2): Likewise.
+
+2011-06-27 Paolo Bonzini <bonzini@gnu.org>
+
+ mmap-anon: do not use regular expressions inadvertently
+ * m4/mmap-anon.m4: Remove trailing period from strings sought
+ in the output.
+
+2011-06-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ nanosleep: fix integer overflow problem
+ * lib/nanosleep.c (my_usleep): Don't assume signed integer
+ arithmetic wraps around on overflow.
+
+ nanosleep: simplify carrying
+ * lib/nanosleep.c (nanosleep): Use the requested tv_nsec for the
+ first call to the underyling nanosleep, not for the last one.
+ This doesn't fix any bugs, but it simplifies the computation of
+ the remaining delay. Found while auditing integer overflow issues.
+
+ dup2: remove test for existence of fcntl
+ * m4/dup2.m4 (gl_FUNC_DUP2): Use "#ifdef FD_CLOEXEC", not
+ "#if HAVE_FCNTL", in the configure-time test program.
+ This removes the need for the AC_CHECK_FUNCS_ONCE([fcntl]),
+ and therefore speeds up "configure" a bit. Found while
+ adding the dup2 module to Emacs.
+
+2011-06-24 Eric Blake <eblake@redhat.com>
+
+ maint.mk: enhance useless header checks
+ * top/maint.mk (_sc_header_without_use): Check both include
+ styles.
+ (sc_prohibit_assert_without_use)
+ (sc_prohibit_close_stream_without_use)
+ (sc_prohibit_getopt_without_use)
+ (sc_prohibit_quotearg_without_use)
+ (sc_prohibit_quote_without_use)
+ (sc_prohibit_long_options_without_use)
+ (sc_prohibit_inttostr_without_use)
+ (sc_prohibit_ignore_value_without_use)
+ (sc_prohibit_error_without_use, sc_prohibit_xalloc_without_use)
+ (sc_prohibit_hash_without_use, sc_prohibit_cloexec_without_use)
+ (sc_prohibit_posixver_without_use, sc_prohibit_same_without_use)
+ (sc_prohibit_hash_pjw_without_use)
+ (sc_prohibit_safe_read_without_use)
+ (sc_prohibit_argmatch_without_use)
+ (sc_prohibit_canonicalize_without_use)
+ (sc_prohibit_root_dev_ino_without_use)
+ (sc_prohibit_openat_without_use)
+ (sc_prohibit_c_ctype_without_use)
+ (sc_prohibit_signal_without_use)
+ (sc_prohibit_stdio--_without_use)
+ (sc_prohibit_stdio-safer_without_use)
+ (sc_prohibit_strings_without_use)
+ (sc_prohibit_intprops_without_use)
+ (sc_prohibit_stddef_without_use)
+ (sc_prohibit_xfreopen_without_use): Update clients.
+
+2011-06-24 Jim Meyering <meyering@redhat.com>
+
+ syntax-check: keep one maint.mk rule in sync with its header
+ * Makefile (sc_check_sym_list): Add a rule to prevent a repeat
+ of the bug Eric has just fixed, with today's commit 25e4c2ec.
+ I prefer to avoid temporary files here, so use <(...), but that
+ is not supported by /bin/sh, so...
+ (SHELL): Define to /bin/bash.
+
+2011-06-24 Eric Blake <eblake@redhat.com>
+
+ maint.mk: update sc_prohibit_intprops_without_use
+ * top/maint.mk (_intprops_names): Match recent changes.
+
+2011-06-24 Bruno Haible <bruno@clisp.org>
+
+ strerror-override: No-op tweak.
+ * lib/strerror-override.h (strerror_override): Reorder conditions,
+ for consistency with lib/strerror-override.c.
+
+2011-06-23 Eric Blake <eblake@redhat.com>
+
+ maint.mk: test further PATH_MAX issues
+ * top/maint.mk (sc_prohibit_path_max_array): Rename...
+ (sc_prohibit_path_max_allocation): ...and also test alloca.
+ Suggested by Jim Meyering.
+
+2011-06-22 Eric Blake <eblake@redhat.com>
+
+ maint.mk: add syntax-check to avoid char[PATH_MAX]
+ * top/maint.mk (sc_prohibit_path_max_array): New rule.
+
+ stat: be robust to PATH_MAX definition
+ * lib/stat.c (rpl_stat): Require reasonable PATH_MAX.
+ * modules/stat (Depends-on): Add verify.
+
+ link: work around IRIX bug
+ * m4/link.m4 (gl_FUNC_LINK): Expose the bug.
+ * lib/link.c (rpl_link): Work around it.
+ * tests/test-link.h (test_link): Enhance test.
+ * doc/posix-functions/link.texi (link): Document the bug.
+
+ getopt: silence clang warning
+ * lib/getopt.c (_getopt_internal_r): Avoid unlikely NULL
+ dereference.
+ Reported by Gustavo Martin Domato.
+
+2011-06-22 Jim Meyering <meyering@redhat.com>
+
+ bootstrap: do not insert a blank line into each .gitignore file
+ * build-aux/bootstrap (sort_patterns): Filter out blank lines.
+
+2011-06-21 Eric Blake <eblake@redhat.com>
+
+ perror: test for output mismatch
+ * m4/perror.m4 (gl_FUNC_PERROR): Add test, in order to replace
+ perror on IRIX.
+
+ 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.