summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2021-04-02 20:14:28 +0200
committerBruno Haible <bruno@clisp.org>2021-04-02 20:14:28 +0200
commit837ffb5ee4585ce6947e1013d03c7d6f21cbd635 (patch)
treea6d1773bc9427ac3fc6c13fd23ec53c81673d32d /modules
parentcbff21f910e678340da2cadf0bbf2bdc191c0eb9 (diff)
downloadgnulib-837ffb5ee4585ce6947e1013d03c7d6f21cbd635.tar.gz
strtoull: Work around a bug on native Windows and Minix.
* lib/stdlib.in.h (strtoull): Override if REPLACE_STRTOULL is 1. * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize REPLACE_STRTOULL. * m4/strtoull.m4 (gl_FUNC_STRTOULL): Test whether strtoull works. Set REPLACE_STRTOULL. * modules/stdlib (Makefile.am): Substitute REPLACE_STRTOULL. * modules/strtoull (configure.ac): Test REPLACE_STRTOULL. * tests/test-strtoull.c (main): Add tests of hexadecimal integer syntax. * doc/posix-functions/strtoull.texi: Mention the bug.
Diffstat (limited to 'modules')
-rw-r--r--modules/stdlib1
-rw-r--r--modules/strtoull2
2 files changed, 2 insertions, 1 deletions
diff --git a/modules/stdlib b/modules/stdlib
index 998f44d240..4bd7a5c683 100644
--- a/modules/stdlib
+++ b/modules/stdlib
@@ -140,6 +140,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \
-e 's|@''REPLACE_STRTOLD''@|$(REPLACE_STRTOLD)|g' \
-e 's|@''REPLACE_STRTOUL''@|$(REPLACE_STRTOUL)|g' \
+ -e 's|@''REPLACE_STRTOULL''@|$(REPLACE_STRTOULL)|g' \
-e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \
-e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
diff --git a/modules/strtoull b/modules/strtoull
index ff83b69af6..9b5895b5c7 100644
--- a/modules/strtoull
+++ b/modules/strtoull
@@ -13,7 +13,7 @@ stdlib
configure.ac:
gl_FUNC_STRTOULL
-if test $HAVE_STRTOULL = 0; then
+if test $HAVE_STRTOULL = 0 || test $REPLACE_STRTOULL = 1; then
AC_LIBOBJ([strtoull])
gl_PREREQ_STRTOULL
fi