about summary refs log tree commit diff
path: root/posix
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2006-02-28 19:11:33 +0000
committerRoland McGrath <roland@gnu.org>2006-02-28 19:11:33 +0000
commit556c18b2b87ca7de710fe08b580547eac5251c59 (patch)
tree75bc783d3833d0d5db806930f7e6c82de492a75d /posix
parent016080606c689982d2c15578aebbabf5c301bb3b (diff)
downloadglibc-556c18b2b87ca7de710fe08b580547eac5251c59.tar.gz
glibc-556c18b2b87ca7de710fe08b580547eac5251c59.tar.xz
glibc-556c18b2b87ca7de710fe08b580547eac5251c59.zip
* posix/sys/types.h [!__GNUC_PREREQ (2, 7)] (int64_t, u_int64_t):
	typedef to long int resp. unsigned long int on 64-bit arches.
Diffstat (limited to 'posix')
-rw-r--r--posix/sys/types.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/posix/sys/types.h b/posix/sys/types.h
index 0a645dbaad..04563a4abc 100644
--- a/posix/sys/types.h
+++ b/posix/sys/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,1992,1994,1995,1996,1997,1998,1999,2000,2001,2002
+/* Copyright (C) 1991,1992,1994,1995,1996,1997,1998,1999,2000,2001,2002,2006
    	Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -163,7 +163,9 @@ typedef unsigned int uint;
 typedef	char int8_t;
 typedef	short int int16_t;
 typedef	int int32_t;
-#  if __GLIBC_HAVE_LONG_LONG
+#  if __WORDSIZE == 64
+typedef long int int64_t;
+#  elif __GLIBC_HAVE_LONG_LONG
 __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;
-# if __GLIBC_HAVE_LONG_LONG
+# if __WORDSIZE == 64
+typedef unsigned long int u_int64_t;
+# elif __GLIBC_HAVE_LONG_LONG
 __extension__ typedef unsigned long long int u_int64_t;
 # endif