aboutsummaryrefslogtreecommitdiff
path: root/bits
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-09-09 00:07:08 +0000
committerUlrich Drepper <drepper@redhat.com>2003-09-09 00:07:08 +0000
commit806e4a4a010f0c7e008a13e72c50136ee12b187f (patch)
tree9c3ca9da663afd040ada8484cbefe3b3c0ac8f1f /bits
parentScript to check non-changing C++ type name mangling. (diff)
downloadglibc-806e4a4a010f0c7e008a13e72c50136ee12b187f.tar.gz
glibc-806e4a4a010f0c7e008a13e72c50136ee12b187f.tar.bz2
glibc-806e4a4a010f0c7e008a13e72c50136ee12b187f.zip
Update.
2003-09-08 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit. (__u_quad_t): Make unsigned long int if 64-bit. (__SQUAD_TYPE): Make long int if 64-bit. (__UQUAD_TYPE): Make unsigned long int if 64-bit. * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove. 2003-09-08 Ulrich Drepper <drepper@redhat.com> * Makefile (tests): Run check-c++-types.sh if possible. * scripts/check-c++-types.h: New file. * scripts/data/c++-ctypes-i386-linux-gnu.data: New file. contiguous case. Bug report from Prem Gopalan <prem@mazunetworks.com>.
Diffstat (limited to 'bits')
-rw-r--r--bits/types.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/bits/types.h b/bits/types.h
index 59b85acf8c..8abea03f57 100644
--- a/bits/types.h
+++ b/bits/types.h
@@ -51,14 +51,13 @@ __extension__ typedef signed long long int __int64_t;
__extension__ typedef unsigned long long int __uint64_t;
#endif
-/* quad_t is also 64 bits, but is traditionally defined as `long long'
- even when `long' is also 64 bits. */
-#ifdef __GLIBC_HAVE_LONG_LONG
-__extension__ typedef long long int __quad_t;
-__extension__ typedef unsigned long long int __u_quad_t;
-#elif __WORDSIZE == 64
+/* quad_t is also 64 bits. */
+#if __WORDSIZE == 64
typedef long int __quad_t;
typedef unsigned long int __u_quad_t;
+#elif defined __GLIBC_HAVE_LONG_LONG
+__extension__ typedef long long int __quad_t;
+__extension__ typedef unsigned long long int __u_quad_t;
#else
typedef struct
{
@@ -106,9 +105,9 @@ typedef struct
#define __U32_TYPE unsigned int
#define __SLONGWORD_TYPE long int
#define __ULONGWORD_TYPE unsigned long int
-#define __SQUAD_TYPE long long int
-#define __UQUAD_TYPE unsigned long long int
#if __WORDSIZE == 32
+# define __SQUAD_TYPE long long int
+# define __UQUAD_TYPE unsigned long long int
# define __SWORD_TYPE int
# define __UWORD_TYPE unsigned int
# define __SLONG32_TYPE long int
@@ -116,6 +115,8 @@ typedef struct
# define __S64_TYPE __quad_t
# define __U64_TYPE __u_quad_t
#elif __WORDSIZE == 64
+# define __SQUAD_TYPE long int
+# define __UQUAD_TYPE unsigned long int
# define __SWORD_TYPE long int
# define __UWORD_TYPE unsigned long int
# define __SLONG32_TYPE int