+2011-07-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ doc: Document NonStop portability issues.
+ * doc/posix-functions/sigaction.texi (sigaction):
+ * doc/posix-headers/signal.texi (signal.h):
+ Document NonStop. See Joachim Schmitz in
+ http://lists.gnu.org/archive/html/bug-coreutils/2011-07/msg00062.html
+
+2011-07-15 Bruno Haible <bruno@clisp.org>
+
+ ffsl, ffsll: Avoid unportable behaviour.
+ * lib/ffsl.h (FUNC): Use 'unsigned int' instead of 'int'.
+
+2011-07-15 Bruno Haible <bruno@clisp.org>
+
+ ffs: More tests.
+ * tests/test-ffs.c (NBITS): New macro.
+ (main): Add more tests.
+ * tests/test-ffsl.c (NBITS): New macro.
+ (main): Add more tests.
+ * tests/test-ffsll.c (NBITS): New macro.
+ (main): Add more tests.
+
+2011-07-15 Eric Blake <eblake@redhat.com>
+
+ ffsl, ffsll: new modules
+ * modules/ffsl: New file.
+ * modules/ffsll: Likewise.
+ * m4/ffsl.m4: Likewise.
+ * m4/ffsll.m4: Likewise.
+ * lib/ffsl.c: Likewise.
+ * lib/ffsl.h: Likewise.
+ * lib/ffsll.c: Likewise.
+ * m4/string_h.m4 (gl_HEADER_STRING_H_BODY)
+ (gl_HEADER_STRING_H_DEFAULTS): Add defaults.
+ * modules/string (Makefile.am): Substitute witnesses.
+ * lib/strings.in.h (ffsl, ffsll): Declare.
+ * modules/ffsl-tests: New test file.
+ * modules/ffsll-tests: Likewise.
+ * tests/test-ffsl.c: Likewise.
+ * tests/test-ffsll.c: Likewise.
+ * MODULES.html.sh (Integer arithmetic functions): Mention it.
+ * doc/glibc-functions/ffsl.texi (ffsl): Likewise.
+ * doc/glibc-functions/ffsll.texi (ffsll): Likewise.
+
+ ffs: fix m4 prerequisite
+ * m4/ffs.m4 (gl_FUNC_FFS): Require strings.h defaults.
+
+ ffs: avoid undefined behavior
+ * lib/ffs.c (ffs): Provide fallback for non-32-bit int.
+ * tests/test-ffs.c (naive, main): Avoid signed shifts.
+ Reported by Bruno Haible.
+
+2011-07-12 Bruno Haible <bruno@clisp.org>
+
+ pthread_sigmask: Rely on module 'threadlib'.
+ * modules/pthread_sigmask (Depends-on): Add threadlib.
+ * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Assume gl_THREADLIB
+ is defined.
+
+2011-07-12 Bruno Haible <bruno@clisp.org>
+
+ regex: Depend on module 'strcase'.
+ * modules/regex (Depends-on): Add strcase, for strcasecmp().
+
+2011-07-12 Jim Meyering <meyering@redhat.com>
+
+ warn-on-use: fix typo in file name
+ * modules/snippet/warn-on-use (Files): Correct file name:
+ include /snippet/ component in "build-aux/snippet/warn-on-use.h".
+
+2011-07-12 Bruno Haible <bruno@clisp.org>
+
+ strings: Document module.
+ * doc/posix-headers/strings.texi: Mention module 'strings'.
+
+2011-07-12 Bruno Haible <bruno@clisp.org>
+
+ Rename module '_Noreturn' to 'snippet/_Noreturn'.
+ * modules/snippet/_Noreturn: Renamed from modules/_Noreturn.
+ (Files, Makefile.am): Update.
+ * build-aux/snippet/_Noreturn.h: Renamed from build-aux/_Noreturn.h.
+ * modules/stdlib (Depends-on): Update.
+
+2011-07-12 Bruno Haible <bruno@clisp.org>
+
+ * NEWS: Mention the changes.
+
+ Rename module 'warn-on-use' to 'snippet/warn-on-use'.
+ * modules/snippet/warn-on-use: Renamed from modules/warn-on-use.
+ (Files, Makefile.am): Update.
+ * build-aux/snippet/warn-on-use.h: Renamed from build-aux/warn-on-use.h.
+ * modules/arpa_inet (Depends-on): Update.
+ * modules/ctype (Depends-on): Update.
+ * modules/dirent (Depends-on): Update.
+ * modules/fcntl-h (Depends-on): Update.
+ * modules/glob (Depends-on): Update.
+ * modules/iconv-h (Depends-on): Update.
+ * modules/inttypes-incomplete (Depends-on): Update.
+ * modules/langinfo (Depends-on): Update.
+ * modules/locale (Depends-on): Update.
+ * modules/math (Depends-on): Update.
+ * modules/netdb (Depends-on): Update.
+ * modules/poll-h (Depends-on): Update.
+ * modules/pty (Depends-on): Update.
+ * modules/search (Depends-on): Update.
+ * modules/signal (Depends-on): Update.
+ * modules/spawn (Depends-on): Update.
+ * modules/stdio (Depends-on): Update.
+ * modules/stdlib (Depends-on): Update.
+ * modules/string (Depends-on): Update.
+ * modules/strings (Depends-on): Update.
+ * modules/sys_file (Depends-on): Update.
+ * modules/sys_ioctl (Depends-on): Update.
+ * modules/sys_select (Depends-on): Update.
+ * modules/sys_socket (Depends-on): Update.
+ * modules/sys_stat (Depends-on): Update.
+ * modules/sys_time (Depends-on): Update.
+ * modules/sys_times (Depends-on): Update.
+ * modules/sys_utsname (Depends-on): Update.
+ * modules/sys_wait (Depends-on): Update.
+ * modules/termios (Depends-on): Update.
+ * modules/time (Depends-on): Update.
+ * modules/unistd (Depends-on): Update.
+ * modules/wchar (Depends-on): Update.
+ * modules/wctype-h (Depends-on): Update.
+ * MODULES.html.sh (Support for building libraries and executables):
+ Update.
+
+ Rename module 'unused-parameter' to 'snippet/unused-parameter'.
+ * modules/snippet/unused-parameter: Renamed from
+ modules/unused-parameter.
+ (Files, Makefile.am): Update.
+ * build-aux/snippet/unused-parameter.h: Renamed from
+ build-aux/unused-parameter.h.
+ * modules/selinux-h (Depends-on): Update.
+ * modules/unistr/base (Depends-on): Update.
+ * MODULES.html.sh (Core language properties): Update.
+
+ Rename module 'link-warning' to 'snippet/link-warning'.
+ * modules/snippet/link-warning: Renamed from modules/link-warning.
+ (Files, Makefile.am): Update.
+ * build-aux/snippet/link-warning.h: Renamed from
+ build-aux/link-warning.h.
+ * MODULES.html.sh (Support for building libraries and executables):
+ Update.
+
+ Rename module 'c++defs' to 'snippet/c++defs'.
+ * modules/snippet/c++defs: Renamed from modules/c++defs.
+ (Files, Makefile.am): Update.
+ * build-aux/snippet/c++defs.h: Renamed from build-aux/c++defs.h.
+ * modules/arpa_inet (Depends-on): Update.
+ * modules/ctype (Depends-on): Update.
+ * modules/dirent (Depends-on): Update.
+ * modules/fcntl-h (Depends-on): Update.
+ * modules/glob (Depends-on): Update.
+ * modules/iconv-h (Depends-on): Update.
+ * modules/langinfo (Depends-on): Update.
+ * modules/locale (Depends-on): Update.
+ * modules/math (Depends-on): Update.
+ * modules/netdb (Depends-on): Update.
+ * modules/poll-h (Depends-on): Update.
+ * modules/pty (Depends-on): Update.
+ * modules/search (Depends-on): Update.
+ * modules/signal (Depends-on): Update.
+ * modules/spawn (Depends-on): Update.
+ * modules/stdio (Depends-on): Update.
+ * modules/stdlib (Depends-on): Update.
+ * modules/string (Depends-on): Update.
+ * modules/strings (Depends-on): Update.
+ * modules/sys_ioctl (Depends-on): Update.
+ * modules/sys_select (Depends-on): Update.
+ * modules/sys_socket (Depends-on): Update.
+ * modules/sys_stat (Depends-on): Update.
+ * modules/sys_time (Depends-on): Update.
+ * modules/sys_wait (Depends-on): Update.
+ * modules/termios (Depends-on): Update.
+ * modules/time (Depends-on): Update.
+ * modules/unistd (Depends-on): Update.
+ * modules/wchar (Depends-on): Update.
+ * modules/wctype-h (Depends-on): Update.
+
+ Rename module 'arg-nonnull' to 'snippet/arg-nonnull'.
+ * modules/snippet/arg-nonnull: Renamed from modules/arg-nonnull.
+ (Files, Makefile.am): Update.
+ * build-aux/snippet/arg-nonnull.h: Renamed from build-aux/arg-nonnull.h.
+ * modules/argv-iter (Depends-on): Update.
+ * modules/arpa_inet (Depends-on): Update.
+ * modules/dirent (Depends-on): Update.
+ * modules/fcntl-h (Depends-on): Update.
+ * modules/fnmatch (Depends-on): Update.
+ * modules/getopt-posix (Depends-on): Update.
+ * modules/glob (Depends-on): Update.
+ * modules/iconv-h (Depends-on): Update.
+ * modules/inttypes-incomplete (Depends-on): Update.
+ * modules/locale (Depends-on): Update.
+ * modules/math (Depends-on): Update.
+ * modules/netdb (Depends-on): Update.
+ * modules/search (Depends-on): Update.
+ * modules/signal (Depends-on): Update.
+ * modules/spawn (Depends-on): Update.
+ * modules/stdio (Depends-on): Update.
+ * modules/stdlib (Depends-on): Update.
+ * modules/string (Depends-on): Update.
+ * modules/strings (Depends-on): Update.
+ * modules/sys_socket (Depends-on): Update.
+ * modules/sys_stat (Depends-on): Update.
+ * modules/sys_time (Depends-on): Update.
+ * modules/sys_times (Depends-on): Update.
+ * modules/sys_utsname (Depends-on): Update.
+ * modules/time (Depends-on): Update.
+ * modules/unistd (Depends-on): Update.
+ * modules/wchar (Depends-on): Update.
+ * MODULES.html.sh (Support for building libraries and executables):
+ Update.
+
+2011-07-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improvements on _Noreturn and related modules.
+
+ modules/_Exit-tests: test _Noreturn too
+ * tests/test-_Exit.c (MTA, Charlie): New functions, taken from the
+ old tests/test-stdnoreturn.c. This tests the _Noreturn keyword a bit.
+ (main): Use them.
+
+ stdnoreturn, stdnoreturn-tests: remove modules
+ They're not needed here and a bit premature for use elsewhere. See
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-07/msg00209.html>.
+ * m4/stdnoreturn.m4, modules/stdnoreturn, modules/stdnoreturn-tests:
+ * tests/test-stdnoreturn.c: Remove files.
+ * MODULES.html.sh (_Noreturn <stdnoreturn.h>): Remove section.
+ * lib/openat.h, lib/sigpipe-die.h, lib/xalloc.h, lib/xmemdup0.h:
+ * lib/xstrtol.h: Use _Noreturn rather than including <stdnoreturn.h>
+ and using noreturn.
+ * modules/openat, modules/sigpipe-die, modules/xalloc:
+ * modules/xmemdup0, modules/xstrtol:
+ Remove dependency on stdnoreturn.
+
+ _Noreturn: Ignore __STDC_VERSION__; observe _MSC_VER.
+ * build-aux/_Noreturn.h (_Noreturn): Ignore __STDC_VERSION__.
+ Reparenthesize to avoid GCC warning.
+ Support Microsoft's syntax.
+ * m4/gnulib-common.m4 (gl_COMMON_BODY): Likewise.
+
+ _Noreturn-tests: remove module
+ * modules/_Noreturn-tests: Remove.
+ * modules/stdnoreturn-tests (Files): Remove tests/test-_Noreturn.c.
+ * tests/test-_Noreturn.c: Remove.
+ * tests/test-stdnoreturn.c: Merge from the old
+ tests/test-_Noreturn.c, testing both noreturn and _Noreturn.
+
+2011-07-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ _Noreturn, stdnoreturn, and related modules.
+
+ * top/maint.mk: Adjust to new noreturn support.
+ (gl_extract_significant_defines_): Omit pattern ATTRIBUTE_NORETURN.
+ (def_sym_regex): Do not remove ATTRIBUTE_NORETURN.
+
+ xalloc: use stdnoreturn.h
+ * lib/xalloc.h: Include <stdnoreturn.h>.
+ (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn.
+ * modules/xalloc (Depends-on): Add stdnoreturn.
+
+ xstrtol: use stdnoreturn.h
+ * lib/xstrtol.h: Include <stdnoreturn.h>.
+ (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn.
+ * modules/xstrtol (Depends-on): Add stdnoreturn.
+
+ xmemdup0: use stdnoreturn.h
+ * lib/xmemdup0.h: Include <stdnoreturn.h>.
+ (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn.
+ * modules/xmemdup0 (Depends-on): Add stdnoreturn.
+
+ sigpipe-die: use stdnoreturn.h
+ * lib/sigpipe-die.h: Include <stdnoreturn.h>.
+ (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn.
+ * modules/sigpipe-die (Depends-on): Add stdnoreturn.
+
+ openat: use stdnoreturn.h
+ * lib/openat.h: Include <stdnoreturn.h>.
+ (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn.
+ * modules/openat (Depends-on): Add stdnoreturn.
+
+ * lib/openat-die.c (openat_save_fail): Modernize comment.
+
+ * lib/xalloc-die.c (xalloc_die): Modernize comment.
+
+ * lib/glthread/thread.h: Modernize comment.
+
+ obstack: use _Noreturn
+ * lib/obstack.c (__attribute__): Remove macro.
+ (print_and_abort): Use _Noreturn.
+
+ c-stack: use _Noreturn
+ * lib/c-stack.c (die, overflow_handler, segv_handler):
+ Use _Noreturn rather than __attribute__((noreturn)).
+
+ argmatch-tests, exclude_tests: use _Noreturn
+ * tests/test-argmatch.c, tests/test-exclude.c (_GL_ATTRIBUTE_NORETURN):
+ Remove.
+ (ARGMATCH_DIE_DECL): Use _Noreturn instead.
+
+ stdlib: use _Noreturn
+ * lib/stdlib.in.h (_GL_ATTRIBUTE_NORETURN): Remove.
+ (_Exit): Use _Noreturn rather than _GL_ATTRIBUTE_NORETURN.
+ * modules/stdlib (Depends-on): Add _Noreturn.
+ (stdlib.h): Depend on $(_NORETURN_H), and copy it in.
+
+ stdnoreturn-tests: new module
+ * modules/stdnoreturn-tests, tests/test-stdnoreturn.c: New files.
+
+ stdnoreturn: new module
+ * MODULES.html.sh (Noreturn <stdnoreturn.h>): New section.
+ * m4/stdnoreturn.m4, modules/stdnoreturn: New files.
+
+ _Noreturn-tests: new module
+ * modules/_Noreturn-tests, tests/test-_Noreturn.c: New files.
+
+ _Noreturn: new module
+ * MODULES.html.sh (Support for systems lacking draft ISO C 1X):
+ New section, mentioning it.
+ * build-aux/_Noreturn.h, modules/_Noreturn: New files.
+
+ * m4/gnulib-common.m4 (gl_COMMON_BODY): Add _Noreturn.
+
+2011-07-11 Eric Blake <eblake@redhat.com>
+
+ ffs: new module
+ * modules/ffs: New file.
+ * m4/ffs.m4: Likewise.
+ * lib/ffs.c: Likewise.
+ * m4/strings_h.m4 (gl_HEADER_STRINGS_H_DEFAULTS): Add default.
+ * modules/strings (Makefile.am): Substitute witness.
+ (Depends-on): Add c++defs.
+ * lib/strings.in.h (ffs): Declare.
+ * modules/ffs-tests: New test file.
+ * tests/test-ffs.c: Test new module.
+ * MODULES.html.sh (Integer arithmetic functions): Mention it.
+ * doc/posix-functions/ffs.texi (ffs): Likewise.
+
+ regex: avoid compiler warning
+ * lib/regex.c (includes): Include <strings.h>, for use of
+ strcasecmp in regcomp.c.
+ Reported by Joachim Schmitz.
+
+2011-07-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ stdint: respect system's intmax_t if INTMAX_MAX
+ * lib/stdint.in.h (intmax_t, uintmax_t): If the system defines
+ INTMAX_MAX, assume its intmax_t is OK. Similarly for and
+ uintmax_t. This is for some Mac OS X builds, where intmax_t is
+ long but int64_t is long long, and where we will clash with the
+ system intmax_t if we override it. See
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-07/msg00160.html>.
+ (INTMAX_C, UINTMAX_C): For consistency, respect the system's
+ INTMAX_C if INTMAX_MAX and INTMAX_C are both defined, and
+ similarly for UINTMAX_C.
+
+2011-07-08 Bruno Haible <bruno@clisp.org>
+
+ pthread_sigmask tests: Avoid a compiler warning.
+ * tests/test-pthread_sigmask1.c (main): Complain if system() returns
+ non-zero.
+
+ sigprocmask tests: A better way to avoid a compiler warning.
+ * tests/test-sigprocmask.c: Don't include "ignore-value.h".
+ (main): Complain if system() returns non-zero.
+ * modules/sigprocmask-tests (Depends-on): Remove ignore-value.
+
+2011-07-08 Bruno Haible <bruno@clisp.org>
+
+ pthread_sigmask: Work around IRIX bug.
+ * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Test for the IRIX
+ bug.
+ * lib/pthread_sigmask.c (pthread_sigmask): usleep for some time when
+ there may be unblocked pending signals.
+ * doc/posix-functions/pthread_sigmask.texi: Mention the IRIX bug.
+
+2011-07-08 Bruno Haible <bruno@clisp.org>
+
+ pthread_sigmask: Work around Cygwin bug.
+ * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Test for the Cygwin
+ bug.
+ * lib/pthread_sigmask.c (pthread_sigmask): Fix the return value from
+ the system's pthread_sigmask function.
+ * doc/posix-functions/pthread_sigmask.texi: Mention the Cygwin bug.
+
+2011-07-08 Bruno Haible <bruno@clisp.org>
+
+ pthread_sigmask: Work around bug in single-threaded implementation.
+ * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Test for the
+ FreeBSD, HP-UX, Solaris bug.
+ (gl_PREREQ_PTHREAD_SIGMASK): New macro.
+ * lib/pthread_sigmask.c: Include <stddef.h>.
+ (pthread_sigmask): If HAVE_PTHREAD_SIGMASK, define as a wrapper around
+ the system's pthread_sigmask function.
+ * modules/pthread_sigmask (configure.ac): Invoke
+ gl_PREREQ_PTHREAD_SIGMASK.
+ * doc/posix-functions/pthread_sigmask.texi: Mention bug on FreeBSD,
+ HP-UX, Solaris.
+
+2011-07-08 Eric Blake <eblake@redhat.com>
+
+ test-sigprocmask: avoid compiler warning
+ * modules/sigprocmask-tests (Depends-on): Add ignore-value.
+ * tests/test-sigprocmask.c (main): Use it to silence warning.
+ Reported by Jim Meyering.
+
+ test-snprintf: avoid compiler warning
+ * tests/test-snprintf.c (main): Avoid shadowed declaration.
+ * tests/test-vsnprintf.c (main): Likewise.
+ Reported by Jim Meyering.
+
2011-07-08 Bruno Haible <bruno@clisp.org>
Tests for module 'pthread_sigmask'.