doc: Document NonStop portability issues.
[gnulib.git] / ChangeLog
index d7a62cd..6dbe404 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,319 @@
+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.