summaryrefslogtreecommitdiff
path: root/wcsmbs/wchar.h
diff options
context:
space:
mode:
Diffstat (limited to 'wcsmbs/wchar.h')
-rw-r--r--wcsmbs/wchar.h22
1 files changed, 13 insertions, 9 deletions
diff --git a/wcsmbs/wchar.h b/wcsmbs/wchar.h
index b54170c3f3..cc821b8a50 100644
--- a/wcsmbs/wchar.h
+++ b/wcsmbs/wchar.h
@@ -34,6 +34,19 @@ __BEGIN_DECLS
#define __need_NULL
#include <stddef.h>
+
+/* We try to get wint_t from <stddef.h>, but not all GCC versions define it
+ there. So define it ourselves if it remains undefined. */
+#ifndef _WINT_T
+/* Integral type unchanged by default argument promotions that can
+ hold any value corresponding to members of the extended character
+ set, as well as at least one value that does not correspond to any
+ member of the extended character set. */
+#define _WINT_T
+typedef unsigned int wint_t;
+#endif
+
+
/* Conversion state information. */
typedef int mbstate_t; /* FIXME */
@@ -44,15 +57,6 @@ typedef int mbstate_t; /* FIXME */
# define WEOF (0xffffffffu)
#endif
-#ifndef _WINT_T
-/* Integral type unchanged by default argument promotions that can
- hold any value corresponding to members of the extended character
- set, as well as at least one value that does not correspond to any
- member of the extended character set. */
-#define _WINT_T 1
-typedef unsigned int wint_t;
-#endif
-
/* Copy SRC to DEST. */
extern wchar_t *wcscpy __P ((wchar_t *__dest, __const wchar_t *__src));