#include <stdlib.h>
#include <locale.h>
+extern long int __strtol (__const char *__restrict __nptr,
+ char **__restrict __endptr, int __base)
+ __THROW __nonnull ((1)) __wur attribute_hidden;
+__extension__
+extern long long int __strtoll (__const char *__restrict __nptr,
+ char **__restrict __endptr, int __base)
+ __THROW __nonnull ((1)) __wur attribute_hidden;
+
#ifdef __UCLIBC_HAS_WCHAR__
#include <wchar.h>
#if INT_MAX < LONG_MAX
-int atoi(const char *nptr)
+int attribute_hidden __atoi(const char *nptr)
{
- return (int) strtol(nptr, (char **) NULL, 10);
+ return (int) __strtol(nptr, (char **) NULL, 10);
}
+strong_alias(__atoi,atoi)
#endif /* INT_MAX < LONG_MAX */
/**********************************************************************/
#ifdef L_atol
-long atol(const char *nptr)
+long attribute_hidden __atol(const char *nptr)
{
- return strtol(nptr, (char **) NULL, 10);
+ return __strtol(nptr, (char **) NULL, 10);
}
+strong_alias(__atol,atol)
#if UINT_MAX == ULONG_MAX
-strong_alias(atol,atoi)
+hidden_strong_alias(__atol,__atoi)
+strong_alias(__atol,atoi)
#endif
#if defined(ULLONG_MAX) && (ULLONG_MAX == ULONG_MAX)
-strong_alias(atol,atoll)
+strong_alias(__atol,atoll)
#endif
#endif
long long atoll(const char *nptr)
{
- return strtoll(nptr, (char **) NULL, 10);
+ return __strtoll(nptr, (char **) NULL, 10);
}
#endif /* defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX) */
/**********************************************************************/
#if defined(L_strtol) || defined(L_strtol_l)
-long __XL(strtol)(const char * __restrict str, char ** __restrict endptr,
+long attribute_hidden __UCXL(strtol)(const char * __restrict str, char ** __restrict endptr,
int base __LOCALE_PARAM )
{
return __XL_NPP(_stdlib_strto_l)(str, endptr, base, 1 __LOCALE_ARG );
}
+__UCXL_ALIAS(strtol)
+
#if (ULONG_MAX == UINTMAX_MAX) && !defined(L_strtol_l)
strong_alias(strtol,strtoimax)
#endif
strong_alias(__XL(strtol),__XL(strtoll))
#endif
-__XL_ALIAS(strtol)
-
#endif
/**********************************************************************/
#if defined(L_strtoll) || defined(L_strtoll_l)
#if defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX)
-long long __XL(strtoll)(const char * __restrict str,
+long long attribute_hidden __UCXL(strtoll)(const char * __restrict str,
char ** __restrict endptr, int base
__LOCALE_PARAM )
{
__LOCALE_ARG );
}
+__UCXL_ALIAS(strtoll)
+
#if !defined(L_strtoll_l)
#if (ULLONG_MAX == UINTMAX_MAX)
strong_alias(strtoll,strtoimax)
strong_alias(strtoll,strtoq)
#endif
-__XL_ALIAS(strtoll)
-
#endif /* defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX) */
#endif
/**********************************************************************/
#if defined(L_strtoul) || defined(L_strtoul_l)
-unsigned long __XL(strtoul)(const char * __restrict str,
+unsigned long attribute_hidden __UCXL(strtoul)(const char * __restrict str,
char ** __restrict endptr, int base
__LOCALE_PARAM )
{
return __XL_NPP(_stdlib_strto_l)(str, endptr, base, 0 __LOCALE_ARG );
}
+__UCXL_ALIAS(strtoul)
+
#if (ULONG_MAX == UINTMAX_MAX) && !defined(L_strtoul_l)
strong_alias(strtoul,strtoumax)
#endif
strong_alias(__XL(strtoul),__XL(strtoull))
#endif
-__XL_ALIAS(strtoul)
#endif
/**********************************************************************/
#if defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX)
-unsigned long long __XL(strtoull)(const char * __restrict str,
+unsigned long long attribute_hidden __UCXL(strtoull)(const char * __restrict str,
char ** __restrict endptr, int base
__LOCALE_PARAM )
{
return __XL_NPP(_stdlib_strto_ll)(str, endptr, base, 0 __LOCALE_ARG );
}
+__UCXL_ALIAS(strtoull)
+
#if !defined(L_strtoull_l)
#if (ULLONG_MAX == UINTMAX_MAX)
strong_alias(strtoull,strtoumax)
strong_alias(strtoull,strtouq)
#endif
-__XL_ALIAS(strtoull)
-
#endif /* defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX) */
#endif
#if defined(__UCLIBC_HAS_XLOCALE__) && !defined(__UCLIBC_DO_XLOCALE)
-unsigned long _stdlib_strto_l(register const Wchar * __restrict str,
+unsigned long attribute_hidden _stdlib_strto_l(register const Wchar * __restrict str,
Wchar ** __restrict endptr, int base,
int sflag)
{
/* This is the main work fuction which handles both strtol (sflag = 1) and
* strtoul (sflag = 0). */
-unsigned long __XL_NPP(_stdlib_strto_l)(register const Wchar * __restrict str,
+unsigned long attribute_hidden __XL_NPP(_stdlib_strto_l)(register const Wchar * __restrict str,
Wchar ** __restrict endptr, int base,
int sflag __LOCALE_PARAM )
{
#if defined(__UCLIBC_HAS_XLOCALE__) && !defined(__UCLIBC_DO_XLOCALE)
-unsigned long long _stdlib_strto_ll(register const Wchar * __restrict str,
+unsigned long long attribute_hidden _stdlib_strto_ll(register const Wchar * __restrict str,
Wchar ** __restrict endptr, int base,
int sflag)
{
/* This is the main work fuction which handles both strtoll (sflag = 1) and
* strtoull (sflag = 0). */
-unsigned long long __XL_NPP(_stdlib_strto_ll)(register const Wchar * __restrict str,
+unsigned long long attribute_hidden __XL_NPP(_stdlib_strto_ll)(register const Wchar * __restrict str,
Wchar ** __restrict endptr, int base,
int sflag __LOCALE_PARAM )
{
/**********************************************************************/
#if defined(L_wcstol) || defined(L_wcstol_l)
-long __XL(wcstol)(const wchar_t * __restrict str,
+long __UCXL(wcstol)(const wchar_t * __restrict str,
wchar_t ** __restrict endptr, int base __LOCALE_PARAM )
{
return __XL_NPP(_stdlib_wcsto_l)(str, endptr, base, 1 __LOCALE_ARG );
}
+__UCXL_ALIAS(wcstol)
+
#if (ULONG_MAX == UINTMAX_MAX) && !defined(L_wcstol_l)
strong_alias(wcstol,wcstoimax)
#endif
strong_alias(__XL(wcstol),__XL(wcstoll))
#endif
-__XL_ALIAS(wcstol)
-
#endif
/**********************************************************************/
#if defined(L_wcstoll) || defined(L_wcstoll_l)
#if defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX)
-long long __XL(wcstoll)(const wchar_t * __restrict str,
+long long attribute_hidden __UCXL(wcstoll)(const wchar_t * __restrict str,
wchar_t ** __restrict endptr, int base
__LOCALE_PARAM )
{
__LOCALE_ARG );
}
+__UCXL_ALIAS(wcstoll)
+
#if !defined(L_wcstoll_l)
#if (ULLONG_MAX == UINTMAX_MAX)
strong_alias(wcstoll,wcstoimax)
strong_alias(wcstoll,wcstoq)
#endif
-__XL_ALIAS(wcstoll)
-
#endif /* defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX) */
#endif
/**********************************************************************/
#if defined(L_wcstoul) || defined(L_wcstoul_l)
-unsigned long __XL(wcstoul)(const wchar_t * __restrict str,
+unsigned long attribute_hidden __UCXL(wcstoul)(const wchar_t * __restrict str,
wchar_t ** __restrict endptr, int base
__LOCALE_PARAM )
{
return __XL_NPP(_stdlib_wcsto_l)(str, endptr, base, 0 __LOCALE_ARG );
}
+__UCXL_ALIAS(wcstoul)
+
#if (ULONG_MAX == UINTMAX_MAX) && !defined(L_wcstoul_l)
strong_alias(wcstoul,wcstoumax)
#endif
strong_alias(__XL(wcstoul),__XL(wcstoull))
#endif
-__XL_ALIAS(wcstoul)
-
#endif
/**********************************************************************/
#if defined(L_wcstoull) || defined(L_wcstoull_l)
#if defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX)
-unsigned long long __XL(wcstoull)(const wchar_t * __restrict str,
+unsigned long long attribute_hidden __UCXL(wcstoull)(const wchar_t * __restrict str,
wchar_t ** __restrict endptr, int base
__LOCALE_PARAM )
{
return __XL_NPP(_stdlib_wcsto_ll)(str, endptr, base, 0 __LOCALE_ARG );
}
+__UCXL_ALIAS(wcstoull)
+
#if !defined(L_wcstoull_l)
#if (ULLONG_MAX == UINTMAX_MAX)
strong_alias(wcstoull,wcstoumax)
strong_alias(wcstoull,wcstouq)
#endif
-__XL_ALIAS(wcstoull)
-
#endif /* defined(ULLONG_MAX) && (LLONG_MAX > LONG_MAX) */
#endif
/**********************************************************************/
-