+2011-10-19 Gary V. Vaughan <gary@gnu.org>
+
+ maint.mk: Respect $(build_aux) in web-manual rule.
+ * top/maint.mk (web-manual): Find gen-announce script in user's
+ $(build_aux) directory instead of hard-coding 'build-aux'.
+
+2011-10-19 Bruno Haible <bruno@clisp.org>
+
+ posix_openpt: Fix compilation error.
+ * lib/posix_openpt.c (posix_openpt): Renamed from posix_openpty.
+ * doc/posix-functions/posix_openpt.texi: Mention ENOENT error code.
+ Mention the openpty module as an alternative.
+
+2011-10-19 Bruno Haible <bruno@clisp.org>
+
+ Support for old NeXTstep 3.3 frexp().
+ * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Check for alarm. Limit the
+ execution time of the test to 5 seconds.
+ Reported by Daniel Richard G. <skunk@iskunk.org>.
+
+2011-10-19 Bruno Haible <bruno@clisp.org>
+
+ Support for old NeXTstep 3.3 sed.
+ * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER_ONE): In the sed address
+ part, use /.../, not \|...|. Escape periods in the header file name.
+ * m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): Likewise.
+ Reported by Daniel Richard G. <skunk@iskunk.org>.
+
+2011-10-18 Daniel Richard G. <skunk@iskunk.org> (tiny change)
+
+ Support for old NeXTstep 3.3 gcc.
+ * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Write
+ 'defined __STRICT_ANSI__', not '__STRICT_ANSI__'.
+ * lib/math.in.h (_GL_NUM_UINT_WORDS etc.): Likewise.
+ * lib/spawn.in.h (_Restrict_arr_): Likewise.
+ * lib/regex.h (_Restrict_arr_): Likewise.
+ * lib/regex_internal.h (re_token_t): Likewise.
+ * lib/regexec.c (check_node_accept_bytes): Likewise.
+ * tests/test-printf-posix.c (func1, func2, func3, func4): Likewise.
+
+2011-10-18 Eric Blake <eblake@redhat.com>
+
+ posix_openpt: new module
+ * modules/posix_openpt: New module.
+ * m4/posix_openpt.m4: New file.
+ * lib/posix_openpt.c: Likewise.
+ * m4/stdlib_h.m4 (gl_STDLIB_H): Check for decl.
+ (gl_STDLIB_H_DEFAULTS): Set defaults.
+ * modules/stdlib (Makefile.am): Substitute macros.
+ * lib/stdlib.in.h (posix_openpt): Declare.
+ * MODULES.html.sh (systems lacking POSIX:2008): Document it.
+ * doc/posix-functions/posix_openpt.texi (posix_openpt): Likewise.
+ * modules/posix_openpt-tests: New test module.
+ * tests/test-posix_openpt.c: New test.
+
+2011-10-15 Bruno Haible <bruno@clisp.org>
+
+ xstrtoll: Fix compilation failure.
+ * lib/xstrtol.c (ULLONG_MAX, LLONG_MAX, LLONG_MIN): New macros, taken
+ from lib/strtol.c.
+ * doc/posix-headers/limits.texi: Mention missing numerical limits on
+ some platforms.
+ Reported by Tom G. Christensen <tgc@jupiterrise.com>.
+
+2011-10-15 Bruno Haible <bruno@clisp.org>
+
+ vasnprintf: Optimize bit search operation.
+ * lib/vasnprintf.c (divide): Use optimizations from integer_length.c.
+ * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Require
+ gl_DOUBLE_EXPONENT_LOCATION.
+ * modules/vasnprintf (Files): Add m4/exponentd.m4.
+ * modules/unistdio/u8-vasnprintf (Files): Likewise.
+ * modules/unistdio/u8-u8-vasnprintf (Files): Likewise.
+ * modules/unistdio/u16-vasnprintf (Files): Likewise.
+ * modules/unistdio/u16-u16-vasnprintf (Files): Likewise.
+ * modules/unistdio/u32-vasnprintf (Files): Likewise.
+ * modules/unistdio/u32-u32-vasnprintf (Files): Likewise.
+ * modules/unistdio/ulc-vasnprintf (Files): Likewise.
+ * m4/isnand.m4 (gl_PREREQ_ISNAND): Use AC_REQUIRE.
+
+2011-10-15 Bruno Haible <bruno@clisp.org>
+
+ vasnprintf: Fix comments.
+ * lib/vasnprintf.c (decode_long_double, decode_double): Fix comments.
+
+2011-10-14 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'integer_length_ll'.
+ * modules/integer_length_ll-tests: New file.
+ * tests/test-integer_length_ll.c: New file.
+
+ New module 'integer_length_ll'.
+ * lib/integer_length_ll.c: New file.
+ * modules/integer_length_ll: New file.
+
+2011-10-14 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'integer_length_l'.
+ * modules/integer_length_l-tests: New file.
+ * tests/test-integer_length_l.c: New file.
+
+ New module 'integer_length_l'.
+ * lib/integer_length_l.c: New file.
+ * modules/integer_length_l: New file.
+
+2011-10-14 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'integer_length'.
+ * modules/integer_length-tests: New file.
+ * tests/test-integer_length.c: New file.
+
+ New module 'integer_length'.
+ * lib/integer_length.h: New file.
+ * lib/integer_length.c: New file.
+ * modules/integer_length: New file.
+
+2011-10-14 Daniel Richard G. <skunk@iskunk.org> (tiny change)
+
+ popen: Fix dependency conditions.
+ * modules/popen (Depends-on, configure.ac): Fix shell syntax error.
+
+2011-10-14 Daniel Richard G. <skunk@iskunk.org> (tiny change)
+
+ perror: Fix autoconf test.
+ * m4/perror.m4 (gl_FUNC_PERROR): In the test program, include
+ <stdlib.h> and <string.h>.
+
+2011-10-14 Bruno Haible <bruno@clisp.org>
+
+ ffsl: Optimize on 64-bit platforms.
+ * lib/ffsl.h (FUNC): Omit a test from the last loop round. Do loop
+ unrolling.
+
+2011-10-13 Bruno Haible <bruno@clisp.org>
+
+ ffsl: Optimize on 32-bit platforms.
+ * lib/ffsl.h (FUNC): If TYPE has the same representation as 'int', just
+ use ffs() without a loop.
+
+ ffsl, ffsll: Optimize for GCC.
+ * lib/ffsl.h (FUNC): Use GCC_BUILTIN if defined.
+ * lib/ffsl.c (GCC_BUILTIN): New macro.
+ * lib/ffsll.c (GCC_BUILTIN): Likewise.
+
+2011-10-13 Bruno Haible <bruno@clisp.org>
+
+ ffs, bcopy, memset: Support symbol renaming via config.h.
+ * lib/ffs.c: Include <config.h>.
+ * lib/bcopy.c: Likewise.
+ * lib/memset.c: Likewise.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ atanl: Simplify for platforms where 'long double' == 'double'.
+ * lib/atanl.c (atanl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+ alternative implementation.
+ * m4/atanl.m4 (gl_FUNC_ATANL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine ATANL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/atanl (Depends-on): Add atan. Update conditions.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ acosl: Simplify for platforms where 'long double' == 'double'.
+ * lib/acosl.c (acosl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+ alternative implementation.
+ * m4/acosl.m4 (gl_FUNC_ACOSL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine ACOSL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/acosl (Depends-on): Add acos. Update conditions.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ asinl: Simplify for platforms where 'long double' == 'double'.
+ * lib/asinl.c (asinl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+ alternative implementation.
+ * m4/asinl.m4 (gl_FUNC_ASINL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine ASINL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/asinl (Depends-on): Add asin. Update conditions.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ tanl: Simplify for platforms where 'long double' == 'double'.
+ * lib/tanl.c (tanl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+ implementation.
+ * m4/tanl.m4 (gl_FUNC_TANL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine TANL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/tanl (Depends-on): Add tan. Update conditions.
+ (configure.ac): Don't compile trigl.c if
+ HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ cosl: Simplify for platforms where 'long double' == 'double'.
+ * lib/cosl.c (cosl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+ implementation.
+ * m4/cosl.m4 (gl_FUNC_COSL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine COSL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/cosl (Depends-on): Add cos. Update conditions.
+ (configure.ac): Don't compile sincosl.c and trigl.c if
+ HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ sinl: Simplify for platforms where 'long double' == 'double'.
+ * lib/sinl.c (sinl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+ implementation.
+ * m4/sinl.m4 (gl_FUNC_SINL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine SINL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/sinl (Depends-on): Add sin. Update conditions.
+ (configure.ac): Don't compile sincosl.c and trigl.c if
+ HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ logl: Simplify for platforms where 'long double' == 'double'.
+ * lib/logl.c (logl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+ implementation.
+ * m4/logl.m4 (gl_FUNC_LOGL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine LOGL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/logl (Depends-on): Add log. Update conditions.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ expl: Simplify for platforms where 'long double' == 'double'.
+ * lib/expl.c (expl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New alternative
+ implementation.
+ * m4/expl.m4 (gl_FUNC_EXPL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine EXPL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/expl (Depends-on): Add exp. Update conditions.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ sqrtl: Simplify for platforms where 'long double' == 'double'.
+ * lib/sqrtl.c (sqrtl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+ alternative implementation.
+ * m4/sqrtl.m4 (gl_FUNC_SQRTL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine SQRTL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/sqrtl (Depends-on): Update conditions.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ ldexpl: Simplify for platforms where 'long double' == 'double'.
+ * lib/ldexpl.c (ldexpl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+ alternative implementation.
+ * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine LDEXPL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/ldexpl (Depends-on): Add ldexp. Update conditions.
+
+2011-10-10 Tom G. Christensen <tgc@jupiterrise.com> (tiny change)
+
+ ffsll: set correct witness
+ * modules/ffsll (configure.ac): Fix typo.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ printf-frexpl: Simplify for platforms where 'long double' == 'double'.
+ * lib/printf-frexpl.c: Include <config.h>.
+ (printf_frexpl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New function.
+ * lib/printf-frexp.c [!USE_LONG_DOUBLE]: Don't include <config.h> a
+ second time.
+ * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Require
+ gl_LONG_DOUBLE_VS_DOUBLE.
+ * modules/printf-frexpl (Depends-on): Add printf-frexp. Update
+ conditions.
+
+2011-10-10 Bruno Haible <bruno@clisp.org>
+
+ frexpl: Simplify for platforms where 'long double' == 'double'.
+ * lib/frexpl.c: Include <config.h>.
+ (frexpl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New function.
+ * lib/frexp.c [!USE_LONG_DOUBLE]: Don't include <config.h> a second
+ time.
+ * m4/frexpl.m4 (gl_FUNC_FREXPL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine FREXPL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ (gl_FUNC_FREXPL_NO_LIBM): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ * modules/frexpl (Depends-on): Add frexp. Update conditions.
+ * modules/frexpl-nolibm (Depends-on): Add frexp-nolibm. Update
+ conditions.
+
+2011-10-10 Jim Meyering <meyering@redhat.com>
+
+ test-renameat: don't leave behind a temporary file
+ * tests/test-renameat.c (main): Don't forget to remove a temporary file.
+ ERROR: files left in build directory after distclean:
+ ./gltests/test-renameat.too
+ make[1]: *** [distcleancheck] Error 1
+ Reported by Tom G. Christensen.
+
2011-10-09 Bruno Haible <bruno@clisp.org>
+ rint: Determine RINT_LIBM correctly on AIX 7.
+ * m4/mathfunc.m4 (gl_MATHFUNC): Try to invoke the function also
+ directly, not only through a function pointer. Also accept an optional
+ 4th argument with extra code.
+ * m4/rint.m4 (gl_FUNC_RINT): Pass an extra code that gets turned into a
+ rintf() call by gcc when optimizing.
+
+ mathfunc.m4: Refactor.
+ * m4/mathfunc.m4 (gl_MATHFUNC): Assign the argument list to a temporary
+ m4 variable.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ rintl: Simplify for platforms where 'long double' == 'double'.
+ * lib/rintl.c: Include <config.h>.
+ (rintl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New function.
+ * lib/rint.c [!USE_LONG_DOUBLE]: Don't include <config.h> a second
+ time.
+ * m4/rintl.m4 (gl_FUNC_RINTL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine RINTL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/rintl (Depends-on): Add rint. Update conditions.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ roundl: Simplify for platforms where 'long double' == 'double'.
+ * lib/roundl.c: Include <config.h>.
+ (roundl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New function.
+ * lib/round.c [!USE_LONG_DOUBLE]: Don't include <config.h> a second
+ time.
+ * m4/roundl.m4 (gl_FUNC_ROUNDL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine ROUNDL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/roundl (Depends-on): Add round. Update conditions.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ truncl: Simplify for platforms where 'long double' == 'double'.
+ * lib/truncl.c: Include <config.h>.
+ (truncl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New function.
+ * lib/trunc.c [!USE_LONG_DOUBLE]: Don't include <config.h> a second
+ time.
+ * m4/truncl.m4 (gl_FUNC_TRUNCL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine TRUNCL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/truncl (Depends-on): Add trunc. Update conditions.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ ceill: Simplify for platforms where 'long double' == 'double'.
+ * lib/ceill.c: Include <config.h>.
+ (ceill) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New function.
+ * lib/ceil.c [!USE_LONG_DOUBLE]: Don't include <config.h> a second
+ time.
+ * m4/ceill.m4 (gl_FUNC_CEILL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine CEILL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/ceill (Depends-on): Add ceil. Update conditions.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ floorl: Simplify for platforms where 'long double' == 'double'.
+ * lib/floorl.c: Include <config.h>.
+ (floorl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New function.
+ * lib/floor.c [!USE_LONG_DOUBLE]: Don't include <config.h> a second
+ time.
+ * m4/floorl.m4 (gl_FUNC_FLOORL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine FLOORL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/floorl (Depends-on): Add floor. Update conditions.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ rint: Fix ordering constraints.
+ * m4/rint.m4 (gl_FUNC_RINT): Require gl_MATH_H_DEFAULTS.
+ * m4/rintf.m4 (gl_FUNC_RINTF): Likewise.
+ * m4/rintl.m4 (gl_FUNC_RINTL): Likewise.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ copysignl: Simplify for platforms where 'long double' == 'double'.
+ * lib/copysignl.c (copysignl) [HAVE_SAME_LONG_DOUBLE_AS_DOUBLE]: New
+ alternative.
+ * m4/copysignl.m4 (gl_FUNC_COPYSIGNL): Require gl_LONG_DOUBLE_VS_DOUBLE.
+ Determine COPYSIGNL_LIBM according to HAVE_SAME_LONG_DOUBLE_AS_DOUBLE.
+ * modules/copysignl (Depends-on): Add copysign. Update conditions.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'rintl'.
+ * modules/rintl-tests: New file.
+ * tests/test-rintl.c: New file.
+
+ New module 'rintl'.
+ * lib/math.in.h (rintl): New declaration.
+ * lib/rintl.c: New file.
+ * m4/rintl.m4: New file.
+ * m4/math_h.m4 (gl_MATH_H): Test whether rintl is declared.
+ (gl_MATH_H_DEFAULTS): Initialize GNULIB_RINTL, HAVE_RINTL.
+ * modules/math (Makefile.am): Substitute GNULIB_RINTL, HAVE_RINTL.
+ * modules/rintl: New file.
+ * tests/test-math-c++.cc: Check the declaration of rintl.
+ * modules/math-c++-tests (Makefile.am): Link test-math-c++ against
+ $(RINTL_LIBM). Needed on IRIX 6.5 with cc.
+ * doc/posix-functions/rintl.texi: Mention the new module.
+
+2011-10-09 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'rintf'.
+ * modules/rintf-tests: New file.
+ * tests/test-rintf.c: New file.
+
New module 'rintf'.
* lib/math.in.h (rintf): New declaration.
* lib/rintf.c: New file.