Problem reported by Bruno Haible in
<http://lists.gnu.org/archive/html/bug-gnulib/2010-11/msg00242.html>.
* lib/ftoastr.c (STRTOF): Define to strtod if in a pre-C99
environment and strtold (and presumably strtof) are not available.
* modules/ftoastr (Files): Add m4/c-strtod.m4.
(configure.ac): Require gl_C99_STRTOLD.
+2010-11-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ ftoastr: port to hosts lacking strtof and strtold
+ Problem reported by Bruno Haible in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2010-11/msg00242.html>.
+ * lib/ftoastr.c (STRTOF): Define to strtod if in a pre-C99
+ environment and strtold (and presumably strtof) are not available.
+ * modules/ftoastr (Files): Add m4/c-strtod.m4.
+ (configure.ac): Require gl_C99_STRTOLD.
+
2010-11-18 Bruno Haible <bruno@clisp.org>
c-strtold: Avoid link error on AIX 7.
# define STRTOF strtof
#endif
+/* On pre-C99 hosts, approximate strtof and strtold with strtod. This
+ may generate one or two extra digits, but that's better than not
+ working at all. Assume that strtof works if strtold does. */
+#if LENGTH != 2 && ! HAVE_C99_STRTOLD
+# undef STRTOF
+# define STRTOF strtod
+#endif
+
int
FTOASTR (char *buf, size_t bufsize, int flags, int width, FLOAT x)
{
lib/ftoastr.c
lib/dtoastr.c
lib/ldtoastr.c
+m4/c-strtod.m4
Depends-on:
intprops
configure.ac:
+AC_REQUIRE([gl_C99_STRTOLD])
Makefile.am:
lib_SOURCES += ftoastr.h ftoastr.c dtoastr.c ldtoastr.c