From 262059a0d8e5b3443657f94410b2f2518f345e92 Mon Sep 17 00:00:00 2001 From: Chris Sutcliffe Date: Thu, 15 May 2008 23:27:29 +0000 Subject: [PATCH] 2008-05-15 Ramiro Polla * include/stdlib.h: Fix strtod under C++. --- winsup/mingw/ChangeLog | 4 ++++ winsup/mingw/include/stdlib.h | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/winsup/mingw/ChangeLog b/winsup/mingw/ChangeLog index 25ce0db75..a45b1e850 100644 --- a/winsup/mingw/ChangeLog +++ b/winsup/mingw/ChangeLog @@ -1,3 +1,7 @@ +2008-05-15 Ramiro Polla + + * include/stdlib.h: Fix strtod under C++. + 2008-05-06 Ramiro Polla * mingwex/gdtoa/strtodnrp.c: Remove alias from strtod to __strtod. diff --git a/winsup/mingw/include/stdlib.h b/winsup/mingw/include/stdlib.h index 693185c07..07f6de535 100644 --- a/winsup/mingw/include/stdlib.h +++ b/winsup/mingw/include/stdlib.h @@ -309,7 +309,13 @@ _CRTIMP long __cdecl __MINGW_NOTHROW _wtol (const wchar_t *); #endif #if !defined __NO_ISOCEXT /* in libmingwex.a */ double __cdecl __MINGW_NOTHROW __strtod (const char*, char**); -#define strtod __strtod +#ifdef __cplusplus +/* We require a function with external linkage. */ +#else +static +#endif /* Not __cplusplus */ +inline double __cdecl __MINGW_NOTHROW strtod (const char* __restrict__ __nptr, char** __restrict__ __endptr) +{ return __strtod(__nptr, __endptr); } float __cdecl __MINGW_NOTHROW strtof (const char * __restrict__, char ** __restrict__); long double __cdecl __MINGW_NOTHROW strtold (const char * __restrict__, char ** __restrict__); #else