extern-inline: make safe for -Wundef usage
[gnulib.git] / ChangeLog
index 3777fc7..902b129 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,231 @@
+2013-10-18  Eric Blake  <eblake@redhat.com>
+
+       extern-inline: make safe for -Wundef usage
+       Reported by Vladimir 'phcoder' Serbinenko in
+       https://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00078.html
+       * m4/extern-inline.m4 (gl_EXTERN_INLINE): Port to older gcc.
+
+2013-10-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       mkfifo-tests, etc.: allow HP-UX 11.11 bug
+       Problem reported by Daniel Richard G. in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00068.html>.
+       * doc/posix-functions/mkfifo.texi (mkfifo):
+       * doc/posix-functions/mkfifoat.texi (mkfifoat):
+       * doc/posix-functions/mknod.texi (mknod):
+       * doc/posix-functions/mknodat.texi (mknodat):
+       Document the HP-UX 11.11 bug.
+       * tests/test-mkfifo.h (test_mkfifo):
+       Allow the HP-UX 11.11 bug.
+
+2013-10-14  Paul Eggert  <eggert@cs.ucla.edu>
+
+       acl: allow cross-compilation to Gentoo
+       Problem reported by Gabriel Marcano in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00058.html>.
+       * m4/acl.m4 (gl_ACL_GET_FILE): When cross-compiling,
+       test only whether it links.
+
+2013-10-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       mgetgroups: remove dependency on realloc-gnu
+       The dependency violates the comment in realloc-gnu, which
+       says that tests can't depend on realloc-gnu; some tests depend
+       on mgetgroups, so mgetgroups can't depend on realloc-gnu.
+       Problem reported by Daniel Richard G. in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00056.html>.
+       * lib/mgetgroups.c (mgetgroups): Don't call realloc (NULL, 0).
+       * modules/mgetgroups (Depends-on): Depend on realloc-posix,
+       not realloc-gnu.
+
+2013-10-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex-tests: port to HP-UX 11.11
+       Problem reported by Daniel Richard G. in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00052.html>.
+       * modules/regex-tests (test_regex_LDADD): Add LIBTHREAD, LIB_PTHREAD.
+
+2013-10-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       verify: document some 'assume' pitfalls
+       * doc/verify.texi (Compile-time Assertions):
+       Mention that 'assume (E)' can sometimes slow things down.
+       Use CHAR_MAX + 1, not UCHAR_MAX + 1.
+
+2013-10-10  Eric Blake  <eblake@redhat.com>
+
+       strtoumax: fix typo in previous commit.
+       * modules/strtoumax (Depends-on): Fix typo.
+       * modules/strtoimax (Depends-on): Likewise.
+
+2013-10-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       strtoumax: port to Solaris 8
+       This problem was introduced in the recent HP-UX patch.
+       Reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00037.html>.
+       * modules/strtoumax (Depends-on): Test HAVE_STRTOUMAX
+       and REPLACE_STRTOUMAX rather than ac_cv_func_strtoumax.
+
+2013-10-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       strtoimax, strtoumax: port to HP-UX 11.11
+       Problem reported by Daniel Richard G. in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00023.html>.
+       * lib/inttypes.in.h (strtoumax): Replace strtoumax if
+       REPLACE_STRTOUMAX, thus treating it consistently with strtoimax.
+       * m4/inttypes.m4 (gl_INTTYPES_H_DEFAULTS): Add default for
+       REPLACE_STRTOUMAX.
+       * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX):
+       * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX):
+       Replace the function if defined as a macro but not as a function.
+       * modules/inttypes-incomplete (inttypes.h): Substitute
+       REPLACE_STRTOUMAX.
+       * modules/strtoumax (configure.ac): Replace strtoumax if
+       REPLACE_STRTOUMAX.
+
+2013-10-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       strtoimax: port to HP-UX 11.11
+       Problem reported by Daniel Richard G.
+       * lib/strtoimax.c (Strtoimax, Strtol, Strtoll): New macros.
+       (strtoimax, strtol, strtoll) [UNSIGNED]: Remove, since
+       they might clash with inttypes.h.
+
+2013-10-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       New module 'count-trailing-zeros'.
+       * MODULES.html.sh: Mention it.
+       * lib/count-trailing-zeros.c, lib/count-trailing-zeros.h:
+       * m4/count-trailing-zeros.m4, modules/count-trailing-zeros:
+       * modules/count-trailing-zeros-tests:
+       * tests/test-count-trailing-zeros.c:
+       New files.
+
+       count-leading-zeros: port to MSC; support types wider than 64 bits
+       The ideas behind the MSC port are stolen from Emacs.
+       * lib/count-leading-zeros.h:
+       Don't include verify.h: it's no longer needed, as types wider than
+       64 bits are now supported.
+       (COUNT_LEADING_ZEROS): New arg MSC_BUILTIN, for better
+       performance with MSC.  All uses changed.  Do not assume that TYPE
+       has at most 64 bits.
+       (count_leading_zeros_32): Assume 0 < X < 2**32, for speed.
+       All uses changed.  Fold the subtraction from 31 into the table.
+
+       count-one-bits: port to MSC; support types wider than 64 bits
+       The ideas behind the MSC port are stolen from Emacs.
+       * lib/count-one-bits.c (popcount_support) [_MSC_VER]: New variable.
+       * lib/count-one-bits.h: Include limits.h, for CHAR_BIT.
+       Don't include verify.h: it's no longer needed, as types wider than
+       64 bits are now supported.
+       (COUNT_ONE_BITS_GENERIC): New macro.
+       (popcount_supported) [_MSC_VER]: New inline function.
+       (COUNT_ONE_BITS): Use it.  New arg MSC_BUILTIN, for better
+       performance with MSC.  All uses changed.  Do not assume that TYPE
+       has at most 64 bits.
+       * modules/count-one-bits (Depends-on): Do not depend on 'verify'.
+
+2013-10-06  Andrew Borodin  <aborodin@vmail.ru>
+
+       mountlist: fix resource leak with MOUNTED_INTERIX_STATVFS
+       * lib/mountlist.c (read_file_system_list): fix leak of directory
+       streams in case of #ifdef MOUNTED_INTERIX_STATVFS.
+
+2013-10-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tests: improve diagnostic when an assertion fails
+       * tests/macros.h (ASSERT): Report the assertion that failed.
+
+2013-10-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       verify: new macro 'assume'
+       This is taken from Emacs, and should be generally useful.
+       * doc/verify.texi (assume): Document it.
+       * lib/verify.h (assume): New macro.
+       (__has_builtin): Expand to 0 if not defined.
+
+2013-09-26  Eric Blake  <eblake@redhat.com>
+
+       dup2, dup3: work around another cygwin crasher
+       * m4/dup2.m4 (gl_FUNC_DUP2): Expose the bug.
+       * m4/dup3.m4 (gl_FUNC_DUP3): Likewise.
+       * tests/test-dup2.c (main): Likewise.
+       * lib/dup2.c (rpl_dup2): Use setdtablesize to avoid it.
+       * lib/dup3.c (dup3): Likewise.
+       * doc/posix-functions/dup2.texi (dup2): Document it.
+       * doc/glibc-functions/dup3.texi (dup3): Likewise.
+
+       getdtablesize: work around cygwin issue
+       * m4/getdtablesize.m4 (gl_FUNC_GETDTABLESIZE): Detect problem.
+       * modules/getdtablesize (configure.ac): Build replacement.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set up a witness.
+       * modules/unistd (Makefile.am): Expose the witness.
+       * lib/unistd.in.h (getdtablesize): Declare replacement.
+       * lib/getdtablesize.c (rpl_getdtablesize): Work around it.
+       * tests/test-getdtablesize.c (main): Test it.
+       * doc/glibc-functions/getdtablesize.texi (getdtablesize): Document it.
+
+2013-09-25  Mats Erik Andersson  <gnu@gisladisker.se>
+
+       pmccabe2html: escaping of special characters
+       Escape all '<', '>', and '&' in HTML output.
+       * build-aux/pmccabe2html (html_fnc): Call gsub()
+       instead of sub() to capture all '<', '>', and '&'.
+       Neither of '<' and '>' is special in a regexp,
+       so first arguments to gsub() are corrected. Also,
+       in replacement strings, ampersand must be escaped.
+       Finally, '&' must be handled first, then '<' and '>'.
+
+2013-09-24  Eric Blake  <eblake@redhat.com>
+
+       manywarnings: enable nicer gcc warning messages
+       * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Older gcc requires
+       some -f options for optimal warnings.
+
+2013-09-21  Jim Meyering  <meyering@fb.com>
+
+       timespec: use the new TIMESPEC_RESOLUTION in a few more places
+       * lib/timespec-add.c (timespec_add): Also replace 999999999
+       with TIMESPEC_RESOLUTION - 1.
+       * lib/timespec-sub.c (timespec_sub): Likewise.
+
+2013-09-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       warnings: port --enable-gcc-warnings to Solaris Studio 12.3
+       Problem reported by Dagobert Michelsen via Eric Blake in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-09/msg00052.html>.
+       * m4/warnings.m4 (gl_COMPILER_OPTION_IF): Use AC_LINK_IFELSE,
+       not AC_COMPILE_IFELSE.
+
+2013-09-23  Eric Blake  <eblake@redhat.com>
+
+       configmake: support new --runstatedir option
+       * m4/configmake.m4 (gl_CONFIGMAKE_PREP): Substitute runstatedir
+       even if autoconf was too old to provide the command line option.
+       * modules/configmake (Makefile.am): Propagate it to .h file.
+
+2013-09-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       ctype, string: depend on extern-inline
+       This is needed to complete the recent OS X fixes.
+       Also, fix related documentation as suggested by Eric Blake.
+       * doc/posix-functions/isalnum.texi, doc/posix-functions/isalpha.texi:
+       * doc/posix-functions/isascii.texi, doc/posix-functions/iscntrl.texi:
+       * doc/posix-functions/isdigit.texi, doc/posix-functions/isgraph.texi:
+       * doc/posix-functions/islower.texi, doc/posix-functions/isprint.texi:
+       * doc/posix-functions/ispunct.texi, doc/posix-functions/isspace.texi:
+       * doc/posix-functions/isupper.texi, doc/posix-functions/isxdigit.texi:
+       * doc/posix-functions/toascii.texi, doc/posix-functions/tolower.texi:
+       * doc/posix-functions/toupper.texi:
+       List the 'ctype' gnulib module.
+       * doc/posix-functions/strcat.texi, doc/posix-functions/strcpy.texi:
+       * doc/posix-functions/strncpy.texi:
+       List the 'string' gnulib module.
+       * modules/memcpy, modules/memmove, modules/memset (Depends-on):
+       Add string.
+       * modules/ctype, modules/string (Depends-on): Add extern-inline.
+
 2013-09-19  Pádraig Brady  <P@draigBrady.com>
 
        userspec: support optional parameters to parse_user_spec()
        extern inline on Apple only if the particular compile-time
        configuration is known to have the problem.
        (_GL_EXTERN_INLINE_APPLE_BUG): New private macro, to implement this.
-       (_GL_EXTERN_LNLINE_IN_USE): New macro, intended for use by
+       (_GL_EXTERN_INLINE_IN_USE): New macro, intended for use by
        other Gnulib modules.
 
        extern-inline: document fixes for ctype and wctype macros