From e0543989801aea12c95505e4d575153d88ecd3f1 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Mon, 22 Oct 2012 15:15:21 +0000 Subject: [PATCH] * libc/include/stdlib.h (strtof, strtoll, strtoull, strtold):Prototype if not __STRICT_ANSI__ or stdc version C99 or greater. --- newlib/ChangeLog | 5 +++++ newlib/libc/include/stdlib.h | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/newlib/ChangeLog b/newlib/ChangeLog index e89ae0dc6..17391bd51 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +2012-10-22 Jon TURNEY + + * libc/include/stdlib.h (strtof, strtoll, strtoull, strtold):Prototype + if not __STRICT_ANSI__ or stdc version C99 or greater. + 2012-10-21 Hans-Peter Nilsson * libc/sys/mmixware/sbrk.c (_sbrk): Drop unused extern declaration diff --git a/newlib/libc/include/stdlib.h b/newlib/libc/include/stdlib.h index 0bd2c7d7f..c3cb55203 100644 --- a/newlib/libc/include/stdlib.h +++ b/newlib/libc/include/stdlib.h @@ -125,7 +125,9 @@ _PTR _EXFUN(reallocf,(_PTR __r, size_t __size)); _VOID _EXFUN(srand,(unsigned __seed)); double _EXFUN(strtod,(const char *__n, char **__end_PTR)); double _EXFUN(_strtod_r,(struct _reent *,const char *__n, char **__end_PTR)); +#if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) float _EXFUN(strtof,(const char *__n, char **__end_PTR)); +#endif #ifndef __STRICT_ANSI__ /* the following strtodf interface is deprecated...use strtof instead */ # ifndef strtodf @@ -186,9 +188,17 @@ long long _EXFUN(atoll,(const char *__nptr)); long long _EXFUN(_atoll_r,(struct _reent *, const char *__nptr)); long long _EXFUN(llabs,(long long)); lldiv_t _EXFUN(lldiv,(long long __numer, long long __denom)); +#endif /* ! __STRICT_ANSI__ */ +#if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) long long _EXFUN(strtoll,(const char *__n, char **__end_PTR, int __base)); +#endif +#ifndef __STRICT_ANSI__ long long _EXFUN(_strtoll_r,(struct _reent *, const char *__n, char **__end_PTR, int __base)); +#endif /* ! __STRICT_ANSI__ */ +#if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) unsigned long long _EXFUN(strtoull,(const char *__n, char **__end_PTR, int __base)); +#endif +#ifndef __STRICT_ANSI__ unsigned long long _EXFUN(_strtoull_r,(struct _reent *, const char *__n, char **__end_PTR, int __base)); #ifndef __CYGWIN__ @@ -217,7 +227,9 @@ _VOID _EXFUN(__eprintf,(const char *, const char *, unsigned int, const char *)) /* On platforms where long double equals double. */ #ifdef _LDBL_EQ_DBL +#if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) extern long double strtold (const char *, char **); +#endif extern long double wcstold (const wchar_t *, wchar_t **); #endif /* _LDBL_EQ_DBL */