gnulib.git
12 years agoNew module 'ilogb'.
Bruno Haible [Tue, 3 Apr 2012 16:59:33 +0000 (18:59 +0200)]
New module 'ilogb'.

* lib/math.in.h (ilogb): New declaration.
* lib/ilogb.c: New file.
* m4/ilogb.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether ilogb is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_ILOGB, HAVE_ILOGB,
REPLACE_ILOGB.
* modules/math (Makefile.am): Substitute GNULIB_ILOGB, HAVE_ILOGB,
REPLACE_ILOGB.
* modules/ilogb: New file.
* tests/test-math-c++.cc: Check the declaration of ilogb.
* doc/posix-functions/ilogb.texi: Mention the new module.

12 years agomath: Provide FP_ILOGB0 and FP_ILOGBNAN.
Bruno Haible [Tue, 3 Apr 2012 15:04:46 +0000 (17:04 +0200)]
math: Provide FP_ILOGB0 and FP_ILOGBNAN.

* lib/math.in.h (FP_ILOGB0, FP_ILOGBNAN): Define fallback.
* tests/test-math.c: Check that FP_ILOGB0, FP_ILOGBNAN are defined.
(main): Check their values.
* doc/posix-headers/math.texi: Mention the FP_ILOGB0, FP_ILOGBNAN
problem.

12 years agoTests for module 'logbl-ieee'.
Bruno Haible [Tue, 3 Apr 2012 12:05:45 +0000 (14:05 +0200)]
Tests for module 'logbl-ieee'.

* modules/logbl-ieee-tests: New file.
* tests/test-logbl-ieee.c: New file.

12 years agoNew module 'logbl-ieee'.
Bruno Haible [Tue, 3 Apr 2012 12:05:35 +0000 (14:05 +0200)]
New module 'logbl-ieee'.

* modules/logbl-ieee: New file.

12 years agoTests for module 'logb-ieee'.
Bruno Haible [Tue, 3 Apr 2012 12:05:23 +0000 (14:05 +0200)]
Tests for module 'logb-ieee'.

* modules/logb-ieee-tests: New file.
* tests/test-logb-ieee.c: New file.

12 years agoNew module 'logb-ieee'.
Bruno Haible [Tue, 3 Apr 2012 12:05:13 +0000 (14:05 +0200)]
New module 'logb-ieee'.

* modules/logb-ieee: New file.

12 years agoTests for module 'logbf-ieee'.
Bruno Haible [Tue, 3 Apr 2012 12:05:01 +0000 (14:05 +0200)]
Tests for module 'logbf-ieee'.

* modules/logbf-ieee-tests: New file.
* tests/test-logbf-ieee.c: New file.
* tests/test-logb-ieee.h: New file.

12 years agoNew module 'logbf-ieee'.
Bruno Haible [Tue, 3 Apr 2012 12:04:49 +0000 (14:04 +0200)]
New module 'logbf-ieee'.

* modules/logbf-ieee: New file.

12 years agoTests for module 'logbl'.
Bruno Haible [Tue, 3 Apr 2012 10:54:07 +0000 (12:54 +0200)]
Tests for module 'logbl'.

* modules/logbl-tests: New file.
* tests/test-logbl.c: New file.

12 years agoNew module 'logbl'.
Bruno Haible [Tue, 3 Apr 2012 10:53:31 +0000 (12:53 +0200)]
New module 'logbl'.

* lib/math.in.h (logbl): New declaration.
* lib/logbl.c: New file.
* m4/logbl.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether logbl is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOGBL, HAVE_LOGBL,
REPLACE_LOGBL.
* modules/math (Makefile.am): Substitute GNULIB_LOGBL, HAVE_LOGBL,
REPLACE_LOGBL.
* modules/logbl: New file.
* tests/test-math-c++.cc: Check the declaration of logbl.
* doc/posix-functions/logbl.texi: Mention the new module.

12 years agoTests for module 'logbf'.
Bruno Haible [Tue, 3 Apr 2012 02:45:53 +0000 (04:45 +0200)]
Tests for module 'logbf'.

* modules/logbf-tests: New file.
* tests/test-logbf.c: New file.

12 years agoNew module 'logbf'.
Bruno Haible [Tue, 3 Apr 2012 02:44:59 +0000 (04:44 +0200)]
New module 'logbf'.

* lib/math.in.h (logbf): New declaration.
* lib/logbf.c: New file.
* m4/logbf.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether logbf is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOGBF, HAVE_LOGBF,
REPLACE_LOGBF.
* modules/math (Makefile.am): Substitute GNULIB_LOGBF, HAVE_LOGBF,
REPLACE_LOGBF.
* modules/logbf: New file.
* tests/test-math-c++.cc: Check the declaration of logbf.
* doc/posix-functions/logbf.texi: Mention the new module.

12 years agologb tests: More tests.
Bruno Haible [Tue, 3 Apr 2012 00:57:26 +0000 (02:57 +0200)]
logb tests: More tests.

* tests/test-logb.h: New file, based on tests/test-logb.c and
tests/test-frexp.h.
* tests/test-logb.c: Include minus-zero.h, test-logb.h.
(main): Just invoke test_function.
* modules/logb-tests (Files): Add tests/test-logb.h,
tests/minus-zero.h, tests/randomd.c.
(Makefile.am): Add randomd.c to test_logb_SOURCES.

12 years agologb: Provide replacement and workarounds.
Bruno Haible [Tue, 3 Apr 2012 00:51:42 +0000 (02:51 +0200)]
logb: Provide replacement and workarounds.

* lib/math.in.h (logb): Ensure declaration. Replace if REPLACE_LOGB
is 1.
* lib/logb.c: New file.
* m4/logb.m4 (gl_FUNC_LOGB_WORKS): New macro.
(gl_FUNC_LOGB): Invoke it. Set HAVE_LOGB, REPLACE_LOGB.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOGB.
* modules/math (Makefile.am): Substitute REPLACE_LOGB.
* modules/logb (Files): Add lib/logb.c.
(Depends-on): Add isfinite, frexp, isnand.
(configure.ac): Compile the replacement code logb.c if needed.
* tests/test-math-c++.cc: Check the declaration of logb.
* doc/posix-functions/logb.texi: Mention the replacement and the bug
with subnormal numbers.

12 years agolog10* tests: Speed up.
Bruno Haible [Tue, 3 Apr 2012 01:04:33 +0000 (03:04 +0200)]
log10* tests: Speed up.

* tests/test-log10.h (test_function): Reduce amount of random numbers
to test.

12 years agologf-ieee: Fix test whether logf works.
Bruno Haible [Sun, 1 Apr 2012 17:31:01 +0000 (19:31 +0200)]
logf-ieee: Fix test whether logf works.

* m4/logf.m4 (gl_FUNC_LOGF): Fix typo in test program.

12 years agolog10l: Work around log10l-ieee test failure on IRIX 6.5.
Bruno Haible [Sun, 1 Apr 2012 17:29:21 +0000 (19:29 +0200)]
log10l: Work around log10l-ieee test failure on IRIX 6.5.

* lib/log10l.c: Include <float.h>
(log10l): On IRIX, normalize the +Infinity value.
* modules/log10l (Depends-on): Add 'float'.
* doc/posix-functions/log10l.texi: Mention the IRIX problem with
+Infinity.

12 years agolog10f-ieee: Work around test failure on NetBSD 5.1.
Bruno Haible [Sun, 1 Apr 2012 15:56:33 +0000 (17:56 +0200)]
log10f-ieee: Work around test failure on NetBSD 5.1.

* m4/log10f-ieee.m4: New file.
* m4/log10f.m4 (gl_FUNC_LOG10F): If gl_FUNC_LOG10F_IEEE is present,
test whether log10f works with a negative argument. Replace it if not.
* lib/log10f.c (log10f): For negative arguments, return NaN.
* modules/log10f-ieee (Files): Add m4/log10f-ieee.m4.
(configure.ac): Invoke gl_FUNC_LOG10F_IEEE.
* doc/posix-functions/log10f.texi: Mention the log10f-ieee module.

12 years agolog10f-ieee: Work around test failure on Solaris 9.
Bruno Haible [Sun, 1 Apr 2012 15:40:32 +0000 (17:40 +0200)]
log10f-ieee: Work around test failure on Solaris 9.

* modules/log10f-ieee (Depends-on): Add log10-ieee.
(configure.ac): Require gl_FUNC_LOG10F.

12 years agolog10-ieee: Work around test failure on NetBSD 5.1 and Solaris 11.
Bruno Haible [Sun, 1 Apr 2012 15:10:01 +0000 (17:10 +0200)]
log10-ieee: Work around test failure on NetBSD 5.1 and Solaris 11.

* m4/log10-ieee.m4: New file.
* m4/log10.m4 (gl_FUNC_LOG10): If gl_FUNC_LOG10_IEEE is present, test
whether log10 works with a negative argument. Replace it if not.
* lib/log10.c (log10): For negative arguments, return NaN.
* modules/log10-ieee (Files): Add m4/log10-ieee.m4.
(configure.ac): Invoke gl_FUNC_LOG10_IEEE.
* doc/posix-functions/log10.texi: Mention the log10-ieee module.

12 years agoTests for module 'log10l-ieee'.
Bruno Haible [Sun, 1 Apr 2012 15:00:56 +0000 (17:00 +0200)]
Tests for module 'log10l-ieee'.

* modules/log10l-ieee-tests: New file.
* tests/test-log10l-ieee.c: New file.

12 years agoNew module 'log10l-ieee'.
Bruno Haible [Sun, 1 Apr 2012 15:00:40 +0000 (17:00 +0200)]
New module 'log10l-ieee'.

* modules/log10l-ieee: New file.

12 years agoTests for module 'log10-ieee'.
Bruno Haible [Sun, 1 Apr 2012 15:00:26 +0000 (17:00 +0200)]
Tests for module 'log10-ieee'.

* modules/log10-ieee-tests: New file.
* tests/test-log10-ieee.c: New file.

12 years agoNew module 'log10-ieee'.
Bruno Haible [Sun, 1 Apr 2012 15:00:11 +0000 (17:00 +0200)]
New module 'log10-ieee'.

* modules/log10-ieee: New file.

12 years agoTests for module 'log10f-ieee'.
Bruno Haible [Sun, 1 Apr 2012 14:59:53 +0000 (16:59 +0200)]
Tests for module 'log10f-ieee'.

* modules/log10f-ieee-tests: New file.
* tests/test-log10f-ieee.c: New file.
* tests/test-log10-ieee.h: New file.

12 years agoNew module 'log10f-ieee'.
Bruno Haible [Sun, 1 Apr 2012 14:58:44 +0000 (16:58 +0200)]
New module 'log10f-ieee'.

* modules/log10f-ieee: New file.

12 years agolog10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.
Bruno Haible [Sun, 1 Apr 2012 12:41:57 +0000 (14:41 +0200)]
log10l: Work around AIX 5.1, IRIX 6.5, OSF/1 5.1 bug.

* lib/math.in.h (log10l): Override if REPLACE_LOG10L is 1.
* lib/log10l.c (log10l): If log10l exists, use it and provide just the
workaround.
* m4/log10l.m4 (gl_FUNC_LOG10L_WORKS): New macro.
(gl_FUNC_LOG10L): Invoke it. Set REPLACE_LOG10L.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG10L.
* modules/math (Makefile.am): Substitute REPLACE_LOG10L.
* modules/log10l (configure.ac): Consider REPLACE_LOG10L.
(Depends-on): Update conditions.
* doc/posix-functions/log10l.texi: Mention the MSVC9, AIX 5.1,
IRIX 6.5, OSF/1 5.1 problems.

12 years agolog10f: Work around OSF/1 5.1 bug.
Bruno Haible [Sun, 1 Apr 2012 12:29:37 +0000 (14:29 +0200)]
log10f: Work around OSF/1 5.1 bug.

* lib/math.in.h (log10f): Override if REPLACE_LOG10F is 1.
* lib/log10f.c (log10f): If logf exists, use it and provide just the
workaround.
* m4/log10f.m4 (gl_FUNC_LOG10F_WORKS): New macro.
(gl_FUNC_LOG10F): Invoke it. Set REPLACE_LOG10F.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG10F.
* modules/math (Makefile.am): Substitute REPLACE_LOG10F.
* modules/log10f (configure.ac): Consider REPLACE_LOG10F.
(Depends-on): Update conditions.
* doc/posix-functions/log10f.texi: Mention the OSF/1 5.1 problem.

12 years agolog10: Work around OSF/1 5.1 bug.
Bruno Haible [Sun, 1 Apr 2012 11:19:41 +0000 (13:19 +0200)]
log10: Work around OSF/1 5.1 bug.

* lib/math.in.h (log10): New declaration.
* lib/log10.c: New file.
* m4/log10.m4 (gl_FUNC_LOG10_WORKS): New macro.
(gl_FUNC_LOG10): Invoke it. Set REPLACE_LOG10.
* m4/math_h.m4 (gl_MATH_H): Test whether log10 is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG10, REPLACE_LOG10.
* modules/math (Makefile.am): Substitute GNULIB_LOG10, REPLACE_LOG10.
* modules/log10 (Files): Add lib/log10.c.
(Depends-on): Add math.
(configure.ac): If REPLACE_LOG10 is 1, compile an override.
* tests/test-math-c++.cc: Check the declaration of log10.
* doc/posix-functions/log10.texi: Mention the OSF/1 5.1 problem.

12 years agolog10l tests: More tests.
Bruno Haible [Sat, 31 Mar 2012 20:02:19 +0000 (22:02 +0200)]
log10l tests: More tests.

* modules/log10l-tests (Files): Add tests/test-log10l.h,
tests/minus-zero.h, tests/randoml.c.
(Makefile.am): Add randoml.c to test_log10l_SOURCES.
* tests/test-log10l.c: Include <float.h>, minus-zero.h, test-log10l.h.
(main): Invoke test_function.

12 years agolog10f tests: More tests.
Bruno Haible [Sat, 31 Mar 2012 19:41:32 +0000 (21:41 +0200)]
log10f tests: More tests.

* modules/log10f-tests (Files): Add tests/test-log10.h,
tests/minus-zero.h, tests/randomf.c.
(Makefile.am): Add randomf.c to test_log10f_SOURCES.
* tests/test-log10f.c: Include <float.h>, minus-zero.h, test-log10.h.
(main): Invoke test_function.

12 years agolog10 tests: More tests.
Bruno Haible [Sat, 31 Mar 2012 18:38:09 +0000 (20:38 +0200)]
log10 tests: More tests.

* tests/test-log10.h: New file.
* modules/log10-tests (Files): Add tests/test-log10.h,
tests/minus-zero.h, tests/randomd.c.
(Makefile.am): Add randomd.c to test_log10_SOURCES.
* tests/test-log10.c: Include <float.h>, minus-zero.h, test-log10.h.
(main): Invoke test_function.

12 years agoFix typo in ChangeLog entry.
Bruno Haible [Sun, 1 Apr 2012 12:42:46 +0000 (14:42 +0200)]
Fix typo in ChangeLog entry.

12 years agofflush: Fix syntax error.
Simon Josefsson [Sat, 31 Mar 2012 07:56:55 +0000 (09:56 +0200)]
fflush: Fix syntax error.

* lib/fflush.c: Include unused-parameter.h, needed for
_GL_UNUSED_PARAMETER.
* modules/fflush (Depends-on): Add snippet/unused-parameter.

12 years agoregex: pacify GCC when compiling GRUB
Paul Eggert [Fri, 30 Mar 2012 22:24:06 +0000 (15:24 -0700)]
regex: pacify GCC when compiling GRUB

* lib/regcomp.c (init_dfa): Make a pointer 'const', to avoid
a diagnostic.  Reported by Vladimir Serbinenko in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-03/msg00163.html>.

12 years agoupdate from texinfo
Karl Berry [Fri, 30 Mar 2012 18:16:17 +0000 (11:16 -0700)]
update from texinfo

12 years agowarnings.m4: fix errors.
Akim Demaille [Fri, 30 Mar 2012 07:32:28 +0000 (09:32 +0200)]
warnings.m4: fix errors.

* m4/warnings.m4 (gl_WARN_ADD): Don't change CPPFLAGS,
but the compiler flags.
Reported by Bruno Haible.

12 years agostdio: don't assume gets any more
Eric Blake [Thu, 29 Mar 2012 19:30:41 +0000 (13:30 -0600)]
stdio: don't assume gets any more

Gnulib intentionally does not have a gets module, and now that C11
and glibc have dropped it, we should be more proactive about warning
any user on a platform that still has a declaration of this dangerous
interface.

* m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets
support.
* modules/stdio (Makefile.am): Likewise.
* lib/stdio-read.c (gets): Likewise.
* tests/test-stdio-c++.cc: Likewise.
* m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment.
* lib/stdio.in.h (gets): Make warning occur in more places.
* doc/posix-functions/gets.texi (gets): Update documentation.
Reported by Christer Solskogen.

Signed-off-by: Eric Blake <eblake@redhat.com>
12 years agomaint.mk: fix syntax checks without exclusions
Eric Blake [Fri, 30 Mar 2012 02:47:55 +0000 (20:47 -0600)]
maint.mk: fix syntax checks without exclusions

Commit 727075d0 skipped per-line exclusions if ${exclude} is left
undefined, but was immediately broken by commit 44de969c which
always initialized the variable to the empty string.

* top/maint.mk (_sc_search_regexp): Allow for empty variable.
Reported by Daniel P. Berrange.

Signed-off-by: Eric Blake <eblake@redhat.com>
12 years agostrerror_r: avoid compiler warning
Eric Blake [Thu, 29 Mar 2012 23:02:43 +0000 (17:02 -0600)]
strerror_r: avoid compiler warning

Nested declarations are easy to avoid, and doing so avoids at least
libvirt's choice of compiler warnings.

* lib/strerror_r.c (strerror_r): Hoist extern declaration to top
level.

Signed-off-by: Eric Blake <eblake@redhat.com>
12 years agofflush: avoid compiler warning
Eric Blake [Thu, 29 Mar 2012 22:57:55 +0000 (16:57 -0600)]
fflush: avoid compiler warning

Compiling under glibc produced warnings.

* lib/fflush.c (update_fpos_cache): Mark variables that are
potentially unused.

Signed-off-by: Eric Blake <eblake@redhat.com>
12 years agowarnings.m4: check the compiler, not the preprocessor
Akim Demaille [Thu, 29 Mar 2012 13:29:37 +0000 (15:29 +0200)]
warnings.m4: check the compiler, not the preprocessor

* m4/warnings.m4 (gl_WARN_ADD): Use the compiler, not the
preprocessor.
Depend on the current AC_LANG for the cache variables.

12 years agoautoupdate
Karl Berry [Wed, 28 Mar 2012 15:11:25 +0000 (08:11 -0700)]
autoupdate

12 years agoTests for module 'localeconv'.
Bruno Haible [Sun, 25 Mar 2012 13:20:31 +0000 (15:20 +0200)]
Tests for module 'localeconv'.

* modules/localeconv-tests: New file.
* tests/test-localeconv.c: New file.

12 years agoNew module 'localeconv'.
Bruno Haible [Sun, 25 Mar 2012 13:19:45 +0000 (15:19 +0200)]
New module 'localeconv'.

* lib/locale.in.h (localeconv): New declaration.
* lib/localeconv.c: New file.
* m4/localeconv.m4: New file.
* m4/locale_h.m4 (gl_LOCALE_H_DEFAULTS): Initialize GNULIB_LOCALECONV,
REPLACE_LOCALECONV.
* modules/locale (Makefile.am): Substitute GNULIB_LOCALECONV,
REPLACE_LOCALECONV.
* modules/localeconv: New file.
* modules/nl_langinfo (Depends-on): Add localeconv.
* modules/human (Depends-on): Likewise.
* doc/posix-functions/localeconv.texi: Mention the new module.

12 years agolocale: Provide a complete 'struct lconv'.
Bruno Haible [Sun, 25 Mar 2012 11:56:33 +0000 (13:56 +0200)]
locale: Provide a complete 'struct lconv'.

* m4/locale_h.m4 (gl_LOCALE_H): Set REPLACE_STRUCT_LCONV to 1 if
'struct lconv' does not contain int_p_cs_precedes.
* tests/test-locale.c (main): Check that 'struct lconv' is complete.
* doc/posix-headers/locale.texi: Update.

12 years agolocale: Provide a complete 'struct lconv' on Solaris 10, 11.
Bruno Haible [Sun, 25 Mar 2012 11:45:45 +0000 (13:45 +0200)]
locale: Provide a complete 'struct lconv' on Solaris 10, 11.

* m4/locale_h.m4 (gl_LOCALE_H): On Solaris, define _LCONV_C99.
* doc/posix-headers/locale.texi: Update.

12 years agolocale: Provide a working 'struct lconv'.
Bruno Haible [Sun, 25 Mar 2012 11:22:41 +0000 (13:22 +0200)]
locale: Provide a working 'struct lconv'.

* lib/locale.in.h (lconv): Override if REPLACE_STRUCT_LCONV is 1.
* m4/locale_h.m4 (gl_LOCALE_H): Set REPLACE_STRUCT_LCONV to 1 if
'struct lconv' does not even contain decimal_point.
(gl_LOCALE_H_DEFAULTS): Initialize REPLACE_STRUCT_LCONV.
* modules/locale (Makefile.am): Substitute REPLACE_STRUCT_LCONV.
* tests/test-locale.c (main): Check that 'struct lconv' is complete.
* doc/posix-headers/locale.texi: Mention the problems with
'struct lconv'.
Reported by Gianluigi Tiesi <sherpya@netfarm.it>.

12 years agoEnable common subexpression optimization in GCC.
Bruno Haible [Sun, 25 Mar 2012 01:39:55 +0000 (03:39 +0200)]
Enable common subexpression optimization in GCC.

* lib/unitypes.in.h (_UC_ATTRIBUTE_CONST, _UC_ATTRIBUTE_PURE): New
macros.
* lib/unicase.in.h (uc_toupper, uc_tolower, uc_totitle): Declare with
GCC attribute 'const'.
(uc_locale_language): Declare with GCC attribute 'pure'.
* lib/unicase/caseprop.h (uc_is_cased, uc_is_case_ignorable): Declare
with GCC attribute 'const'.
* lib/unictype.in.h (uc_is_general_category_withtable,
uc_combining_class, uc_combining_class_name,
uc_combining_class_long_name, uc_bidi_class_name,
uc_bidi_category_name, uc_bidi_class_long_name, uc_bidi_class,
uc_bidi_category, uc_is_bidi_class, uc_is_bidi_category,
uc_decimal_value, uc_digit_value, uc_numeric_value,
uc_joining_type_name, uc_joining_type_long_name, uc_joining_type,
uc_joining_group_name, uc_joining_group, uc_is_property_*, uc_script,
uc_block, uc_is_c_whitespace, uc_is_java_whitespace,
uc_c_ident_category, uc_java_ident_category, uc_is_alnum, uc_is_alpha,
uc_is_cntrl, uc_is_digit, uc_is_graph, uc_is_lower, uc_is_print,
uc_is_punct, uc_is_space, uc_is_upper, uc_is_xdigit, uc_is_blank):
Declare with GCC attribute 'const'.
(uc_general_category_name, uc_general_category_long_name,
uc_general_category_byname, uc_general_category,
uc_is_general_category, uc_combining_class_byname,
uc_bidi_class_byname, uc_bidi_category_byname, uc_joining_type_byname,
uc_joining_group_byname, uc_script_byname, uc_is_script, uc_is_block):
Declare with GCC attribute 'pure'.
* lib/unigbrk.in.h (uc_graphemeclusterbreak_property,
uc_is_grapheme_break, u8_grapheme_next, u16_grapheme_next,
u32_grapheme_next, u8_grapheme_prev, u16_grapheme_prev,
u32_grapheme_prev, lib/uniname.in.h (unicode_name_character): Declare
with GCC attribute 'pure'.
* lib/uninorm.in.h (uc_composition): Declare with GCC attribute
'const'.
(uninorm_decomposing_form): Declare with GCC attribute 'pure'.
* lib/unistr.in.h (): Declare with GCC attribute 'const'.
(u8_check, u16_check, u32_check, u8_mblen, u16_mblen, u32_mblen,
u8_cmp, u16_cmp, u32_cmp, u8_cmp2, u16_cmp2, u32_cmp2, u8_chr, u16_chr,
u32_chr, u8_mbsnlen, u16_mbsnlen, u32_mbsnlen, u8_strmblen,
u16_strmblen, u32_strmblen, u8_strlen, u16_strlen, u32_strlen,
u8_strnlen, u16_strnlen, u32_strnlen, u8_strcmp_gnu, u8_strcmp,
u16_strcmp, u32_strcmp, u8_strncmp, u16_strncmp, u32_strncmp,
u8_strchr, u16_strchr, u32_strchr, u8_strrchr, u16_strrchr,
u32_strrchr, u8_strcspn, u16_strcspn, u32_strcspn, u8_strspn,
u16_strspn, u32_strspn, u8_strpbrk, u16_strpbrk, u32_strpbrk,
u8_strstr, u16_strstr, u32_strstr, u8_startswith, u16_startswith,
u32_startswith, u8_endswith, u16_endswith, u32_endswith): Declare with
GCC attribute 'pure'.
* lib/uniwbrk.in.h (uc_wordbreak_property): Declare with GCC attribute
'const'.
* lib/uniwidth.in.h (uc_width): Simplify declaration.
(u8_width, u16_width, u32_width, u8_strwidth, u16_strwidth,
u32_strwidth): Declare with GCC attribute 'pure'.

12 years agoEnable common subexpression optimization in GCC.
Bruno Haible [Sun, 25 Mar 2012 00:56:10 +0000 (01:56 +0100)]
Enable common subexpression optimization in GCC.

* lib/dirent.in.h (_GL_ATTRIBUTE_PURE): Define, like in string.in.h.
(alphasort): Declare with GCC attribute 'pure'.
* lib/stdlib.in.h (_GL_ATTRIBUTE_PURE): Define, like in string.in.h.
(atoll): Declare with GCC attribute 'pure'.
* lib/string.in.h (mbslen, mbsnlen, mbschr, mbsrchr, mbsstr,
mbscasecmp, mbsncasecmp, mbspcasecmp, mbscasestr, mbscspn, mbspbrk,
mbsspn, strverscmp): Declare with GCC attribute 'pure'.
* lib/wchar.in.h (_GL_ATTRIBUTE_PURE): Define, like in string.in.h.
(btowc, wctob, wcwidth, wmemchr, wmemcmp, wcslen, wcsnlen, wcscmp,
wcsncmp, wcscasecmp, wcsncasecmp, wcschr, wcsrchr, wcscspn, wcsspn,
wcspbrk, wcsstr, wcswidth): Declare with GCC attribute 'pure'.

12 years agognulib-tool: Avoid unintended error output from 'cmp'.
Bruno Haible [Sat, 24 Mar 2012 15:41:21 +0000 (16:41 +0100)]
gnulib-tool: Avoid unintended error output from 'cmp'.

* gnulib-tool (func_add_file, func_update_file, func_import): Use
"cmp -s", not "cmp > /dev/null".

12 years agognulib-tool: fix imprecise comments w.r.t. an automake bug
Stefano Lattarini [Tue, 13 Mar 2012 09:51:08 +0000 (10:51 +0100)]
gnulib-tool: fix imprecise comments w.r.t. an automake bug

It's not just Automake versions < 1.9b that creates an empty
pkgdatadir at installation time if pkgdata_DATA is specified
to empty; modern automake versions do this as well, at least
until automake 1.11.4 (not yet released at the moment of writing,
but soon to appear).  That behaviour was generally considered a
feature rather than a bug, at least until this discussion:
<http://lists.gnu.org/archive/html/automake/2012-03/msg00014.html>

See also automake bugs #10997 and #11030.

* gnulib-tool (func_emit_lib_Makefile_am): Adjust comments.  Add
reference to relevant automake bug numbers.
(func_emit_tests_Makefile_am): Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoautoupdate
Karl Berry [Wed, 21 Mar 2012 15:15:26 +0000 (08:15 -0700)]
autoupdate

12 years agoannounce-gen: use Digest::SHA when possible
Reuben Thomas [Tue, 20 Mar 2012 20:17:22 +0000 (20:17 +0000)]
announce-gen: use Digest::SHA when possible

* build-aux/announce-gen: Use Digest::SHA when possible, falling
back to Digest::SHA1 if necessary.

12 years agotests: avoid gcc warnings about argv vs. const initializers
Jim Meyering [Tue, 20 Mar 2012 19:35:44 +0000 (20:35 +0100)]
tests: avoid gcc warnings about argv vs. const initializers

* tests/test-posix_spawn1.c (main): Cast to "(char *)" to avoid two
warnings about discarding 'const' qualifier from pointer target type.
* tests/test-posix_spawn2.c (main): Likewise.

12 years agoREADME-release: simplify slightly
Reuben Thomas [Tue, 20 Mar 2012 13:37:21 +0000 (13:37 +0000)]
README-release: simplify slightly

* top/README-release: Run "git checkout master" only once.

12 years agogit-merge-changelog: add specific example on how to use with hg.
Mark Wielaard [Fri, 16 Mar 2012 18:08:17 +0000 (19:08 +0100)]
git-merge-changelog: add specific example on how to use with hg.

* lib/git-merge-changelog.c: Add example on how to use in .hgrc.

12 years agogit-merge-changelog: Report bugs to bug-gnulib@gnu.org.
Mark Wielaard [Sun, 18 Mar 2012 11:52:10 +0000 (12:52 +0100)]
git-merge-changelog: Report bugs to bug-gnulib@gnu.org.

git-merge-changelog is maintained in gnulib, so bug reports should go
to bug-gnulib@gnu.org, not bug-gnu-gettext@gnu.org.

12 years agogit-version-gen: don't let "prefix" envvar cause trouble
Andreas Oberritter [Sun, 18 Mar 2012 17:39:14 +0000 (18:39 +0100)]
git-version-gen: don't let "prefix" envvar cause trouble

* build-aux/git-version-gen (prefix): Initialize properly,
so as not to use a value specified via the environment.
Details here: http://thread.gmane.org/gmane.comp.gnu.parted.bugs/10810

12 years agoregex: diagnose too-large repeat counts in EREs
Paul Eggert [Fri, 16 Mar 2012 21:17:55 +0000 (14:17 -0700)]
regex: diagnose too-large repeat counts in EREs

Previously, the code did not diagnose the too-large repeat count
in EREs like 'b{1000000000}'; instead, it silently treated the ERE
as if it were 'b\{1000000000}', which is unexpected.
* lib/regcomp.c (parse_dup_op): Fail with REG_ESIZE if a repeat count
is too large.  REG_ESIZE is used nowhere else, and the diagnostic
is a reasonable one for this problem.  Another option would be to
create a new REG_OVERFLOW error for repeat counts that are too large.
(fetch_number): Return RE_DUP_MAX + 1, not REG_ERROR, if the repeat
count is too large, so that the caller can distinguish the two cases.
* lib/regex.h (_REG_ESIZE): Document that this is now a generic
"Too large" return code, and that repeat counts are one example of this.

12 years agodoc: some glibc x32 integer width issues
Paul Eggert [Fri, 16 Mar 2012 18:50:38 +0000 (11:50 -0700)]
doc: some glibc x32 integer width issues

* doc/posix-headers/sys_types.texi (sys/types.h):
* doc/posix-headers/time.texi (time.h):
Mention that glibc x32 does not conform to POSIX in a couple of
areas related to integer widths.

12 years agoautoupdate
Karl Berry [Thu, 15 Mar 2012 15:46:29 +0000 (08:46 -0700)]
autoupdate

12 years agofmal: Avoid test failure on OpenBSD 5.1/SPARC64.
Bruno Haible [Thu, 15 Mar 2012 11:12:49 +0000 (12:12 +0100)]
fmal: Avoid test failure on OpenBSD 5.1/SPARC64.

* lib/fma.c (VOLATILE): New macro.
(FUNC): Use it to work around a GCC compiler bug.

12 years agohypotl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible [Wed, 14 Mar 2012 02:25:16 +0000 (03:25 +0100)]
hypotl: Bypass broken implementation in OpenBSD 5.1/SPARC.

* m4/hypotl.m4 (gl_FUNC_HYPOTL_WORKS): New macro.
(gl_FUNC_HYPOTL): Invoke it. If the function does not work, set
REPLACE_HYPOTL to 1.
* doc/posix-functions/hypotl.texi: Mention the OpenBSD 5.1/SPARC bug.

12 years agoremainderl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible [Wed, 14 Mar 2012 01:40:49 +0000 (02:40 +0100)]
remainderl: Bypass broken implementation in OpenBSD 5.1/SPARC.

* m4/remainderl.m4 (gl_FUNC_REMAINDERL_WORKS): New macro.
(gl_FUNC_REMAINDERL): Invoke it. If the function does not work, set
REPLACE_REMAINDERL to 1.
* doc/posix-functions/remainderl.texi: Mention the OpenBSD 5.1/SPARC
bug.

12 years agoOops, fix regression on AIX through recent commit.
Bruno Haible [Wed, 14 Mar 2012 01:32:24 +0000 (02:32 +0100)]
Oops, fix regression on AIX through recent commit.

12 years agoOops, fix cross-compilation guess in recent commits.
Bruno Haible [Wed, 14 Mar 2012 01:08:46 +0000 (02:08 +0100)]
Oops, fix cross-compilation guess in recent commits.

12 years agosqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible [Wed, 14 Mar 2012 00:51:10 +0000 (01:51 +0100)]
sqrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.

* lib/math.in.h (sqrtl): Replace it if REPLACE_SQRTL is 1.
* m4/sqrtl.m4 (gl_FUNC_SQRTL_WORKS): New macro.
(gl_FUNC_SQRTL): Invoke it. Set REPLACE_SQRTL to 1 if sqrtl() produces
too big rounding errors.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_SQRTL.
* modules/math (Makefile.am): Substitute REPLACE_SQRTL.
* modules/sqrtl (configure.ac): Consider REPLACE_SQRTL.
(Depends-on): Update conditions.
* tests/test-sqrtl.c (my_ldexpl): New function.
(main): Add test of a particular value.
* doc/posix-functions/sqrtl.texi: Mention the OpenBSD 5.1/SPARC bug.

12 years agodoc: update timer_* platform portability notes
Pádraig Brady [Tue, 13 Mar 2012 23:47:26 +0000 (23:47 +0000)]
doc: update timer_* platform portability notes

* doc/posix-functions/timer_create.texi: Add platforms
that always return ENOSYS (OpenBSD 4.9).
* doc/posix-functions/timer_delete.texi: Likewise.
* doc/posix-functions/timer_gettime.texi: Likewise.
* doc/posix-functions/timer_settime.texi: Likewise.

12 years agocbrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.
Bruno Haible [Tue, 13 Mar 2012 23:40:18 +0000 (00:40 +0100)]
cbrtl: Bypass broken implementation in OpenBSD 5.1/SPARC.

* m4/cbrtl.m4 (gl_FUNC_CBRTL_WORKS): New macro.
(gl_FUNC_CBRTL): Invoke it. If the function does not work, set
REPLACE_CBRTL to 1.
* doc/posix-functions/cbrtl.texi: Mention the OpenBSD 5.1/SPARC bug.

12 years agoremainderl: Avoid compilation error on AIX >= 5.2.
Bruno Haible [Tue, 13 Mar 2012 23:02:12 +0000 (00:02 +0100)]
remainderl: Avoid compilation error on AIX >= 5.2.

* lib/math.in.h (remainderl): Undefine macro from the system header.

12 years agoAvoid compilation errors with MSVC option -fp:strict.
Bruno Haible [Tue, 13 Mar 2012 22:57:11 +0000 (23:57 +0100)]
Avoid compilation errors with MSVC option -fp:strict.

* lib/cbrt.c: Use MSVC specific pragma fenv_access.
* lib/cbrtf.c: Likewise.
Reported by Michael Goffioul <michael.goffioul@gmail.com>.

12 years agouninorm: Don't crash in out-of-memory conditions.
Bruno Haible [Mon, 12 Mar 2012 12:15:48 +0000 (13:15 +0100)]
uninorm: Don't crash in out-of-memory conditions.

* lib/uninorm/u-normalize-internal.h (FUNC): Handle malloc() failure
gracefully.
* lib/uninorm/uninorm-filter.c (uninorm_filter_write): Likewise.
Based on a report and patch by Stephen Gallagher <sgallagh@redhat.com>.

12 years agoquote: fix syntax-check
Akim Demaille [Tue, 13 Mar 2012 19:30:59 +0000 (12:30 -0700)]
quote: fix syntax-check

* top/maint.mk (sc_prohibit_quote_without_use): quote.h
also exports quote_quoting_options.

12 years agoCollapse list of copyright years to ranges. See
Simon Josefsson [Mon, 12 Mar 2012 11:45:42 +0000 (12:45 +0100)]
Collapse list of copyright years to ranges.  See
<https://lists.gnu.org/archive/html/bug-gnulib/2012-03/msg00051.html>.

* build-aux/bootstrap.conf, build-aux/csharpcomp.sh.in,
build-aux/csharpexec.sh.in, build-aux/gnupload,
build-aux/install-reloc, build-aux/javacomp.sh.in,
build-aux/javaexec.sh.in, build-aux/ldd.sh.in,
build-aux/move-if-change, build-aux/reloc-ldflags,
build-aux/relocatable.sh.in, build-aux/x-to-1.in: Fix copyright.

12 years agolog2f-ieee: Work around test failure on NetBSD 5.1 and Solaris 10.
Bruno Haible [Sun, 11 Mar 2012 21:14:04 +0000 (22:14 +0100)]
log2f-ieee: Work around test failure on NetBSD 5.1 and Solaris 10.

* m4/log2f-ieee.m4: New file.
* m4/log2f.m4 (gl_FUNC_LOG2F): If gl_FUNC_LOG2F_IEEE is present, test
whether log2f works with a minus zero argument. Replace it if not.
* modules/log2f-ieee (Files): Add m4/log2f-ieee.m4.
(Depends-on): Add log2-ieee.
(configure.ac): Invoke gl_FUNC_LOG2F_IEEE.
* doc/posix-functions/log2f.texi: Mention the log2f-ieee module.

12 years agolog2-ieee: Work around test failure on NetBSD 5.1 and Solaris 10.
Bruno Haible [Sun, 11 Mar 2012 21:12:34 +0000 (22:12 +0100)]
log2-ieee: Work around test failure on NetBSD 5.1 and Solaris 10.

* m4/log2-ieee.m4: New file.
* m4/log2.m4 (gl_FUNC_LOG2): If gl_FUNC_LOG2_IEEE is present, test
whether log2 works with a minus zero argument. Replace it if not.
* modules/log2-ieee (Files): Add m4/log2-ieee.m4.
(configure.ac): Invoke gl_FUNC_LOG2_IEEE.
* doc/posix-functions/log2.texi: Mention the log2-ieee module.

12 years agoTests for module 'log2l-ieee'.
Bruno Haible [Sun, 11 Mar 2012 19:53:14 +0000 (20:53 +0100)]
Tests for module 'log2l-ieee'.

* modules/log2l-ieee-tests: New file.
* tests/test-log2l-ieee.c: New file.

12 years agoNew module 'log2l-ieee'.
Bruno Haible [Sun, 11 Mar 2012 19:52:59 +0000 (20:52 +0100)]
New module 'log2l-ieee'.

* modules/log2l-ieee: New file.

12 years agoTests for module 'log2-ieee'.
Bruno Haible [Sun, 11 Mar 2012 19:52:43 +0000 (20:52 +0100)]
Tests for module 'log2-ieee'.

* modules/log2-ieee-tests: New file.
* tests/test-log2-ieee.c: New file.

12 years agoNew module 'log2-ieee'.
Bruno Haible [Sun, 11 Mar 2012 19:52:32 +0000 (20:52 +0100)]
New module 'log2-ieee'.

* modules/log2-ieee: New file.

12 years agoTests for module 'log2f-ieee'.
Bruno Haible [Sun, 11 Mar 2012 19:52:19 +0000 (20:52 +0100)]
Tests for module 'log2f-ieee'.

* modules/log2f-ieee-tests: New file.
* tests/test-log2f-ieee.c: New file.
* tests/test-log2-ieee.h: New file.

12 years agoNew module 'log2f-ieee'.
Bruno Haible [Sun, 11 Mar 2012 19:52:04 +0000 (20:52 +0100)]
New module 'log2f-ieee'.

* modules/log2f-ieee: New file.

12 years agoTests for module 'log2l'.
Bruno Haible [Sun, 11 Mar 2012 19:50:40 +0000 (20:50 +0100)]
Tests for module 'log2l'.

* modules/log2l-tests: New file.
* tests/test-log2l.c: New file.

12 years agoNew module 'log2l'.
Bruno Haible [Sun, 11 Mar 2012 19:50:08 +0000 (20:50 +0100)]
New module 'log2l'.

* lib/math.in.h (log2l): New declaration.
* lib/log2l.c: New file.
* m4/log2l.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether log2l is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG2L, HAVE_DECL_LOG2L,
REPLACE_LOG2L.
* modules/math (Makefile.am): Substitute GNULIB_LOG2L, HAVE_DECL_LOG2L,
REPLACE_LOG2L.
* modules/log2l: New file.
* tests/test-math-c++.cc: Check the declaration of log2l.
* doc/posix-functions/log2l.texi: Mention the new module and the IRIX
and OSF/1 problems.

12 years agoTests for module 'log2f'.
Bruno Haible [Sun, 11 Mar 2012 16:57:50 +0000 (17:57 +0100)]
Tests for module 'log2f'.

* modules/log2f-tests: New file.
* tests/test-log2f.c: New file.

12 years agoNew module 'log2f'.
Bruno Haible [Sun, 11 Mar 2012 16:57:12 +0000 (17:57 +0100)]
New module 'log2f'.

* lib/math.in.h (log2f): New declaration.
* lib/log2f.c: New file.
* m4/log2f.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether log2f is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG2F, HAVE_DECL_LOG2F,
REPLACE_LOG2F.
* modules/math (Makefile.am): Substitute GNULIB_LOG2F, HAVE_DECL_LOG2F,
REPLACE_LOG2F.
* modules/log2f: New file.
* tests/test-math-c++.cc: Check the declaration of log2f.
* doc/posix-functions/log2f.texi: Mention the new module and the IRIX
and OSF/1 and Cygwin problems.

12 years agoTests for module 'log2'.
Bruno Haible [Sun, 11 Mar 2012 13:43:42 +0000 (14:43 +0100)]
Tests for module 'log2'.

* modules/log2-tests: New file.
* tests/test-log2.c: New file.
* tests/test-log2.h: New file.

12 years agoNew module 'log2'.
Bruno Haible [Sun, 11 Mar 2012 13:42:17 +0000 (14:42 +0100)]
New module 'log2'.

* lib/math.in.h (log2): New declaration.
* lib/log2.c: New file.
* m4/log2.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether log2 is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOG2, HAVE_DECL_LOG2,
REPLACE_LOG2.
* modules/math (Makefile.am): Substitute GNULIB_LOG2, HAVE_DECL_LOG2,
REPLACE_LOG2.
* modules/log2: New file.
* tests/test-math-c++.cc: Check the declaration of log2.
* doc/posix-functions/log2.texi: Mention the new module and the IRIX
and OSF/1 and Cygwin problems.

12 years agoexp2* tests: More tests.
Bruno Haible [Sun, 11 Mar 2012 14:45:46 +0000 (15:45 +0100)]
exp2* tests: More tests.

* tests/test-exp2.h (test_function): Test all integral arguments that
don't need to overflow or denormalized numbers.
* tests/test-exp2.c (MAX_EXP, MIN_EXP): New macros.
* tests/test-exp2f.c (MAX_EXP, MIN_EXP): Likewise.
* tests/test-exp2l.c (MAX_EXP, MIN_EXP): Likewise.

12 years agoupdate from texinfo
Karl Berry [Sun, 11 Mar 2012 22:07:20 +0000 (15:07 -0700)]
update from texinfo

12 years agoautoupdate
Karl Berry [Sun, 11 Mar 2012 15:53:18 +0000 (08:53 -0700)]
autoupdate

12 years agolog1p* tests: Reduce running time of tests.
Bruno Haible [Sun, 11 Mar 2012 02:21:42 +0000 (03:21 +0100)]
log1p* tests: Reduce running time of tests.

12 years agolog1pl-ieee: Work around test failure on AIX 7.1.
Bruno Haible [Sun, 11 Mar 2012 02:04:47 +0000 (03:04 +0100)]
log1pl-ieee: Work around test failure on AIX 7.1.

* modules/log1pl-ieee (Depends-on): Add log1p-ieee.

12 years agolog1pl-ieee: Work around test failure on IRIX 6.5.
Bruno Haible [Sun, 11 Mar 2012 01:36:40 +0000 (02:36 +0100)]
log1pl-ieee: Work around test failure on IRIX 6.5.

* m4/log1pl-ieee.m4: New file.
* m4/log1pl.m4 (gl_FUNC_LOG1PL): If gl_FUNC_LOG1PL_IEEE is present,
test whether log1pl works with a minus zero argument. Replace it if
not.
* lib/math.in.h (log1pl): Override if REPLACE_LOG1PL is 1.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG1PL.
* modules/math (Makefile.am): Substitute REPLACE_LOG1PL.
* modules/log1pl (configure.ac): Consider REPLACE_LOG1PL.
(Depends-on): Update conditions.
* modules/log1pl-ieee (Files): Add m4/log1p-ieee.m4, m4/minus-zero.m4,
m4/signbit.m4.
(configure.ac): Invoke gl_FUNC_LOG1PL_IEEE.
* doc/posix-functions/log1pl.texi: Mention the log1pl-ieee module.

12 years agolog1pf-ieee: Work around test failure on OpenBSD 4.9 and AIX 7.1.
Bruno Haible [Sun, 11 Mar 2012 01:06:49 +0000 (02:06 +0100)]
log1pf-ieee: Work around test failure on OpenBSD 4.9 and AIX 7.1.

* m4/log1pf-ieee.m4: New file.
* m4/log1pf.m4 (gl_FUNC_LOG1PF): If gl_FUNC_LOG1PF_IEEE is present,
test whether log1pf works with a minus zero argument. Replace it if
not.
* modules/log1pf-ieee (Files): Add m4/log1pf-ieee.m4, m4/minus-zero.m4,
m4/signbit.m4.
(configure.ac): Invoke gl_FUNC_LOG1PF_IEEE.
* doc/posix-functions/log1pf.texi: Mention the log1pf-ieee module.

12 years agolog1pf-ieee: Work around test failure on AIX 5.1 and HP-UX 11.
Bruno Haible [Sun, 11 Mar 2012 00:41:52 +0000 (01:41 +0100)]
log1pf-ieee: Work around test failure on AIX 5.1 and HP-UX 11.

* modules/log1pf-ieee (Depends-on): Add log1p-ieee.
(configure.ac): Require gl_FUNC_LOG1PF.

12 years agolog1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.
Bruno Haible [Sun, 11 Mar 2012 00:27:59 +0000 (01:27 +0100)]
log1p-ieee: Work around test failure on AIX 7.1 and HP-UX 11.

* m4/log1p-ieee.m4: New file.
* m4/log1p.m4 (gl_FUNC_LOG1P): If gl_FUNC_LOG1P_IEEE is present, test
whether log1p works with a minus zero argument. Replace it if not.
* lib/math.in.h (log1p): Override if REPLACE_LOG1P is 1.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_LOG1P.
* modules/math (Makefile.am): Substitute REPLACE_LOG1P.
* modules/log1p (configure.ac): Consider REPLACE_LOG1P.
(Depends-on): Update conditions.
* modules/log1p-ieee (Files): Add m4/log1p-ieee.m4, m4/minus-zero.m4,
m4/signbit.m4.
(configure.ac): Invoke gl_FUNC_LOG1P_IEEE.
* doc/posix-functions/log1p.texi: Mention the log1p-ieee module.

12 years agoTests for module 'log1pl-ieee'.
Bruno Haible [Sat, 10 Mar 2012 23:54:30 +0000 (00:54 +0100)]
Tests for module 'log1pl-ieee'.

* modules/log1pl-ieee-tests: New file.
* tests/test-log1pl-ieee.c: New file.

12 years agoNew module 'log1pl-ieee'.
Bruno Haible [Sat, 10 Mar 2012 23:54:18 +0000 (00:54 +0100)]
New module 'log1pl-ieee'.

* modules/log1pl-ieee: New file.