/* Large enough an integer to hold all character codes of the largest supported
locale.
*/
-#define _PDCLIB_wchar unsigned short
-#define _PDCLIB_WCHAR USHRT
+#define _PDCLIB_wchar unsigned int
+#define _PDCLIB_WCHAR UINT
/* (Signed) integer type capable of taking the (cast) value of a void *, and
having the value cast back to void *, comparing equal to the original.
your compiler.
*/
-#ifdef __i386
+#if defined( __i386 )
/* The following generic implementation works only for pure
stack-based architectures, and only if arguments are aligned to pointer
#define _PDCLIB_va_end( ap ) ( (ap) = (void *)0, (void)0 )
#define _PDCLIB_va_start( ap, parmN ) ( (ap) = (char *) &parmN + ( _PDCLIB_va_round(parmN) ), (void)0 )
-#elif __x86_64
+#elif defined( __x86_64 )
/* No way to cover x86_64 with a generic implementation, as it uses register-
based parameter passing. Using the GCC builtins here.
/* Default is 4 (0, ERANGE, EDOM, EILSEQ). */
#define _PDCLIB_ERRNO_MAX 4
+#ifdef __CYGWIN__
+typedef unsigned int wint_t;
+#endif
+
+
#endif