summaryrefslogtreecommitdiff
path: root/include/sys/types.h
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2007-01-29 14:31:16 +0000
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2007-01-29 14:31:16 +0000
commit3b44ff3cbc0002cfde1a4699918f6c54cdbe03bf (patch)
tree75509ae97fa65c8586661278df19c8e27154b335 /include/sys/types.h
parent145570840fe457b1bbce0366917d54e29aab6ea6 (diff)
- sync with glibc (and provide a check for icc).
Only affects gcc <2.7 or non-gcc compilers that bailed earlier due to missing int64_t
Diffstat (limited to 'include/sys/types.h')
-rw-r--r--include/sys/types.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/sys/types.h b/include/sys/types.h
index 087819b02..8c0b5dce3 100644
--- a/include/sys/types.h
+++ b/include/sys/types.h
@@ -163,7 +163,9 @@ typedef unsigned int uint;
typedef char int8_t;
typedef short int int16_t;
typedef int int32_t;
-# ifdef __GNUC__
+# if __WORDSIZE == 64
+typedef long int int64_t;
+# elif defined __GNUC__ || defined __ICC
__extension__ typedef long long int int64_t;
# endif
# endif
@@ -172,7 +174,9 @@ __extension__ typedef long long int int64_t;
typedef unsigned char u_int8_t;
typedef unsigned short int u_int16_t;
typedef unsigned int u_int32_t;
-# ifdef __GNUC__
+# if __WORDSIZE == 64
+typedef unsigned long int u_int64_t;
+# elif defined __GNUC__ || defined __ICC
__extension__ typedef unsigned long long int u_int64_t;
# endif