mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-18 12:29:32 +08:00
* include/_mingw.h (__CRT_INLINE): Define.
* include/ctype.h: Replace 'extern inline' with __CRT_INLINE, throughout * include/inttypes.h: Likewise. * include/math.h: Likewise. * include/stdio.h: Likewise. * include/stdlib.h: Likewise. * include/string.h: Likewise. * include/wchar.h: Likewise. * include/wctype.h: Likewise.
This commit is contained in:
parent
92694c7a96
commit
8852e9c5f1
@ -1,3 +1,16 @@
|
||||
2003-07-24 Danny Smith <dannysmith@users.sourceforge.net>
|
||||
|
||||
* include/_mingw.h (__CRT_INLINE): Define.
|
||||
* include/ctype.h: Replace 'extern inline' with __CRT_INLINE,
|
||||
throughout
|
||||
* include/inttypes.h: Likewise.
|
||||
* include/math.h: Likewise.
|
||||
* include/stdio.h: Likewise.
|
||||
* include/stdlib.h: Likewise.
|
||||
* include/string.h: Likewise.
|
||||
* include/wchar.h: Likewise.
|
||||
* include/wctype.h: Likewise.
|
||||
|
||||
2003-09-22 Roland Schwingel <rolandschwingel@users.sourceforge.net>
|
||||
|
||||
* mingwex/dirent.c (_topendir): Allocate enough memory for
|
||||
|
@ -100,6 +100,12 @@
|
||||
# endif
|
||||
#endif /* __GNUC__ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define __CRT_INLINE inline
|
||||
#else
|
||||
#define __CRT_INLINE extern __inline__
|
||||
#endif
|
||||
|
||||
#define __MINGW32_VERSION 3.2
|
||||
#define __MINGW32_MAJOR_VERSION 3
|
||||
#define __MINGW32_MINOR_VERSION 2
|
||||
|
@ -156,21 +156,21 @@ extern unsigned short** _imp___ctype;
|
||||
|| defined (__STRICT_ANSI__ ))
|
||||
/* use simple lookup if SB locale, else _isctype() */
|
||||
#define __ISCTYPE(c, mask) (MB_CUR_MAX == 1 ? (_pctype[c] & mask) : _isctype(c, mask))
|
||||
extern __inline__ int __cdecl isalnum(int c) {return __ISCTYPE(c, (_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl isalpha(int c) {return __ISCTYPE(c, _ALPHA);}
|
||||
extern __inline__ int __cdecl iscntrl(int c) {return __ISCTYPE(c, _CONTROL);}
|
||||
extern __inline__ int __cdecl isdigit(int c) {return __ISCTYPE(c, _DIGIT);}
|
||||
extern __inline__ int __cdecl isgraph(int c) {return __ISCTYPE(c, (_PUNCT|_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl islower(int c) {return __ISCTYPE(c, _LOWER);}
|
||||
extern __inline__ int __cdecl isprint(int c) {return __ISCTYPE(c, (_BLANK|_PUNCT|_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl ispunct(int c) {return __ISCTYPE(c, _PUNCT);}
|
||||
extern __inline__ int __cdecl isspace(int c) {return __ISCTYPE(c, _SPACE);}
|
||||
extern __inline__ int __cdecl isupper(int c) {return __ISCTYPE(c, _UPPER);}
|
||||
extern __inline__ int __cdecl isxdigit(int c) {return __ISCTYPE(c, _HEX);}
|
||||
__CRT_INLINE int __cdecl isalnum(int c) {return __ISCTYPE(c, (_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl isalpha(int c) {return __ISCTYPE(c, _ALPHA);}
|
||||
__CRT_INLINE int __cdecl iscntrl(int c) {return __ISCTYPE(c, _CONTROL);}
|
||||
__CRT_INLINE int __cdecl isdigit(int c) {return __ISCTYPE(c, _DIGIT);}
|
||||
__CRT_INLINE int __cdecl isgraph(int c) {return __ISCTYPE(c, (_PUNCT|_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl islower(int c) {return __ISCTYPE(c, _LOWER);}
|
||||
__CRT_INLINE int __cdecl isprint(int c) {return __ISCTYPE(c, (_BLANK|_PUNCT|_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl ispunct(int c) {return __ISCTYPE(c, _PUNCT);}
|
||||
__CRT_INLINE int __cdecl isspace(int c) {return __ISCTYPE(c, _SPACE);}
|
||||
__CRT_INLINE int __cdecl isupper(int c) {return __ISCTYPE(c, _UPPER);}
|
||||
__CRT_INLINE int __cdecl isxdigit(int c) {return __ISCTYPE(c, _HEX);}
|
||||
|
||||
/* these reproduce behaviour of lib underscored versions */
|
||||
extern __inline__ int __cdecl _tolower(int c) {return ( c -'A'+'a');}
|
||||
extern __inline__ int __cdecl _toupper(int c) {return ( c -'a'+'A');}
|
||||
__CRT_INLINE int __cdecl _tolower(int c) {return ( c -'A'+'a');}
|
||||
__CRT_INLINE int __cdecl _toupper(int c) {return ( c -'a'+'A');}
|
||||
|
||||
/* TODO? Is it worth inlining ANSI tolower, toupper? Probably only
|
||||
if we only want C-locale. */
|
||||
@ -212,19 +212,19 @@ _CRTIMP int __cdecl isleadbyte (int);
|
||||
#if ! (defined (__NO_INLINE__) || defined(__NO_CTYPE_INLINES) \
|
||||
|| defined(__WCTYPE_INLINES_DEFINED))
|
||||
#define __WCTYPE_INLINES_DEFINED
|
||||
extern __inline__ int __cdecl iswalnum(wint_t wc) {return (iswctype(wc,_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl iswalpha(wint_t wc) {return (iswctype(wc,_ALPHA));}
|
||||
extern __inline__ int __cdecl iswascii(wint_t wc) {return ((wc & ~0x7F) ==0);}
|
||||
extern __inline__ int __cdecl iswcntrl(wint_t wc) {return (iswctype(wc,_CONTROL));}
|
||||
extern __inline__ int __cdecl iswdigit(wint_t wc) {return (iswctype(wc,_DIGIT));}
|
||||
extern __inline__ int __cdecl iswgraph(wint_t wc) {return (iswctype(wc,_PUNCT|_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl iswlower(wint_t wc) {return (iswctype(wc,_LOWER));}
|
||||
extern __inline__ int __cdecl iswprint(wint_t wc) {return (iswctype(wc,_BLANK|_PUNCT|_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl iswpunct(wint_t wc) {return (iswctype(wc,_PUNCT));}
|
||||
extern __inline__ int __cdecl iswspace(wint_t wc) {return (iswctype(wc,_SPACE));}
|
||||
extern __inline__ int __cdecl iswupper(wint_t wc) {return (iswctype(wc,_UPPER));}
|
||||
extern __inline__ int __cdecl iswxdigit(wint_t wc) {return (iswctype(wc,_HEX));}
|
||||
extern __inline__ int __cdecl isleadbyte(int c) {return (_pctype[(unsigned char)(c)] & _LEADBYTE);}
|
||||
__CRT_INLINE int __cdecl iswalnum(wint_t wc) {return (iswctype(wc,_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswalpha(wint_t wc) {return (iswctype(wc,_ALPHA));}
|
||||
__CRT_INLINE int __cdecl iswascii(wint_t wc) {return ((wc & ~0x7F) ==0);}
|
||||
__CRT_INLINE int __cdecl iswcntrl(wint_t wc) {return (iswctype(wc,_CONTROL));}
|
||||
__CRT_INLINE int __cdecl iswdigit(wint_t wc) {return (iswctype(wc,_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswgraph(wint_t wc) {return (iswctype(wc,_PUNCT|_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswlower(wint_t wc) {return (iswctype(wc,_LOWER));}
|
||||
__CRT_INLINE int __cdecl iswprint(wint_t wc) {return (iswctype(wc,_BLANK|_PUNCT|_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswpunct(wint_t wc) {return (iswctype(wc,_PUNCT));}
|
||||
__CRT_INLINE int __cdecl iswspace(wint_t wc) {return (iswctype(wc,_SPACE));}
|
||||
__CRT_INLINE int __cdecl iswupper(wint_t wc) {return (iswctype(wc,_UPPER));}
|
||||
__CRT_INLINE int __cdecl iswxdigit(wint_t wc) {return (iswctype(wc,_HEX));}
|
||||
__CRT_INLINE int __cdecl isleadbyte(int c) {return (_pctype[(unsigned char)(c)] & _LEADBYTE);}
|
||||
#endif /* !(defined(__NO_CTYPE_INLINES) || defined(__WCTYPE_INLINES_DEFINED)) */
|
||||
|
||||
#ifndef __STRICT_ANSI__
|
||||
@ -234,10 +234,10 @@ int __cdecl __iscsymf (int); /* Valid first character in C symbol */
|
||||
int __cdecl __iscsym (int); /* Valid character in C symbol (after first) */
|
||||
|
||||
#if !(defined (__NO_INLINE__) || defined (__NO_CTYPE_INLINES))
|
||||
extern __inline__ int __cdecl __isascii(int c) {return ((c & ~0x7F) == 0);}
|
||||
extern __inline__ int __cdecl __toascii(int c) {return (c & 0x7F);}
|
||||
extern __inline__ int __cdecl __iscsymf(int c) {return (isalpha(c) || (c == '_'));}
|
||||
extern __inline__ int __cdecl __iscsym(int c) {return (isalnum(c) || (c == '_'));}
|
||||
__CRT_INLINE int __cdecl __isascii(int c) {return ((c & ~0x7F) == 0);}
|
||||
__CRT_INLINE int __cdecl __toascii(int c) {return (c & 0x7F);}
|
||||
__CRT_INLINE int __cdecl __iscsymf(int c) {return (isalpha(c) || (c == '_'));}
|
||||
__CRT_INLINE int __cdecl __iscsym(int c) {return (isalnum(c) || (c == '_'));}
|
||||
#endif /* __NO_CTYPE_INLINES */
|
||||
|
||||
#ifndef _NO_OLDNAMES
|
||||
|
@ -254,7 +254,7 @@ typedef struct {
|
||||
|
||||
#endif /* !defined(__cplusplus) || defined(__STDC_FORMAT_MACROS) */
|
||||
|
||||
extern __inline__ intmax_t __cdecl imaxabs (intmax_t j)
|
||||
__CRT_INLINE intmax_t __cdecl imaxabs (intmax_t j)
|
||||
{return (j >= 0 ? j : -j);}
|
||||
imaxdiv_t __cdecl imaxdiv (intmax_t numer, intmax_t denom);
|
||||
|
||||
|
@ -273,7 +273,7 @@ _CRTIMP int __cdecl fpclass (double);
|
||||
extern int __cdecl __fpclassifyf (float);
|
||||
extern int __cdecl __fpclassify (double);
|
||||
|
||||
extern __inline__ int __cdecl __fpclassifyl (long double x){
|
||||
__CRT_INLINE int __cdecl __fpclassifyl (long double x){
|
||||
unsigned short sw;
|
||||
__asm__ ("fxam; fstsw %%ax;" : "=a" (sw): "t" (x));
|
||||
return sw & (FP_NAN | FP_NORMAL | FP_ZERO );
|
||||
@ -293,7 +293,7 @@ extern __inline__ int __cdecl __fpclassifyl (long double x){
|
||||
/* We don't need to worry about trucation here:
|
||||
A NaN stays a NaN. */
|
||||
|
||||
extern __inline__ int __cdecl __isnan (double _x)
|
||||
__CRT_INLINE int __cdecl __isnan (double _x)
|
||||
{
|
||||
unsigned short sw;
|
||||
__asm__ ("fxam;"
|
||||
@ -302,7 +302,7 @@ extern __inline__ int __cdecl __isnan (double _x)
|
||||
== FP_NAN;
|
||||
}
|
||||
|
||||
extern __inline__ int __cdecl __isnanf (float _x)
|
||||
__CRT_INLINE int __cdecl __isnanf (float _x)
|
||||
{
|
||||
unsigned short sw;
|
||||
__asm__ ("fxam;"
|
||||
@ -311,7 +311,7 @@ extern __inline__ int __cdecl __isnanf (float _x)
|
||||
== FP_NAN;
|
||||
}
|
||||
|
||||
extern __inline__ int __cdecl __isnanl (long double _x)
|
||||
__CRT_INLINE int __cdecl __isnanl (long double _x)
|
||||
{
|
||||
unsigned short sw;
|
||||
__asm__ ("fxam;"
|
||||
@ -329,19 +329,19 @@ extern __inline__ int __cdecl __isnanl (long double _x)
|
||||
#define isnormal(x) (fpclassify(x) == FP_NORMAL)
|
||||
|
||||
/* 7.12.3.6 The signbit macro */
|
||||
extern __inline__ int __cdecl __signbit (double x) {
|
||||
__CRT_INLINE int __cdecl __signbit (double x) {
|
||||
unsigned short stw;
|
||||
__asm__ ( "fxam; fstsw %%ax;": "=a" (stw) : "t" (x));
|
||||
return stw & 0x0200;
|
||||
}
|
||||
|
||||
extern __inline__ int __cdecl __signbitf (float x) {
|
||||
__CRT_INLINE int __cdecl __signbitf (float x) {
|
||||
unsigned short stw;
|
||||
__asm__ ("fxam; fstsw %%ax;": "=a" (stw) : "t" (x));
|
||||
return stw & 0x0200;
|
||||
}
|
||||
|
||||
extern __inline__ int __cdecl __signbitl (long double x) {
|
||||
__CRT_INLINE int __cdecl __signbitl (long double x) {
|
||||
unsigned short stw;
|
||||
__asm__ ("fxam; fstsw %%ax;": "=a" (stw) : "t" (x));
|
||||
return stw & 0x0200;
|
||||
@ -374,15 +374,15 @@ extern float __cdecl atan2f (float, float);
|
||||
extern long double __cdecl atan2l (long double, long double);
|
||||
|
||||
/* 7.12.5 Hyperbolic functions: Double in C89 */
|
||||
extern __inline__ float __cdecl sinhf (float x)
|
||||
__CRT_INLINE float __cdecl sinhf (float x)
|
||||
{return (float) sinh (x);}
|
||||
extern long double __cdecl sinhl (long double);
|
||||
|
||||
extern __inline__ float __cdecl coshf (float x)
|
||||
__CRT_INLINE float __cdecl coshf (float x)
|
||||
{return (float) cosh (x);}
|
||||
extern long double __cdecl coshl (long double);
|
||||
|
||||
extern __inline__ float __cdecl tanhf (float x)
|
||||
__CRT_INLINE float __cdecl tanhf (float x)
|
||||
{return (float) tanh (x);}
|
||||
extern long double __cdecl tanhl (long double);
|
||||
|
||||
@ -391,7 +391,7 @@ extern long double __cdecl tanhl (long double);
|
||||
*/
|
||||
|
||||
/* 7.12.6.1 Double in C89 */
|
||||
extern __inline__ float __cdecl expf (float x)
|
||||
__CRT_INLINE float __cdecl expf (float x)
|
||||
{return (float) exp (x);}
|
||||
extern long double __cdecl expl (long double);
|
||||
|
||||
@ -403,7 +403,7 @@ extern long double __cdecl exp2l(long double);
|
||||
/* 7.12.6.3 The expm1 functions: TODO */
|
||||
|
||||
/* 7.12.6.4 Double in C89 */
|
||||
extern __inline__ float __cdecl frexpf (float x, int* expn)
|
||||
__CRT_INLINE float __cdecl frexpf (float x, int* expn)
|
||||
{return (float) frexp (x, expn);}
|
||||
extern long double __cdecl frexpl (long double, int*);
|
||||
|
||||
@ -415,7 +415,7 @@ extern int __cdecl ilogbf (float);
|
||||
extern int __cdecl ilogbl (long double);
|
||||
|
||||
/* 7.12.6.6 Double in C89 */
|
||||
extern __inline__ float __cdecl ldexpf (float x, int expn)
|
||||
__CRT_INLINE float __cdecl ldexpf (float x, int expn)
|
||||
{return (float) ldexp (x, expn);}
|
||||
extern long double __cdecl ldexpl (long double, int);
|
||||
|
||||
@ -442,7 +442,7 @@ extern double __cdecl logb (double);
|
||||
extern float __cdecl logbf (float);
|
||||
extern long double __cdecl logbl (long double);
|
||||
|
||||
extern __inline__ double __cdecl logb (double x)
|
||||
__CRT_INLINE double __cdecl logb (double x)
|
||||
{
|
||||
double res;
|
||||
__asm__ ("fxtract\n\t"
|
||||
@ -450,7 +450,7 @@ extern __inline__ double __cdecl logb (double x)
|
||||
return res;
|
||||
}
|
||||
|
||||
extern __inline__ float __cdecl logbf (float x)
|
||||
__CRT_INLINE float __cdecl logbf (float x)
|
||||
{
|
||||
float res;
|
||||
__asm__ ("fxtract\n\t"
|
||||
@ -458,7 +458,7 @@ extern __inline__ float __cdecl logbf (float x)
|
||||
return res;
|
||||
}
|
||||
|
||||
extern __inline__ long double __cdecl logbl (long double x)
|
||||
__CRT_INLINE long double __cdecl logbl (long double x)
|
||||
{
|
||||
long double res;
|
||||
__asm__ ("fxtract\n\t"
|
||||
@ -491,12 +491,12 @@ extern long double __cdecl fabsl (long double x);
|
||||
|
||||
/* 7.12.7.3 */
|
||||
extern double __cdecl hypot (double, double); /* in libmoldname.a */
|
||||
extern __inline__ float __cdecl hypotf (float x, float y)
|
||||
__CRT_INLINE float __cdecl hypotf (float x, float y)
|
||||
{ return (float) hypot (x, y);}
|
||||
extern long double __cdecl hypotl (long double, long double);
|
||||
|
||||
/* 7.12.7.4 The pow functions. Double in C89 */
|
||||
extern __inline__ float __cdecl powf (float x, float y)
|
||||
__CRT_INLINE float __cdecl powf (float x, float y)
|
||||
{return (float) pow (x, y);}
|
||||
extern long double __cdecl powl (long double, long double);
|
||||
|
||||
@ -543,21 +543,21 @@ extern long double __cdecl nearbyintl (long double);
|
||||
|
||||
/* 7.12.9.4 */
|
||||
/* round, using fpu control word settings */
|
||||
extern __inline__ double __cdecl rint (double x)
|
||||
__CRT_INLINE double __cdecl rint (double x)
|
||||
{
|
||||
double retval;
|
||||
__asm__ ("frndint;": "=t" (retval) : "0" (x));
|
||||
return retval;
|
||||
}
|
||||
|
||||
extern __inline__ float __cdecl rintf (float x)
|
||||
__CRT_INLINE float __cdecl rintf (float x)
|
||||
{
|
||||
float retval;
|
||||
__asm__ ("frndint;" : "=t" (retval) : "0" (x) );
|
||||
return retval;
|
||||
}
|
||||
|
||||
extern __inline__ long double __cdecl rintl (long double x)
|
||||
__CRT_INLINE long double __cdecl rintl (long double x)
|
||||
{
|
||||
long double retval;
|
||||
__asm__ ("frndint;" : "=t" (retval) : "0" (x) );
|
||||
@ -565,7 +565,7 @@ extern __inline__ long double __cdecl rintl (long double x)
|
||||
}
|
||||
|
||||
/* 7.12.9.5 */
|
||||
extern __inline__ long __cdecl lrint (double x)
|
||||
__CRT_INLINE long __cdecl lrint (double x)
|
||||
{
|
||||
long retval;
|
||||
__asm__ __volatile__ \
|
||||
@ -573,7 +573,7 @@ extern __inline__ long __cdecl lrint (double x)
|
||||
return retval;
|
||||
}
|
||||
|
||||
extern __inline__ long __cdecl lrintf (float x)
|
||||
__CRT_INLINE long __cdecl lrintf (float x)
|
||||
{
|
||||
long retval;
|
||||
__asm__ __volatile__ \
|
||||
@ -581,7 +581,7 @@ extern __inline__ long __cdecl lrintf (float x)
|
||||
return retval;
|
||||
}
|
||||
|
||||
extern __inline__ long __cdecl lrintl (long double x)
|
||||
__CRT_INLINE long __cdecl lrintl (long double x)
|
||||
{
|
||||
long retval;
|
||||
__asm__ __volatile__ \
|
||||
@ -589,7 +589,7 @@ extern __inline__ long __cdecl lrintl (long double x)
|
||||
return retval;
|
||||
}
|
||||
|
||||
extern __inline__ long long __cdecl llrint (double x)
|
||||
__CRT_INLINE long long __cdecl llrint (double x)
|
||||
{
|
||||
long long retval;
|
||||
__asm__ __volatile__ \
|
||||
@ -597,7 +597,7 @@ extern __inline__ long long __cdecl llrint (double x)
|
||||
return retval;
|
||||
}
|
||||
|
||||
extern __inline__ long long __cdecl llrintf (float x)
|
||||
__CRT_INLINE long long __cdecl llrintf (float x)
|
||||
{
|
||||
long long retval;
|
||||
__asm__ __volatile__ \
|
||||
@ -605,7 +605,7 @@ extern __inline__ long long __cdecl llrintf (float x)
|
||||
return retval;
|
||||
}
|
||||
|
||||
extern __inline__ long long __cdecl llrintl (long double x)
|
||||
__CRT_INLINE long long __cdecl llrintl (long double x)
|
||||
{
|
||||
long long retval;
|
||||
__asm__ __volatile__ \
|
||||
@ -720,7 +720,7 @@ extern long double __cdecl fmal (long double, long double, long double);
|
||||
|
||||
#else
|
||||
/* helper */
|
||||
extern __inline__ int __cdecl
|
||||
__CRT_INLINE int __cdecl
|
||||
__fp_unordered_compare (long double x, long double y){
|
||||
unsigned short retval;
|
||||
__asm__ ("fucom %%st(1);"
|
||||
|
@ -222,7 +222,7 @@ _CRTIMP int __cdecl _vsnprintf (char*, size_t, const char*, __VALIST);
|
||||
|
||||
#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
|
||||
int __cdecl snprintf(char* s, size_t n, const char* format, ...);
|
||||
extern __inline__ int __cdecl
|
||||
__CRT_INLINE int __cdecl
|
||||
vsnprintf (char* s, size_t n, const char* format, __VALIST arg)
|
||||
{ return _vsnprintf ( s, n, format, arg); }
|
||||
int __cdecl vscanf (const char * __restrict__, __VALIST);
|
||||
@ -387,7 +387,7 @@ _CRTIMP FILE* __cdecl _wpopen (const wchar_t*, const wchar_t*);
|
||||
|
||||
#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
|
||||
int __cdecl snwprintf (wchar_t* s, size_t n, const wchar_t* format, ...);
|
||||
extern __inline__ int __cdecl
|
||||
__CRT_INLINE int __cdecl
|
||||
vsnwprintf (wchar_t* s, size_t n, const wchar_t* format, __VALIST arg)
|
||||
{ return _vsnwprintf ( s, n, format, arg);}
|
||||
int __cdecl vwscanf (const wchar_t * __restrict__, __VALIST);
|
||||
|
@ -329,7 +329,7 @@ _CRTIMP long __cdecl _wtol (const wchar_t *);
|
||||
|
||||
_CRTIMP double __cdecl strtod (const char*, char**);
|
||||
#if !defined __NO_ISOCEXT /* extern stub in static libmingwex.a */
|
||||
extern __inline__ float __cdecl strtof (const char *nptr, char **endptr)
|
||||
__CRT_INLINE float __cdecl strtof (const char *nptr, char **endptr)
|
||||
{ return (strtod (nptr, endptr));}
|
||||
long double __cdecl strtold (const char * __restrict__, char ** __restrict__);
|
||||
#endif /* __NO_ISOCEXT */
|
||||
@ -341,7 +341,7 @@ _CRTIMP unsigned long __cdecl strtoul (const char*, char**, int);
|
||||
/* also declared in wchar.h */
|
||||
_CRTIMP double __cdecl wcstod (const wchar_t*, wchar_t**);
|
||||
#if !defined __NO_ISOCEXT /* extern stub in static libmingwex.a */
|
||||
extern __inline__ float __cdecl wcstof( const wchar_t *nptr, wchar_t **endptr)
|
||||
__CRT_INLINE float __cdecl wcstof( const wchar_t *nptr, wchar_t **endptr)
|
||||
{ return (wcstod(nptr, endptr)); }
|
||||
long double __cdecl wcstold (const wchar_t * __restrict__, wchar_t ** __restrict__);
|
||||
#endif /* __NO_ISOCEXT */
|
||||
@ -479,7 +479,7 @@ _CRTIMP char* __cdecl gcvt (double, int, char*);
|
||||
/* C99 name for _exit */
|
||||
void __cdecl _Exit(int) _ATTRIB_NORETURN;
|
||||
#ifndef __STRICT_ANSI__ /* inline using non-ansi functions */
|
||||
extern __inline__ void __cdecl _Exit(int status)
|
||||
__CRT_INLINE void __cdecl _Exit(int status)
|
||||
{ _exit(status); }
|
||||
#endif
|
||||
|
||||
@ -487,7 +487,7 @@ typedef struct { long long quot, rem; } lldiv_t;
|
||||
|
||||
lldiv_t __cdecl lldiv (long long, long long);
|
||||
|
||||
extern __inline__ long long __cdecl llabs(long long _j)
|
||||
__CRT_INLINE long long __cdecl llabs(long long _j)
|
||||
{return (_j >= 0 ? _j : -_j);}
|
||||
|
||||
long long __cdecl strtoll (const char* __restrict__, char** __restrict, int);
|
||||
@ -504,17 +504,17 @@ wchar_t* __cdecl lltow (long long, wchar_t *, int);
|
||||
wchar_t* __cdecl ulltow (unsigned long long, wchar_t *, int);
|
||||
|
||||
/* inline using non-ansi functions */
|
||||
extern __inline__ long long __cdecl atoll (const char * _c)
|
||||
__CRT_INLINE long long __cdecl atoll (const char * _c)
|
||||
{ return _atoi64 (_c); }
|
||||
extern __inline__ char* __cdecl lltoa (long long _n, char * _c, int _i)
|
||||
__CRT_INLINE char* __cdecl lltoa (long long _n, char * _c, int _i)
|
||||
{ return _i64toa (_n, _c, _i); }
|
||||
extern __inline__ char* __cdecl ulltoa (unsigned long long _n, char * _c, int _i)
|
||||
__CRT_INLINE char* __cdecl ulltoa (unsigned long long _n, char * _c, int _i)
|
||||
{ return _ui64toa (_n, _c, _i); }
|
||||
extern __inline__ long long __cdecl wtoll (const wchar_t * _w)
|
||||
__CRT_INLINE long long __cdecl wtoll (const wchar_t * _w)
|
||||
{ return _wtoi64 (_w); }
|
||||
extern __inline__ wchar_t* __cdecl lltow (long long _n, wchar_t * _w, int _i)
|
||||
__CRT_INLINE wchar_t* __cdecl lltow (long long _n, wchar_t * _w, int _i)
|
||||
{ return _i64tow (_n, _w, _i); }
|
||||
extern __inline__ wchar_t* __cdecl ulltow (unsigned long long _n, wchar_t * _w, int _i)
|
||||
__CRT_INLINE wchar_t* __cdecl ulltow (unsigned long long _n, wchar_t * _w, int _i)
|
||||
{ return _ui64tow (_n, _w, _i); }
|
||||
#endif /* (__STRICT_ANSI__) */
|
||||
|
||||
|
@ -161,13 +161,13 @@ _CRTIMP int __cdecl memicmp (const void*, const void*, size_t);
|
||||
_CRTIMP char* __cdecl strdup (const char*);
|
||||
_CRTIMP int __cdecl strcmpi (const char*, const char*);
|
||||
_CRTIMP int __cdecl stricmp (const char*, const char*);
|
||||
extern __inline__ int __cdecl
|
||||
__CRT_INLINE int __cdecl
|
||||
strcasecmp (const char * __sz1, const char * __sz2)
|
||||
{return _stricmp (__sz1, __sz2);}
|
||||
_CRTIMP int __cdecl stricoll (const char*, const char*);
|
||||
_CRTIMP char* __cdecl strlwr (char*);
|
||||
_CRTIMP int __cdecl strnicmp (const char*, const char*, size_t);
|
||||
extern __inline__ int __cdecl
|
||||
__CRT_INLINE int __cdecl
|
||||
strncasecmp (const char * __sz1, const char * __sz2, size_t __sizeMaxCompare)
|
||||
{return _strnicmp (__sz1, __sz2, __sizeMaxCompare);}
|
||||
_CRTIMP char* __cdecl strnset (char*, int, size_t);
|
||||
@ -179,7 +179,7 @@ _CRTIMP void __cdecl swab (const char*, char*, size_t);
|
||||
#endif /* _UWIN */
|
||||
|
||||
/* NOTE: There is no _wcscmpi, but this is for compatibility. */
|
||||
extern __inline__ int __cdecl
|
||||
__CRT_INLINE int __cdecl
|
||||
wcscmpi (const wchar_t * __ws1, const wchar_t * __ws2)
|
||||
{return _wcsicmp (__ws1, __ws2);}
|
||||
_CRTIMP wchar_t* __cdecl wcsdup (wchar_t*);
|
||||
|
@ -119,7 +119,7 @@ _CRTIMP wint_t __cdecl ungetwc (wchar_t, FILE*);
|
||||
|
||||
#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
|
||||
int __cdecl snwprintf (wchar_t* s, size_t n, const wchar_t* format, ...);
|
||||
extern __inline__ int __cdecl
|
||||
__CRT_INLINE int __cdecl
|
||||
vsnwprintf (wchar_t* s, size_t n, const wchar_t* format, __VALIST arg)
|
||||
{ return _vsnwprintf ( s, n, format, arg);}
|
||||
int __cdecl vwscanf (const wchar_t * __restrict__, __VALIST);
|
||||
@ -253,7 +253,7 @@ _CRTIMP long __cdecl wcstol (const wchar_t*, wchar_t**, int);
|
||||
_CRTIMP unsigned long __cdecl wcstoul (const wchar_t*, wchar_t**, int);
|
||||
_CRTIMP double __cdecl wcstod (const wchar_t*, wchar_t**);
|
||||
#if !defined __NO_ISOCEXT /* extern stub in static libmingwex.a */
|
||||
extern __inline__ float __cdecl wcstof( const wchar_t *nptr, wchar_t **endptr)
|
||||
__CRT_INLINE float __cdecl wcstof( const wchar_t *nptr, wchar_t **endptr)
|
||||
{ return (wcstod(nptr, endptr)); }
|
||||
long double __cdecl wcstold (const wchar_t * __restrict__, wchar_t ** __restrict__);
|
||||
#endif /* __NO_ISOCEXT */
|
||||
@ -298,8 +298,8 @@ size_t __cdecl wcsrtombs(char *, const wchar_t **, size_t, mbstate_t *);
|
||||
int __cdecl wctob(wint_t);
|
||||
|
||||
#ifndef __NO_ISOCEXT /* these need static lib libmingwex.a */
|
||||
extern __inline__ int __cdecl fwide(FILE* stream, int mode) {return -1;} /* limited to byte orientation */
|
||||
extern __inline__ int __cdecl mbsinit(const mbstate_t* ps) {return 1;}
|
||||
__CRT_INLINE int __cdecl fwide(FILE* stream, int mode) {return -1;} /* limited to byte orientation */
|
||||
__CRT_INLINE int __cdecl mbsinit(const mbstate_t* ps) {return 1;}
|
||||
wchar_t* __cdecl wmemset(wchar_t* s, wchar_t c, size_t n);
|
||||
wchar_t* __cdecl wmemchr(const wchar_t* s, wchar_t c, size_t n);
|
||||
int wmemcmp(const wchar_t* s1, const wchar_t * s2, size_t n);
|
||||
|
@ -111,19 +111,19 @@ extern unsigned short** _imp___ctype;
|
||||
#if !(defined (__NO_INLINE__) || defined(__NO_CTYPE_INLINES) \
|
||||
|| defined(__WCTYPE_INLINES_DEFINED))
|
||||
#define __WCTYPE_INLINES_DEFINED
|
||||
extern __inline__ int __cdecl iswalnum(wint_t wc) {return (iswctype(wc,_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl iswalpha(wint_t wc) {return (iswctype(wc,_ALPHA));}
|
||||
extern __inline__ int __cdecl iswascii(wint_t wc) {return ((wc & ~0x7F) ==0);}
|
||||
extern __inline__ int __cdecl iswcntrl(wint_t wc) {return (iswctype(wc,_CONTROL));}
|
||||
extern __inline__ int __cdecl iswdigit(wint_t wc) {return (iswctype(wc,_DIGIT));}
|
||||
extern __inline__ int __cdecl iswgraph(wint_t wc) {return (iswctype(wc,_PUNCT|_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl iswlower(wint_t wc) {return (iswctype(wc,_LOWER));}
|
||||
extern __inline__ int __cdecl iswprint(wint_t wc) {return (iswctype(wc,_BLANK|_PUNCT|_ALPHA|_DIGIT));}
|
||||
extern __inline__ int __cdecl iswpunct(wint_t wc) {return (iswctype(wc,_PUNCT));}
|
||||
extern __inline__ int __cdecl iswspace(wint_t wc) {return (iswctype(wc,_SPACE));}
|
||||
extern __inline__ int __cdecl iswupper(wint_t wc) {return (iswctype(wc,_UPPER));}
|
||||
extern __inline__ int __cdecl iswxdigit(wint_t wc) {return (iswctype(wc,_HEX));}
|
||||
extern __inline__ int __cdecl isleadbyte(int c) {return (_pctype[(unsigned char)(c)] & _LEADBYTE);}
|
||||
__CRT_INLINE int __cdecl iswalnum(wint_t wc) {return (iswctype(wc,_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswalpha(wint_t wc) {return (iswctype(wc,_ALPHA));}
|
||||
__CRT_INLINE int __cdecl iswascii(wint_t wc) {return ((wc & ~0x7F) ==0);}
|
||||
__CRT_INLINE int __cdecl iswcntrl(wint_t wc) {return (iswctype(wc,_CONTROL));}
|
||||
__CRT_INLINE int __cdecl iswdigit(wint_t wc) {return (iswctype(wc,_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswgraph(wint_t wc) {return (iswctype(wc,_PUNCT|_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswlower(wint_t wc) {return (iswctype(wc,_LOWER));}
|
||||
__CRT_INLINE int __cdecl iswprint(wint_t wc) {return (iswctype(wc,_BLANK|_PUNCT|_ALPHA|_DIGIT));}
|
||||
__CRT_INLINE int __cdecl iswpunct(wint_t wc) {return (iswctype(wc,_PUNCT));}
|
||||
__CRT_INLINE int __cdecl iswspace(wint_t wc) {return (iswctype(wc,_SPACE));}
|
||||
__CRT_INLINE int __cdecl iswupper(wint_t wc) {return (iswctype(wc,_UPPER));}
|
||||
__CRT_INLINE int __cdecl iswxdigit(wint_t wc) {return (iswctype(wc,_HEX));}
|
||||
__CRT_INLINE int __cdecl isleadbyte(int c) {return (_pctype[(unsigned char)(c)] & _LEADBYTE);}
|
||||
#endif /* !(defined(__NO_CTYPE_INLINES) || defined(__WCTYPE_INLINES_DEFINED)) */
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user