From 41ffc7676c455c12ebd7953e117b60dcc9a9af54 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 13 Jun 2011 09:40:58 -0700 Subject: [PATCH] ftoastr: use strtof only if HAVE_STRTOF This is needed on HP-UX 11.11 with GCC 4.24; see Bruno Haible's report . * lib/ftoastr.c (STRTOF) [LENGTH == 1]: Use strtof only if HAVE_STRTOF. * modules/ftoastr (configure.ac): Check for strtof. --- ChangeLog | 8 ++++++++ lib/ftoastr.c | 14 ++++++++------ modules/ftoastr | 1 + 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 19a3dffbb1..571df81c50 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2011-06-13 Paul Eggert + + ftoastr: use strtof only if HAVE_STRTOF + This is needed on HP-UX 11.11 with GCC 4.24; see Bruno Haible's report + . + * lib/ftoastr.c (STRTOF) [LENGTH == 1]: Use strtof only if HAVE_STRTOF. + * modules/ftoastr (configure.ac): Check for strtof. + 2011-06-13 Bruno Haible gnulib-tool: Addendum to 2011-06-08 commit. diff --git a/lib/ftoastr.c b/lib/ftoastr.c index ff3d87ce22..7c99ef00f3 100644 --- a/lib/ftoastr.c +++ b/lib/ftoastr.c @@ -40,14 +40,15 @@ # define FLOAT_MIN LDBL_MIN # define FLOAT_PREC_BOUND _GL_LDBL_PREC_BOUND # define FTOASTR ldtoastr -# define STRTOF strtold +# if HAVE_C99_STRTOLD +# define STRTOF strtold +# endif #elif LENGTH == 2 # define FLOAT double # define FLOAT_DIG DBL_DIG # define FLOAT_MIN DBL_MIN # define FLOAT_PREC_BOUND _GL_DBL_PREC_BOUND # define FTOASTR dtoastr -# define STRTOF strtod #else # define LENGTH 1 # define FLOAT float @@ -55,14 +56,15 @@ # define FLOAT_MIN FLT_MIN # define FLOAT_PREC_BOUND _GL_FLT_PREC_BOUND # define FTOASTR ftoastr -# define STRTOF strtof +# if HAVE_STRTOF +# define STRTOF strtof +# endif #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 + working at all. */ +#ifndef STRTOF # define STRTOF strtod #endif diff --git a/modules/ftoastr b/modules/ftoastr index 9010e940ed..b52ce26339 100644 --- a/modules/ftoastr +++ b/modules/ftoastr @@ -10,6 +10,7 @@ Depends-on: intprops configure.ac: +AC_CHECK_FUNCS_ONCE([strtof]) AC_REQUIRE([gl_C99_STRTOLD]) Makefile.am: -- 2.30.2