typedef void * __builtin_va_list;
#define __builtin_va_start(ap, parmN)	((void)((ap)= &(parmN)))
#define __builtin_va_arg(ap, type)		(*(type*)(ap))
#define __builtin_va_end(ap)			((void)((ap)=0))
#define __builtin_va_copy(d,s)

double __builtin_fabs(double);
float __builtin_fabsf(float);
long double __builtin_fabsl(long double);
float __builtin_cosf(float);
long double __builtin_cosl(long double);
float __builtin_sinf(float);
long double __builtin_sinl(long double);
float __builtin_sqrtf(float);
long double __builtin_sqrtl(long double);
char* __builtin_strchr(const char*, int);
char* __builtin_strrchr(const char*, int);
char* __builtin_strstr(const char*, const char*);
char* __builtin_strpbrk(const char*, const char*);
void* __builtin_alloca(__SIZE_TYPE__);
__SIZE_TYPE__ __builtin_strlen(const char* s);
void * __builtin_memcpy(void* dest, const void* src, __SIZE_TYPE__ n);

long __builtin_expect(long exp, long c);
void __builtin_saveregs();

float __builtin_huge_valf();
double __builtin_huge_val();
long double __builtin_huge_vall();
float __builtin_nanf(const char *str);
double __builtin_nan(const char *str);
long double __builtin_nanl(const char *str);
float __builtin_nansf(const char *str);
double __builtin_nans(const char *str);
long double __builtin_nansl(const char *str);

#define __FD_ISSET(fd, fdsp) ((fd)!=0)
/* MINGW32 fix */
#ifdef __MINGW32__
#define _fileno(__F) ((__F)->_file)
#endif

