Loading...
include/wchar.h Libc-997.90.3 Libc-583
--- Libc/Libc-997.90.3/include/wchar.h
+++ Libc/Libc-583/include/wchar.h
@@ -68,15 +68,37 @@
 #define _WCHAR_H_
 
 #include <_types.h>
-#include <sys/cdefs.h>
-#include <Availability.h>
-
-#include <sys/_types/_null.h>
-#include <sys/_types/_size_t.h>
-#include <sys/_types/_mbstate_t.h>
-#include <sys/_types/_ct_rune_t.h>
-#include <sys/_types/_rune_t.h>
-#include <sys/_types/_wchar_t.h>
+
+#ifndef NULL
+#define	NULL	__DARWIN_NULL
+#endif /* ! NULL */
+
+#ifndef	_SIZE_T
+#define	_SIZE_T
+typedef	__darwin_size_t		size_t;
+#endif
+
+#ifndef	_MBSTATE_T
+#define	_MBSTATE_T
+typedef	__darwin_mbstate_t	mbstate_t;
+#endif
+
+#ifndef	_CT_RUNE_T
+#define _CT_RUNE_T
+typedef	__darwin_ct_rune_t	ct_rune_t;
+#endif
+
+#ifndef	_RUNE_T
+#define _RUNE_T
+typedef	__darwin_rune_t		rune_t;
+#endif
+
+#ifndef	__cplusplus
+#ifndef	_WCHAR_T
+#define	_WCHAR_T
+typedef	__darwin_wchar_t	wchar_t;
+#endif	/* _WCHAR_T */
+#endif	/* __cplusplus */
 
 #ifndef WCHAR_MIN
 #define WCHAR_MIN	__DARWIN_WCHAR_MIN
@@ -91,8 +113,6 @@
 #include <time.h>
 #include <_wctype.h>
 
-
-/* Initially added in Issue 4 */
 __BEGIN_DECLS
 wint_t	btowc(int);
 wint_t	fgetwc(FILE *);
@@ -100,8 +120,8 @@
 wint_t	fputwc(wchar_t, FILE *);
 int	fputws(const wchar_t * __restrict, FILE * __restrict);
 int	fwide(FILE *, int);
-int	fwprintf(FILE * __restrict, const wchar_t * __restrict, ...);
-int	fwscanf(FILE * __restrict, const wchar_t * __restrict, ...);
+int	fwprintf(FILE * __restrict, const wchar_t * __restrict, ...) __DARWIN_LDBL_COMPAT(fwprintf);
+int	fwscanf(FILE * __restrict, const wchar_t * __restrict, ...) __DARWIN_LDBL_COMPAT(fwscanf);
 wint_t	getwc(FILE *);
 wint_t	getwchar(void);
 size_t	mbrlen(const char * __restrict, size_t, mbstate_t * __restrict);
@@ -112,14 +132,15 @@
 	    mbstate_t * __restrict);
 wint_t	putwc(wchar_t, FILE *);
 wint_t	putwchar(wchar_t);
-int	swprintf(wchar_t * __restrict, size_t, const wchar_t * __restrict, ...);
-int	swscanf(const wchar_t * __restrict, const wchar_t * __restrict, ...);
+int	swprintf(wchar_t * __restrict, size_t, const wchar_t * __restrict,
+	    ...) __DARWIN_LDBL_COMPAT(swprintf);
+int	swscanf(const wchar_t * __restrict, const wchar_t * __restrict, ...) __DARWIN_LDBL_COMPAT(swscanf);
 wint_t	ungetwc(wint_t, FILE *);
 int	vfwprintf(FILE * __restrict, const wchar_t * __restrict,
-	    __darwin_va_list);
+	    __darwin_va_list) __DARWIN_LDBL_COMPAT(vfwprintf);
 int	vswprintf(wchar_t * __restrict, size_t, const wchar_t * __restrict,
-	    __darwin_va_list);
-int	vwprintf(const wchar_t * __restrict, __darwin_va_list);
+	    __darwin_va_list) __DARWIN_LDBL_COMPAT(vswprintf);
+int	vwprintf(const wchar_t * __restrict, __darwin_va_list) __DARWIN_LDBL_COMPAT(vwprintf);
 size_t	wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict);
 wchar_t	*wcscat(wchar_t * __restrict, const wchar_t * __restrict);
 wchar_t	*wcschr(const wchar_t *, wchar_t);
@@ -161,76 +182,42 @@
 wchar_t	*wmemcpy(wchar_t * __restrict, const wchar_t * __restrict, size_t);
 wchar_t	*wmemmove(wchar_t *, const wchar_t *, size_t);
 wchar_t	*wmemset(wchar_t *, wchar_t, size_t);
-int	wprintf(const wchar_t * __restrict, ...);
-int	wscanf(const wchar_t * __restrict, ...);
-int	wcswidth(const wchar_t *, size_t);
-int	wcwidth(wchar_t);
-__END_DECLS
-
-
-
-/* Additional functionality provided by:
- * POSIX.1-2001
- * ISO C99
- */
-
-#if __DARWIN_C_LEVEL >= 200112L || defined(_C99_SOURCE) || defined(__cplusplus)
-__BEGIN_DECLS
+int	wprintf(const wchar_t * __restrict, ...) __DARWIN_LDBL_COMPAT(wprintf);
+int	wscanf(const wchar_t * __restrict, ...) __DARWIN_LDBL_COMPAT(wscanf);
+
+#if !defined(_ANSI_SOURCE)
 int	vfwscanf(FILE * __restrict, const wchar_t * __restrict,
-	    __darwin_va_list);
+	    __darwin_va_list) __DARWIN_LDBL_COMPAT(vfwscanf);
 int	vswscanf(const wchar_t * __restrict, const wchar_t * __restrict,
-	    __darwin_va_list);
-int	vwscanf(const wchar_t * __restrict, __darwin_va_list);
+	    __darwin_va_list) __DARWIN_LDBL_COMPAT(vswscanf);
+int	vwscanf(const wchar_t * __restrict, __darwin_va_list) __DARWIN_LDBL_COMPAT(vwscanf);
 float	wcstof(const wchar_t * __restrict, wchar_t ** __restrict);
 long double
-	wcstold(const wchar_t * __restrict, wchar_t ** __restrict);
+	wcstold(const wchar_t * __restrict, wchar_t ** __restrict) __DARWIN_LDBL_COMPAT(wcstold);
 #if !__DARWIN_NO_LONG_LONG
 long long
 	wcstoll(const wchar_t * __restrict, wchar_t ** __restrict, int);
 unsigned long long
 	wcstoull(const wchar_t * __restrict, wchar_t ** __restrict, int);
 #endif /* !__DARWIN_NO_LONG_LONG */
-__END_DECLS
-#endif
-
-
-
-/* Additional functionality provided by:
- * POSIX.1-2008
- */
-
-#if __DARWIN_C_LEVEL >= 200809L
-__BEGIN_DECLS
-size_t  mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
-            size_t, mbstate_t * __restrict);
-wchar_t *wcpcpy(wchar_t * __restrict, const wchar_t * __restrict) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
-wchar_t *wcpncpy(wchar_t * __restrict, const wchar_t * __restrict, size_t) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
-wchar_t *wcsdup(const wchar_t *) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
-int     wcscasecmp(const wchar_t *, const wchar_t *) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
-int     wcsncasecmp(const wchar_t *, const wchar_t *, size_t n) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
-size_t  wcsnlen(const wchar_t *, size_t) __pure __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
-size_t  wcsnrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
-            size_t, mbstate_t * __restrict);
-__END_DECLS
-#endif /* __DARWIN_C_LEVEL >= 200809L */
-
-
-
-/* Darwin extensions */
-
-#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
-__BEGIN_DECLS
-wchar_t *fgetwln(FILE * __restrict, size_t *) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
+int	wcswidth(const wchar_t *, size_t);
+int	wcwidth(wchar_t);
+#endif /* !defined(_ANSI_SOURCE) */
+
+#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
+size_t	mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
+	    size_t, mbstate_t * __restrict);
 size_t	wcslcat(wchar_t *, const wchar_t *, size_t);
 size_t	wcslcpy(wchar_t *, const wchar_t *, size_t);
-__END_DECLS
-#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
-
+size_t	wcsnrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
+	    size_t, mbstate_t * __restrict);
+#endif /* !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) */
 
 /* Poison the following routines if -fshort-wchar is set */
 #if !defined(__cplusplus) && defined(__WCHAR_MAX__) && __WCHAR_MAX__ <= 0xffffU
-#pragma GCC poison fgetwln fgetws fputwc fputws fwprintf fwscanf mbrtowc mbsnrtowcs mbsrtowcs putwc putwchar swprintf swscanf vfwprintf vfwscanf vswprintf vswscanf vwprintf vwscanf wcrtomb wcscat wcschr wcscmp wcscoll wcscpy wcscspn wcsftime wcsftime wcslcat wcslcpy wcslen wcsncat wcsncmp wcsncpy wcsnrtombs wcspbrk wcsrchr wcsrtombs wcsspn wcsstr wcstod wcstof wcstok wcstol wcstold wcstoll wcstoul wcstoull wcswidth wcsxfrm wcwidth wmemchr wmemcmp wmemcpy wmemmove wmemset wprintf wscanf
-#endif
+#pragma GCC poison fgetws fputwc fputws fwprintf fwscanf mbrtowc mbsnrtowcs mbsrtowcs putwc putwchar swprintf swscanf vfwprintf vfwscanf vswprintf vswscanf vwprintf vwscanf wcrtomb wcscat wcschr wcscmp wcscoll wcscpy wcscspn wcsftime wcsftime wcslcat wcslcpy wcslen wcsncat wcsncmp wcsncpy wcsnrtombs wcspbrk wcsrchr wcsrtombs wcsspn wcsstr wcstod wcstof wcstok wcstol wcstold wcstoll wcstoul wcstoull wcswidth wcsxfrm wcwidth wmemchr wmemcmp wmemcpy wmemmove wmemset wprintf wscanf
+#endif
+__END_DECLS
 
 #ifdef _USE_EXTENDED_LOCALES_
 #include <xlocale/_wchar.h>