This patch fixes a typo that had the effect that the function strtold_l was not used, even if available.
2024-02-21 Bruno Haible <br...@clisp.org> c-strtold: Use strtold_l when available (regr. 2019-01-31). * lib/c-strtod.c: Fix typo: HAVE_GOOD_STRTOLD_L was never defined. diff --git a/lib/c-strtod.c b/lib/c-strtod.c index 72a76e209b..f955434eaa 100644 --- a/lib/c-strtod.c +++ b/lib/c-strtod.c @@ -40,9 +40,7 @@ # define STRTOD strtod #endif -#if defined LC_ALL_MASK \ - && ((LONG ? HAVE_GOOD_STRTOLD_L : HAVE_GOOD_STRTOD_L) \ - || HAVE_WORKING_USELOCALE) +#if defined LC_ALL_MASK && (HAVE_GOOD_STRTOD_L || HAVE_WORKING_USELOCALE) /* Cache for the C locale object. Marked volatile so that different threads see the same value @@ -66,9 +64,7 @@ C_STRTOD (char const *nptr, char **endptr) { DOUBLE r; -#if defined LC_ALL_MASK \ - && ((LONG ? HAVE_GOOD_STRTOLD_L : HAVE_GOOD_STRTOD_L) \ - || HAVE_WORKING_USELOCALE) +#if defined LC_ALL_MASK && (HAVE_GOOD_STRTOD_L || HAVE_WORKING_USELOCALE) locale_t locale = c_locale (); if (!locale) @@ -78,7 +74,7 @@ C_STRTOD (char const *nptr, char **endptr) return 0; /* errno is set here */ } -# if (LONG ? HAVE_GOOD_STRTOLD_L : HAVE_GOOD_STRTOD_L) +# if HAVE_GOOD_STRTOD_L r = STRTOD_L (nptr, endptr, locale);