+2018-04-19 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * sysdeps/mach/hurd/i386/Makefile [$(subdir) = conform]
+ (conformtest-xfail-conds): Add i386-gnu.
+ * conform/data/fcntl.h-data (flock.l_type, flock.l_whence): XFAIL for
+ i386-gnu.
+ * conform/data/sys/ipc.h-data (ipc_perm.uid, ipc_perm.gid,
+ ipc_perm.cuid, ipc_perm.cgid): Likewise.
+ * conform/data/sys/msg.h-data (msqid_ds.msg_lspid,
+ msqid_ds.msg_lrpid): Likewise.
+ * conform/data/sys/shm.h-data (shmid_ds.shm_lpid, shmid_ds.shm_cpid):
+ Likewise.
+ * conform/data/sys/stat.h-data (stat.st_dev): Likewise.
+ * conform/data/sys/statvfs.h-data (statvfs.f_fsid): Likewise.
+
2018-04-18 Joseph Myers <joseph@codesourcery.com>
* scripts/build-many-glibcs.py (Context.add_all_configs): Use
type {struct flock}
-element {struct flock} short l_type
-element {struct flock} short l_whence
+// Bug 23081: l_type and l_whence members of flock structure have type int instead of short
+xfail[i386-gnu]-element {struct flock} short l_type
+xfail[i386-gnu]-element {struct flock} short l_whence
element {struct flock} off_t l_start
element {struct flock} off_t l_len
element {struct flock} pid_t l_pid
#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
type {struct ipc_perm}
-element {struct ipc_perm} uid_t uid
-element {struct ipc_perm} gid_t gid
-element {struct ipc_perm} uid_t cuid
-element {struct ipc_perm} gid_t cgid
+// Bug 23082: uid/gid/cuid/cgid/mode have type unsigned short instead of uid_t and mode_t.
+xfail[i386-gnu]-element {struct ipc_perm} uid_t uid
+xfail[i386-gnu]-element {struct ipc_perm} gid_t gid
+xfail[i386-gnu]-element {struct ipc_perm} uid_t cuid
+xfail[i386-gnu]-element {struct ipc_perm} gid_t cgid
// Bug 18231: wrong type for mode member.
xfail-element {struct ipc_perm} mode_t mode
element {struct msqid_ds} {struct ipc_perm} msg_perm
element {struct msqid_ds} msgqnum_t msg_qnum
element {struct msqid_ds} msglen_t msg_qbytes
-element {struct msqid_ds} pid_t msg_lspid
-element {struct msqid_ds} pid_t msg_lrpid
+// Bug 23083: msg_lspid/msg_lrpid have type unsigned short instead of pid_t.
+xfail[i386-gnu]-element {struct msqid_ds} pid_t msg_lspid
+xfail[i386-gnu]-element {struct msqid_ds} pid_t msg_lrpid
element {struct msqid_ds} time_t msg_stime
element {struct msqid_ds} time_t msg_rtime
element {struct msqid_ds} time_t msg_ctime
element {struct shmid_ds} {struct ipc_perm} shm_perm
element {struct shmid_ds} size_t shm_segsz
-element {struct shmid_ds} pid_t shm_lpid
-element {struct shmid_ds} pid_t shm_cpid
+// Bug 23085: shm_lpid/shm_cpid have type unsigned short instead of pid_t
+xfail[i386-gnu]-element {struct shmid_ds} pid_t shm_lpid
+xfail[i386-gnu]-element {struct shmid_ds} pid_t shm_cpid
element {struct shmid_ds} shmatt_t shm_nattch
element {struct shmid_ds} time_t shm_atime
element {struct shmid_ds} time_t shm_dtime
type {struct stat}
// Bug 17786: st_dev has wrong type.
-xfail[mips-o32-linux]-element {struct stat} dev_t st_dev
+// Bug 23084: st_dev has type unsigned long long instead of dev_t (unsigned).
+xfail[mips-o32-linux|i386-gnu]-element {struct stat} dev_t st_dev
element {struct stat} ino_t st_ino
element {struct stat} mode_t st_mode
element {struct stat} nlink_t st_nlink
element {struct statvfs} fsfilcnt_t f_files
element {struct statvfs} fsfilcnt_t f_ffree
element {struct statvfs} fsfilcnt_t f_favail
-element {struct statvfs} {unsigned long} f_fsid
+// Bug 23086: f_fsid has type unsigned long long instead of unsigned long
+xfail[i386-gnu]-element {struct statvfs} {unsigned long} f_fsid
element {struct statvfs} {unsigned long} f_flag
element {struct statvfs} {unsigned long} f_namemax
CPPFLAGS-divdi3.c = -Din_divdi3_c
endif
endif
+
+ifeq ($(subdir),conform)
+# For bugs 23081, 23082, 23083, 23084, 23085, 23086.
+conformtest-xfail-conds += i386-gnu
+endif