aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/alpha/include/_types.h37
-rw-r--r--sys/amd64/include/_types.h37
-rw-r--r--sys/arm/include/_types.h37
-rw-r--r--sys/i386/include/_types.h37
-rw-r--r--sys/ia64/include/_types.h37
-rw-r--r--sys/powerpc/include/_types.h37
-rw-r--r--sys/sparc64/include/_types.h37
-rw-r--r--sys/sys/_types.h42
8 files changed, 42 insertions, 259 deletions
diff --git a/sys/alpha/include/_types.h b/sys/alpha/include/_types.h
index 96693235716f..731306d29714 100644
--- a/sys/alpha/include/_types.h
+++ b/sys/alpha/include/_types.h
@@ -55,13 +55,10 @@ typedef unsigned long __uint64_t;
* Standard type definitions.
*/
typedef __int32_t __clock_t; /* clock()... */
-typedef __int32_t __clockid_t; /* clock_gettime()... */
typedef __int64_t __critical_t;
-typedef __uint32_t __fflags_t; /* file flags */
typedef __int64_t __intfptr_t;
typedef __int64_t __intmax_t;
typedef __int64_t __intptr_t;
-typedef __uint32_t __intrmask_t;
typedef __int32_t __int_fast8_t;
typedef __int32_t __int_fast16_t;
typedef __int32_t __int_fast32_t;
@@ -70,16 +67,12 @@ typedef __int8_t __int_least8_t;
typedef __int16_t __int_least16_t;
typedef __int32_t __int_least32_t;
typedef __int64_t __int_least64_t;
-typedef __int64_t __off_t; /* file offset */
-typedef __int32_t __pid_t; /* process [group] */
typedef __int64_t __ptrdiff_t; /* ptr1 - ptr2 */
typedef __int64_t __register_t;
typedef __int64_t __segsz_t; /* segment size (in pages) */
typedef __uint64_t __size_t; /* sizeof() */
-typedef __uint32_t __socklen_t;
typedef __int64_t __ssize_t; /* byte count or error */
typedef __int32_t __time_t; /* time()... */
-typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint64_t __uintfptr_t;
typedef __uint64_t __uintmax_t;
typedef __uint64_t __uintptr_t;
@@ -100,36 +93,6 @@ typedef __uint64_t __vm_size_t;
/*
* Unusual type definitions.
*/
-/*
- * The rune type above is declared to be an ``int'' instead of the more natural
- * ``unsigned long'' or ``long''. Two things are happening here. It is not
- * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
- * it looks like 10646 will be a 31 bit standard. This means that if your
- * ints cannot hold 32 bits, you will be in trouble. The reason an int was
- * chosen over a long is that the is*() and to*() routines take ints (says
- * ANSI C), but they use __ct_rune_t instead of int. By changing it here, you
- * lose a bit of ANSI conformance, but your programs will still work.
- *
- * NOTE: rune_t is not covered by ANSI nor other standards, and should not
- * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
- * rune_t must be the same type. Also wint_t must be no narrower than
- * wchar_t, and should also be able to hold all members of the largest
- * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
- */
-typedef __int32_t __ct_rune_t;
-typedef __int32_t __rune_t;
-typedef __int32_t __wchar_t;
-typedef __int32_t __wint_t;
-
-/*
- * mbstate_t is an opaque object to keep conversion state, during multibyte
- * stream conversions. The content must not be referenced by user programs.
- */
-typedef union {
- char __mbstate8[128];
- __int64_t _mbstateL; /* for alignment */
-} __mbstate_t;
-
#if defined(__GNUC__) && (__GNUC__ == 2 && __GNUC_MINOR__ > 95 || __GNUC__ >= 3)
typedef __builtin_va_list __va_list; /* internally known to gcc */
#else
diff --git a/sys/amd64/include/_types.h b/sys/amd64/include/_types.h
index 4c62a9a33ee2..155f55f7e617 100644
--- a/sys/amd64/include/_types.h
+++ b/sys/amd64/include/_types.h
@@ -55,13 +55,10 @@ typedef unsigned long __uint64_t;
* Standard type definitions.
*/
typedef __int32_t __clock_t; /* clock()... */
-typedef __int32_t __clockid_t; /* clock_gettime()... */
typedef __int64_t __critical_t;
-typedef __uint32_t __fflags_t; /* file flags */
typedef __int64_t __intfptr_t;
typedef __int64_t __intmax_t;
typedef __int64_t __intptr_t;
-typedef __uint32_t __intrmask_t;
typedef __int32_t __int_fast8_t;
typedef __int32_t __int_fast16_t;
typedef __int32_t __int_fast32_t;
@@ -70,16 +67,12 @@ typedef __int8_t __int_least8_t;
typedef __int16_t __int_least16_t;
typedef __int32_t __int_least32_t;
typedef __int64_t __int_least64_t;
-typedef __int64_t __off_t; /* file offset */
-typedef __int32_t __pid_t; /* process [group] */
typedef __int64_t __ptrdiff_t; /* ptr1 - ptr2 */
typedef __int64_t __register_t;
typedef __int64_t __segsz_t; /* segment size (in pages) */
typedef __uint64_t __size_t; /* sizeof() */
-typedef __uint32_t __socklen_t;
typedef __int64_t __ssize_t; /* byte count or error */
typedef __int32_t __time_t; /* time()... */
-typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint64_t __uintfptr_t;
typedef __uint64_t __uintmax_t;
typedef __uint64_t __uintptr_t;
@@ -100,36 +93,6 @@ typedef __uint64_t __vm_size_t;
/*
* Unusual type definitions.
*/
-/*
- * The rune type above is declared to be an ``int'' instead of the more natural
- * ``unsigned long'' or ``long''. Two things are happening here. It is not
- * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
- * it looks like 10646 will be a 31 bit standard. This means that if your
- * ints cannot hold 32 bits, you will be in trouble. The reason an int was
- * chosen over a long is that the is*() and to*() routines take ints (says
- * ANSI C), but they use __ct_rune_t instead of int. By changing it here, you
- * lose a bit of ANSI conformance, but your programs will still work.
- *
- * NOTE: rune_t is not covered by ANSI nor other standards, and should not
- * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
- * rune_t must be the same type. Also wint_t must be no narrower than
- * wchar_t, and should also be able to hold all members of the largest
- * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
- */
-typedef __int32_t __ct_rune_t;
-typedef __int32_t __rune_t;
-typedef __int32_t __wchar_t;
-typedef __int32_t __wint_t;
-
-/*
- * mbstate_t is an opaque object to keep conversion state, during multibyte
- * stream conversions. The content must not be referenced by user programs.
- */
-typedef union {
- char __mbstate8[128];
- __int64_t _mbstateL; /* for alignment */
-} __mbstate_t;
-
typedef __builtin_va_list __va_list; /* internally known to gcc */
#if defined __GNUC__ && !defined(__GNUC_VA_LIST) && !defined(__NO_GNUC_VA_LIST)
#define __GNUC_VA_LIST
diff --git a/sys/arm/include/_types.h b/sys/arm/include/_types.h
index 34cf3e852ba3..cb3a7e3d67db 100644
--- a/sys/arm/include/_types.h
+++ b/sys/arm/include/_types.h
@@ -63,13 +63,10 @@ typedef unsigned long long __uint64_t;
* Standard type definitions.
*/
typedef __uint32_t __clock_t; /* clock()... */
-typedef __int32_t __clockid_t; /* clock_gettime()... */
typedef __int32_t __critical_t;
-typedef __uint32_t __fflags_t; /* file flags */
typedef __int32_t __intfptr_t;
typedef __int64_t __intmax_t;
typedef __int32_t __intptr_t;
-typedef __uint32_t __intrmask_t;
typedef __int32_t __int_fast8_t;
typedef __int32_t __int_fast16_t;
typedef __int32_t __int_fast32_t;
@@ -78,16 +75,12 @@ typedef __int8_t __int_least8_t;
typedef __int16_t __int_least16_t;
typedef __int32_t __int_least32_t;
typedef __int64_t __int_least64_t;
-typedef __int64_t __off_t; /* file offset */
-typedef __int32_t __pid_t; /* process [group] */
typedef __int32_t __ptrdiff_t; /* ptr1 - ptr2 */
typedef __int32_t __register_t;
typedef __int32_t __segsz_t; /* segment size (in pages) */
typedef __uint32_t __size_t; /* sizeof() */
-typedef __uint32_t __socklen_t;
typedef __int32_t __ssize_t; /* byte count or error */
typedef __int32_t __time_t; /* time()... */
-typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint32_t __uintfptr_t;
typedef __uint64_t __uintmax_t;
typedef __uint32_t __uintptr_t;
@@ -108,36 +101,6 @@ typedef __uint32_t __vm_size_t;
/*
* Unusual type definitions.
*/
-/*
- * The rune type above is declared to be an ``int'' instead of the more natural
- * ``unsigned long'' or ``long''. Two things are happening here. It is not
- * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
- * it looks like 10646 will be a 31 bit standard. This means that if your
- * ints cannot hold 32 bits, you will be in trouble. The reason an int was
- * chosen over a long is that the is*() and to*() routines take ints (says
- * ANSI C), but they use __ct_rune_t instead of int. By changing it here, you
- * lose a bit of ANSI conformance, but your programs will still work.
- *
- * NOTE: rune_t is not covered by ANSI nor other standards, and should not
- * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
- * rune_t must be the same type. Also wint_t must be no narrower than
- * wchar_t, and should also be able to hold all members of the largest
- * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
- */
-typedef __int32_t __ct_rune_t;
-typedef __int32_t __rune_t;
-typedef __int32_t __wchar_t;
-typedef __int32_t __wint_t;
-
-/*
- * mbstate_t is an opaque object to keep conversion state, during multibyte
- * stream conversions. The content must not be referenced by user programs.
- */
-typedef union {
- char __mbstate8[128];
- __int64_t _mbstateL; /* for alignment */
-} __mbstate_t;
-
#if defined(__GNUC__) && (__GNUC__ == 2 && __GNUC_MINOR__ > 95 || __GNUC__ >= 3)
typedef __builtin_va_list __va_list; /* internally known to gcc */
#else
diff --git a/sys/i386/include/_types.h b/sys/i386/include/_types.h
index c6f8e1671262..1aed9f83b0a9 100644
--- a/sys/i386/include/_types.h
+++ b/sys/i386/include/_types.h
@@ -63,13 +63,10 @@ typedef unsigned long long __uint64_t;
* Standard type definitions.
*/
typedef unsigned long __clock_t; /* clock()... */
-typedef __int32_t __clockid_t; /* clock_gettime()... */
typedef __int32_t __critical_t;
-typedef __uint32_t __fflags_t; /* file flags */
typedef __int32_t __intfptr_t;
typedef __int64_t __intmax_t;
typedef __int32_t __intptr_t;
-typedef __uint32_t __intrmask_t;
typedef __int32_t __int_fast8_t;
typedef __int32_t __int_fast16_t;
typedef __int32_t __int_fast32_t;
@@ -78,16 +75,12 @@ typedef __int8_t __int_least8_t;
typedef __int16_t __int_least16_t;
typedef __int32_t __int_least32_t;
typedef __int64_t __int_least64_t;
-typedef __int64_t __off_t; /* file offset */
-typedef __int32_t __pid_t; /* process [group] */
typedef __int32_t __ptrdiff_t; /* ptr1 - ptr2 */
typedef __int32_t __register_t;
typedef __int32_t __segsz_t; /* segment size (in pages) */
typedef __uint32_t __size_t; /* sizeof() */
-typedef __uint32_t __socklen_t;
typedef __int32_t __ssize_t; /* byte count or error */
typedef __int32_t __time_t; /* time()... */
-typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint32_t __uintfptr_t;
typedef __uint64_t __uintmax_t;
typedef __uint32_t __uintptr_t;
@@ -108,36 +101,6 @@ typedef __uint32_t __vm_size_t;
/*
* Unusual type definitions.
*/
-/*
- * The rune type above is declared to be an ``int'' instead of the more natural
- * ``unsigned long'' or ``long''. Two things are happening here. It is not
- * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
- * it looks like 10646 will be a 31 bit standard. This means that if your
- * ints cannot hold 32 bits, you will be in trouble. The reason an int was
- * chosen over a long is that the is*() and to*() routines take ints (says
- * ANSI C), but they use __ct_rune_t instead of int. By changing it here, you
- * lose a bit of ANSI conformance, but your programs will still work.
- *
- * NOTE: rune_t is not covered by ANSI nor other standards, and should not
- * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
- * rune_t must be the same type. Also wint_t must be no narrower than
- * wchar_t, and should also be able to hold all members of the largest
- * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
- */
-typedef __int32_t __ct_rune_t;
-typedef __int32_t __rune_t;
-typedef __int32_t __wchar_t;
-typedef __int32_t __wint_t;
-
-/*
- * mbstate_t is an opaque object to keep conversion state, during multibyte
- * stream conversions. The content must not be referenced by user programs.
- */
-typedef union {
- char __mbstate8[128];
- __int64_t _mbstateL; /* for alignment */
-} __mbstate_t;
-
#if defined(__GNUC__) && (__GNUC__ == 2 && __GNUC_MINOR__ > 95 || __GNUC__ >= 3)
typedef __builtin_va_list __va_list; /* internally known to gcc */
#else
diff --git a/sys/ia64/include/_types.h b/sys/ia64/include/_types.h
index 3ca3584f3749..f31656cf026a 100644
--- a/sys/ia64/include/_types.h
+++ b/sys/ia64/include/_types.h
@@ -55,13 +55,10 @@ typedef unsigned long __uint64_t;
* Standard type definitions.
*/
typedef __int32_t __clock_t; /* clock()... */
-typedef __int32_t __clockid_t; /* clock_gettime()... */
typedef __int64_t __critical_t;
-typedef __uint32_t __fflags_t; /* file flags */
typedef __int64_t __intfptr_t;
typedef __int64_t __intmax_t;
typedef __int64_t __intptr_t;
-typedef __uint32_t __intrmask_t;
typedef __int32_t __int_fast8_t;
typedef __int32_t __int_fast16_t;
typedef __int32_t __int_fast32_t;
@@ -70,16 +67,12 @@ typedef __int8_t __int_least8_t;
typedef __int16_t __int_least16_t;
typedef __int32_t __int_least32_t;
typedef __int64_t __int_least64_t;
-typedef __int64_t __off_t; /* file offset */
-typedef __int32_t __pid_t; /* process [group] */
typedef __int64_t __ptrdiff_t; /* ptr1 - ptr2 */
typedef __int64_t __register_t;
typedef __int64_t __segsz_t; /* segment size (in pages) */
typedef __uint64_t __size_t; /* sizeof() */
-typedef __uint32_t __socklen_t;
typedef __int64_t __ssize_t; /* byte count or error */
typedef __int32_t __time_t; /* time()... */
-typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint64_t __uintfptr_t;
typedef __uint64_t __uintmax_t;
typedef __uint64_t __uintptr_t;
@@ -100,36 +93,6 @@ typedef __uint64_t __vm_size_t;
/*
* Unusual type definitions.
*/
-/*
- * The rune type above is declared to be an ``int'' instead of the more natural
- * ``unsigned long'' or ``long''. Two things are happening here. It is not
- * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
- * it looks like 10646 will be a 31 bit standard. This means that if your
- * ints cannot hold 32 bits, you will be in trouble. The reason an int was
- * chosen over a long is that the is*() and to*() routines take ints (says
- * ANSI C), but they use __ct_rune_t instead of int. By changing it here, you
- * lose a bit of ANSI conformance, but your programs will still work.
- *
- * NOTE: rune_t is not covered by ANSI nor other standards, and should not
- * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
- * rune_t must be the same type. Also wint_t must be no narrower than
- * wchar_t, and should also be able to hold all members of the largest
- * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
- */
-typedef __int32_t __ct_rune_t;
-typedef __int32_t __rune_t;
-typedef __int32_t __wchar_t;
-typedef __int32_t __wint_t;
-
-/*
- * mbstate_t is an opaque object to keep conversion state, during multibyte
- * stream conversions. The content must not be referenced by user programs.
- */
-typedef union {
- char __mbstate8[128];
- __int64_t _mbstateL; /* for alignment */
-} __mbstate_t;
-
#ifdef __GNUC__
typedef __builtin_va_list __va_list; /* internally known to gcc */
#if !defined(__GNUC_VA_LIST) && !defined(__NO_GNUC_VA_LIST)
diff --git a/sys/powerpc/include/_types.h b/sys/powerpc/include/_types.h
index dac8f97110aa..2c52af06a571 100644
--- a/sys/powerpc/include/_types.h
+++ b/sys/powerpc/include/_types.h
@@ -57,13 +57,10 @@ typedef unsigned long long __uint64_t;
* Standard type definitions.
*/
typedef __uint32_t __clock_t; /* clock()... */
-typedef __int32_t __clockid_t; /* clock_gettime()... */
typedef __int32_t __critical_t;
-typedef __uint32_t __fflags_t; /* file flags */
typedef __int32_t __intfptr_t;
typedef __int64_t __intmax_t;
typedef __int32_t __intptr_t;
-typedef __uint32_t __intrmask_t;
typedef __int32_t __int_fast8_t;
typedef __int32_t __int_fast16_t;
typedef __int32_t __int_fast32_t;
@@ -72,16 +69,12 @@ typedef __int8_t __int_least8_t;
typedef __int16_t __int_least16_t;
typedef __int32_t __int_least32_t;
typedef __int64_t __int_least64_t;
-typedef __int64_t __off_t; /* file offset */
-typedef __int32_t __pid_t; /* process [group] */
typedef __int32_t __ptrdiff_t; /* ptr1 - ptr2 */
typedef __int32_t __register_t;
typedef __int32_t __segsz_t; /* segment size (in pages) */
typedef __uint32_t __size_t; /* sizeof() */
-typedef __uint32_t __socklen_t;
typedef __int32_t __ssize_t; /* byte count or error */
typedef __int32_t __time_t; /* time()... */
-typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint32_t __uintfptr_t;
typedef __uint64_t __uintmax_t;
typedef __uint32_t __uintptr_t;
@@ -102,36 +95,6 @@ typedef __uint32_t __vm_size_t;
/*
* Unusual type definitions.
*/
-/*
- * The rune type above is declared to be an ``int'' instead of the more natural
- * ``unsigned long'' or ``long''. Two things are happening here. It is not
- * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
- * it looks like 10646 will be a 31 bit standard. This means that if your
- * ints cannot hold 32 bits, you will be in trouble. The reason an int was
- * chosen over a long is that the is*() and to*() routines take ints (says
- * ANSI C), but they use __ct_rune_t instead of int. By changing it here, you
- * lose a bit of ANSI conformance, but your programs will still work.
- *
- * NOTE: rune_t is not covered by ANSI nor other standards, and should not
- * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
- * rune_t must be the same type. Also wint_t must be no narrower than
- * wchar_t, and should also be able to hold all members of the largest
- * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
- */
-typedef __int32_t __ct_rune_t;
-typedef __int32_t __rune_t;
-typedef __int32_t __wchar_t;
-typedef __int32_t __wint_t;
-
-/*
- * mbstate_t is an opaque object to keep conversion state, during multibyte
- * stream conversions. The content must not be referenced by user programs.
- */
-typedef union {
- char __mbstate8[128];
- __int64_t _mbstateL; /* for alignment */
-} __mbstate_t;
-
#if defined(__GNUC__) && (__GNUC__ == 2 && __GNUC_MINOR__ > 95 || __GNUC__ >= 3)
typedef __builtin_va_list __va_list; /* internally known to gcc */
#else
diff --git a/sys/sparc64/include/_types.h b/sys/sparc64/include/_types.h
index 0e6d6ae595d6..d30c9484d8d0 100644
--- a/sys/sparc64/include/_types.h
+++ b/sys/sparc64/include/_types.h
@@ -55,13 +55,10 @@ typedef unsigned long __uint64_t;
* Standard type definitions.
*/
typedef __int32_t __clock_t; /* clock()... */
-typedef __int32_t __clockid_t; /* clock_gettime()... */
typedef __int64_t __critical_t;
-typedef __uint32_t __fflags_t; /* file flags */
typedef __int64_t __intfptr_t;
typedef __int64_t __intmax_t;
typedef __int64_t __intptr_t;
-typedef __uint32_t __intrmask_t;
typedef __int32_t __int_fast8_t;
typedef __int32_t __int_fast16_t;
typedef __int32_t __int_fast32_t;
@@ -70,16 +67,12 @@ typedef __int8_t __int_least8_t;
typedef __int16_t __int_least16_t;
typedef __int32_t __int_least32_t;
typedef __int64_t __int_least64_t;
-typedef __int64_t __off_t; /* file offset */
-typedef __int32_t __pid_t; /* process [group] */
typedef __int64_t __ptrdiff_t; /* ptr1 - ptr2 */
typedef __int64_t __register_t;
typedef __int64_t __segsz_t; /* segment size (in pages) */
typedef __uint64_t __size_t; /* sizeof() */
-typedef __uint32_t __socklen_t;
typedef __int64_t __ssize_t; /* byte count or error */
typedef __int32_t __time_t; /* time()... */
-typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint64_t __uintfptr_t;
typedef __uint64_t __uintmax_t;
typedef __uint64_t __uintptr_t;
@@ -100,36 +93,6 @@ typedef __uint64_t __vm_size_t;
/*
* Unusual type definitions.
*/
-/*
- * The rune type above is declared to be an ``int'' instead of the more natural
- * ``unsigned long'' or ``long''. Two things are happening here. It is not
- * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
- * it looks like 10646 will be a 31 bit standard. This means that if your
- * ints cannot hold 32 bits, you will be in trouble. The reason an int was
- * chosen over a long is that the is*() and to*() routines take ints (says
- * ANSI C), but they use __ct_rune_t instead of int. By changing it here, you
- * lose a bit of ANSI conformance, but your programs will still work.
- *
- * NOTE: rune_t is not covered by ANSI nor other standards, and should not
- * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
- * rune_t must be the same type. Also wint_t must be no narrower than
- * wchar_t, and should also be able to hold all members of the largest
- * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
- */
-typedef __int32_t __ct_rune_t;
-typedef __int32_t __rune_t;
-typedef __int32_t __wchar_t;
-typedef __int32_t __wint_t;
-
-/*
- * mbstate_t is an opaque object to keep conversion state, during multibyte
- * stream conversions. The content must not be referenced by user programs.
- */
-typedef union {
- char __mbstate8[128];
- __int64_t _mbstateL; /* for alignment */
-} __mbstate_t;
-
#if defined(__GNUC__) && (__GNUC__ == 2 && __GNUC_MINOR__ > 95 || __GNUC__ >= 3)
typedef __builtin_va_list __va_list; /* internally known to gcc */
#else
diff --git a/sys/sys/_types.h b/sys/sys/_types.h
index 864ba71d91ec..da644ea8493a 100644
--- a/sys/sys/_types.h
+++ b/sys/sys/_types.h
@@ -32,10 +32,52 @@
#include <sys/cdefs.h>
#include <machine/_types.h>
+/*
+ * Standard type definitions.
+ */
+typedef __int32_t __clockid_t; /* clock_gettime()... */
+typedef __uint32_t __fflags_t; /* file flags */
typedef __uint64_t __fsblkcnt_t;
typedef __uint64_t __fsfilcnt_t;
+typedef __uint32_t __intrmask_t;
typedef __uint32_t __gid_t;
+typedef __int64_t __off_t; /* file offset */
+typedef __int32_t __pid_t; /* process [group] */
typedef __uint8_t __sa_family_t;
+typedef __uint32_t __socklen_t;
+typedef __int32_t __timer_t; /* timer_gettime()... */
typedef __uint32_t __uid_t;
+/*
+ * Unusual type definitions.
+ */
+/*
+ * rune_t is declared to be an ``int'' instead of the more natural
+ * ``unsigned long'' or ``long''. Two things are happening here. It is not
+ * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
+ * it looks like 10646 will be a 31 bit standard. This means that if your
+ * ints cannot hold 32 bits, you will be in trouble. The reason an int was
+ * chosen over a long is that the is*() and to*() routines take ints (says
+ * ANSI C), but they use __ct_rune_t instead of int.
+ *
+ * NOTE: rune_t is not covered by ANSI nor other standards, and should not
+ * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
+ * rune_t must be the same type. Also, wint_t must be no narrower than
+ * wchar_t, and should be able to hold all members of the largest
+ * character set plus one extra value (WEOF), and must be at least 16 bits.
+ */
+typedef int __ct_rune_t;
+typedef __ct_rune_t __rune_t;
+typedef __ct_rune_t __wchar_t;
+typedef __ct_rune_t __wint_t;
+
+/*
+ * mbstate_t is an opaque object to keep conversion state during multibyte
+ * stream conversions.
+ */
+typedef union {
+ char __mbstate8[128];
+ __int64_t _mbstateL; /* for alignment */
+} __mbstate_t;
+
#endif /* !_SYS__TYPES_H_ */