X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Fwchar.h;h=9fd967ccc365e9b1bc18e5c8e45e0cf39acaffe2;hb=0f2315b4af1c58cbfb7c7f9da69b495cd146cc18;hp=b1c6b7fac44c96100467a57c72f9e6fd367dfdaf;hpb=400c5e5c8307a2ebe44ef1f203f5a15669f20347;p=musl diff --git a/include/wchar.h b/include/wchar.h index b1c6b7fa..9fd967cc 100644 --- a/include/wchar.h +++ b/include/wchar.h @@ -5,42 +5,44 @@ extern "C" { #endif -#if __STDC_VERSION__ >= 199901L -#define __restrict restrict -#elif !defined(__GNUC__) -#define __restrict -#endif +#include #define __NEED_FILE -#define __NEED_va_list +#define __NEED___isoc_va_list #define __NEED_size_t #define __NEED_wchar_t #define __NEED_wint_t #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ - || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) #define __NEED_locale_t +#define __NEED_va_list #endif -#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) #define __NEED_wctype_t #endif #include -#include +#if L'\0'-1 > 0 +#define WCHAR_MAX (0xffffffffu+L'\0') +#define WCHAR_MIN (0+L'\0') +#else +#define WCHAR_MAX (0x7fffffff+L'\0') +#define WCHAR_MIN (-1-0x7fffffff+L'\0') +#endif -#undef NULL #ifdef __cplusplus -#define NULL 0 +#define NULL 0L #else #define NULL ((void*)0) #endif #undef WEOF -#define WEOF (-1) +#define WEOF 0xffffffffU -typedef struct +typedef struct __mbstate_t { unsigned __opaque1, __opaque2; } mbstate_t; @@ -108,17 +110,17 @@ int wprintf (const wchar_t *__restrict, ...); int fwprintf (FILE *__restrict, const wchar_t *__restrict, ...); int swprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, ...); -int vwprintf (const wchar_t *__restrict, va_list); -int vfwprintf (FILE *__restrict, const wchar_t *__restrict, va_list); -int vswprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, va_list); +int vwprintf (const wchar_t *__restrict, __isoc_va_list); +int vfwprintf (FILE *__restrict, const wchar_t *__restrict, __isoc_va_list); +int vswprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, __isoc_va_list); int wscanf (const wchar_t *__restrict, ...); int fwscanf (FILE *__restrict, const wchar_t *__restrict, ...); int swscanf (const wchar_t *__restrict, const wchar_t *__restrict, ...); -int vwscanf (const wchar_t *__restrict, va_list); -int vfwscanf (FILE *__restrict, const wchar_t *__restrict, va_list); -int vswscanf (const wchar_t *__restrict, const wchar_t *__restrict, va_list); +int vwscanf (const wchar_t *__restrict, __isoc_va_list); +int vfwscanf (FILE *__restrict, const wchar_t *__restrict, __isoc_va_list); +int vswscanf (const wchar_t *__restrict, const wchar_t *__restrict, __isoc_va_list); wint_t fgetwc (FILE *); wint_t getwc (FILE *); @@ -139,7 +141,7 @@ size_t wcsftime (wchar_t *__restrict, size_t, const wchar_t *__restrict, const s #undef iswdigit #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ - || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) FILE *open_wmemstream(wchar_t **, size_t *); size_t mbsnrtowcs(wchar_t *__restrict, const char **__restrict, size_t, size_t, mbstate_t *__restrict); size_t wcsnrtombs(char *__restrict, const wchar_t **__restrict, size_t, size_t, mbstate_t *__restrict); @@ -155,7 +157,7 @@ int wcscoll_l(const wchar_t *, const wchar_t *, locale_t); size_t wcsxfrm_l(wchar_t *__restrict, const wchar_t *__restrict, size_t n, locale_t); #endif -#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) int wcwidth (wchar_t); int wcswidth (const wchar_t *, size_t); int iswalnum(wint_t);