https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110653

--- Comment #11 from dave.anglin at bell dot net ---
On 2023-07-14 5:58 a.m., redi at gcc dot gnu.org wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110653
>
> --- Comment #10 from Jonathan Wakely <redi at gcc dot gnu.org> ---
> And this should fix it:
>
> --- a/libstdc++-v3/include/c_global/cstdlib
> +++ b/libstdc++-v3/include/c_global/cstdlib
> @@ -256,6 +256,20 @@ namespace std
>     using ::__gnu_cxx::strtold;
>   } // namespace std
>
> +#else  // ! _GLIBCXX_USE_C99_STDLIB
> +
> +// We also check for strtof and strtold separately from
> _GLIBCXX_USE_C99_STDLIB
> +
> +#if _GLIBCXX_HAVE_STRTOF
> +#undef strtof
> +namespace std { using ::strtof; }
> +#endif
> +
> +#if _GLIBCXX_HAVE_STRTOLD
> +#undef strtold
> +namespace std { using ::strtold; }
> +#endif
> +
>   #endif // _GLIBCXX_USE_C99_STDLIB
>
>   } // extern "C++"
Yes, this works.

hppa64-hpux does not have have strtof.  Could std::stof be implemented using
strtod in this case?

I'm thinking a test to check the presence and maybe compliance of these
routines might be good.

Reply via email to