[RFC,hurd,64bit] : st_dev type
Checks
Context |
Check |
Description |
dj/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
dj/TryBot-32bit |
success
|
Build for i686
|
Commit Message
Hello,
Since we are creating a new ABI, it's time to take care of types :)
I have fixed a few cases that had been identified on hurd 32bit, so that
hurd 64bit doesn't get affected.
There is however one case which remains problematic: stat.st_dev, which
the standars say to have type dev_t, is #defined to st_fsid on Hurd,
since the pid of the translator is what is representative of the device
number. It happens that dev_t is 32bit (__U32_TYPE) and fsid_t is
64bit (__UQUAD_TYPE), see BZ 23084. Perhaps we should just make dev_t
UWORD_TYPE, so it becomes 64bit on Hurd 64bit, as the attached patch
does? (it is UQUAD or 64bit on Linux ports)
I have only checked what is tested by the testsuite, we should
probably carefully review all types exposed by libc with hurd-specific
definitions.
Samuel
@@ -26,7 +26,7 @@
/* See <bits/types.h> for the meaning of these macros. This file exists so
that <bits/types.h> need not vary across different GNU platforms. */
-#define __DEV_T_TYPE __U32_TYPE
+#define __DEV_T_TYPE __UWORD_TYPE
#define __UID_T_TYPE __U32_TYPE
#define __GID_T_TYPE __U32_TYPE
#define __INO_T_TYPE __ULONGWORD_TYPE