aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--posix/sys/types.h10
2 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index e6223ed..3dd2cb6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2006-02-28 Jakub Jelinek <jakub@redhat.com>
+ * 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.
+
* sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: Include x86_64
umount.c rather than hppa umount.c.
* sysdeps/unix/sysv/linux/sparc/sparc32/chown.c: Include sh chown.c
diff --git a/posix/sys/types.h b/posix/sys/types.h
index 0a645db..04563a4 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