aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2016-01-06 19:51:28 -0500
committerMike Frysinger <vapier@gentoo.org>2016-01-07 14:37:09 -0500
commit1f89b8d881b5dda6447b8be8ff40c1020b1f548e (patch)
tree24b3c5ebba6aa165b68c4ea27c18c393f8600329
parent670a687dea6773147a227bebfa9d801dae739ee0 (diff)
downloadglibc-1f89b8d881b5dda6447b8be8ff40c1020b1f548e.zip
glibc-1f89b8d881b5dda6447b8be8ff40c1020b1f548e.tar.gz
glibc-1f89b8d881b5dda6447b8be8ff40c1020b1f548e.tar.bz2
xstat: only check to see if __ASSUME_ST_INO_64_BIT is defined
We define __ASSUME_ST_INO_64_BIT by default for Linux targets, and then undef it for alpha/sh targets. But the code that uses it looks at its value (as 0/1) rather than whether it's defined (like all other assume knobs). Change the code to see if it's defined to fix build Wundef build errors for alpha/sh.
-rw-r--r--ChangeLog10
-rw-r--r--sysdeps/unix/sysv/linux/fxstat64.c2
-rw-r--r--sysdeps/unix/sysv/linux/lxstat64.c2
-rw-r--r--sysdeps/unix/sysv/linux/xstat64.c2
-rw-r--r--sysdeps/unix/sysv/linux/xstatconv.c2
5 files changed, 13 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index d7dd24b..a3c4d8e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,12 @@
-2016-01-06 Paul Eggert <eggert@cs.ucla.edu>
+2016-01-07 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/fxstat64.c (___fxstat64): Change
+ __ASSUME_ST_INO_64_BIT == 0 to !defined __ASSUME_ST_INO_64_BIT.
+ * sysdeps/unix/sysv/linux/lxstat64.c (___lxstat64): Likewise.
+ * sysdeps/unix/sysv/linux/xstat64.c (___xstat64): Likewise.
+ * sysdeps/unix/sysv/linux/xstatconv.c (__xstat32_conv): Likewise.
+
+2016-01-07 Paul Eggert <eggert@cs.ucla.edu>
Joseph Myers <joseph@codesourcery.com>
* timezone/private.h: Update from tzcode 2015g.
diff --git a/sysdeps/unix/sysv/linux/fxstat64.c b/sysdeps/unix/sysv/linux/fxstat64.c
index d48355f..5468dd6 100644
--- a/sysdeps/unix/sysv/linux/fxstat64.c
+++ b/sysdeps/unix/sysv/linux/fxstat64.c
@@ -33,7 +33,7 @@ ___fxstat64 (int vers, int fd, struct stat64 *buf)
{
int result;
result = INLINE_SYSCALL (fstat64, 2, fd, buf);
-#if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0
+#if defined _HAVE_STAT64___ST_INO && !defined __ASSUME_ST_INO_64_BIT
if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino)
buf->st_ino = buf->__st_ino;
#endif
diff --git a/sysdeps/unix/sysv/linux/lxstat64.c b/sysdeps/unix/sysv/linux/lxstat64.c
index 581f0e8..09a678a 100644
--- a/sysdeps/unix/sysv/linux/lxstat64.c
+++ b/sysdeps/unix/sysv/linux/lxstat64.c
@@ -32,7 +32,7 @@ ___lxstat64 (int vers, const char *name, struct stat64 *buf)
{
int result;
result = INLINE_SYSCALL (lstat64, 2, name, buf);
-#if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0
+#if defined _HAVE_STAT64___ST_INO && !defined __ASSUME_ST_INO_64_BIT
if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino)
buf->st_ino = buf->__st_ino;
#endif
diff --git a/sysdeps/unix/sysv/linux/xstat64.c b/sysdeps/unix/sysv/linux/xstat64.c
index 0a29544..2075383 100644
--- a/sysdeps/unix/sysv/linux/xstat64.c
+++ b/sysdeps/unix/sysv/linux/xstat64.c
@@ -33,7 +33,7 @@ ___xstat64 (int vers, const char *name, struct stat64 *buf)
{
int result;
result = INLINE_SYSCALL (stat64, 2, name, buf);
-#if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0
+#if defined _HAVE_STAT64___ST_INO && !defined __ASSUME_ST_INO_64_BIT
if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino)
buf->st_ino = buf->__st_ino;
#endif
diff --git a/sysdeps/unix/sysv/linux/xstatconv.c b/sysdeps/unix/sysv/linux/xstatconv.c
index 9d775f6..c5fbf3d 100644
--- a/sysdeps/unix/sysv/linux/xstatconv.c
+++ b/sysdeps/unix/sysv/linux/xstatconv.c
@@ -190,7 +190,7 @@ __xstat32_conv (int vers, struct stat64 *kbuf, struct stat *buf)
buf->__pad1 = 0;
#endif
#ifdef _HAVE_STAT64___ST_INO
-# if __ASSUME_ST_INO_64_BIT == 0
+# ifndef __ASSUME_ST_INO_64_BIT
if (kbuf->st_ino == 0)
buf->st_ino = kbuf->__st_ino;
else