conformtest: Add mips XFAIL for struct stat st_rdev type (bug 21278).
[glibc.git] / conform / data / sys / stat.h-data
blob07d55e6bd4938f6e937df2d12f66eb3e3ba7765e
1 #if !defined ISO && !defined ISO99 && !defined ISO11
3 #if !defined POSIX && !defined POSIX2008 && !defined XPG3 && !defined XPG4
4 type blkcnt_t
5 type blksize_t
6 #endif
7 #ifndef POSIX
8 type dev_t
9 type ino_t
10 type mode_t
11 type nlink_t
12 type uid_t
13 type gid_t
14 type off_t
15 type time_t
16 #else
17 # define dev_t __dev_t
18 # define ino_t __ino_t
19 # define mode_t __mode_t
20 # define nlink_t __nlink_t
21 # define uid_t __uid_t
22 # define gid_t __gid_t
23 # define off_t __off_t
24 # define time_t __time_t
25 #endif
27 type {struct stat}
29 // Bug 17786: st_dev has wrong type.
30 xfail[mips-o32-linux]-element {struct stat} dev_t st_dev
31 element {struct stat} ino_t st_ino
32 element {struct stat} mode_t st_mode
33 element {struct stat} nlink_t st_nlink
34 element {struct stat} uid_t st_uid
35 element {struct stat} gid_t st_gid
36 #if !defined POSIX && !defined POSIX2008
37 // Bug 21278: st_rdev has wrong type.
38 xfail[mips-o32-linux]-element {struct stat} dev_t st_rdev
39 #endif
40 element {struct stat} off_t st_size
41 element {struct stat} time_t st_atime
42 element {struct stat} time_t st_mtime
43 element {struct stat} time_t st_ctime
44 #if defined XOPEN2K8 || defined POSIX2008
45 element {struct stat} {struct timespec} st_atim
46 element {struct stat} {struct timespec} st_mtim
47 element {struct stat} {struct timespec} st_ctim
48 #endif
49 #if !defined XPG3 && !defined POSIX && !defined POSIX2008
50 # ifdef XPG4
51 // The XPG4 use of "long" for these fields is not compatible with the
52 // use of typedefs in future standards to support values outside the
53 // range of "long".
54 xfail-element {struct stat} long st_blksize
55 xfail-element {struct stat} long st_blocks
56 # else
57 element {struct stat} blksize_t st_blksize
58 element {struct stat} blkcnt_t st_blocks
59 # endif
60 #endif
62 # if defined XOPEN2K8 || defined POSIX2008
63 type {struct timespec}
64 element {struct timespec} time_t tv_sec
65 // Bug 16437: tv_nsec has wrong type.
66 xfail[x86_64-x32-linux]-element {struct timespec} long tv_nsec
67 # endif
69 #if !defined POSIX && !defined POSIX2008
70 constant S_IFMT
71 constant S_IFBLK
72 constant S_IFCHR
73 constant S_IFIFO
74 constant S_IFREG
75 constant S_IFDIR
76 # ifndef XPG3
77 constant S_IFLNK
78 constant S_IFSOCK
79 # endif
80 #endif
82 constant S_IRWXU
83 constant S_IRUSR
84 constant S_IWUSR
85 constant S_IXUSR
86 constant S_IRWXG
87 constant S_IRGRP
88 constant S_IWGRP
89 constant S_IXGRP
90 constant S_IRWXO
91 constant S_IROTH
92 constant S_IWOTH
93 constant S_IXOTH
94 constant S_ISUID
95 constant S_ISGID
96 #if !defined XPG3 && !defined POSIX && !defined POSIX2008
97 constant S_ISVTX
98 #endif
100 macro S_ISBLK
101 macro S_ISCHR
102 macro S_ISDIR
103 macro S_ISFIFO
104 macro S_ISREG
105 #if !defined XPG3 && !defined POSIX
106 macro S_ISLNK
107 macro S_ISSOCK
108 #endif
110 // How to represent optional tests?
111 optional-macro S_TYPEISMQ
112 optional-macro S_TYPEISSEM
113 optional-macro S_TYPEISSHM
114 # if !defined POSIX && !defined XPG3 && !defined XPG4 && !defined UNIX98
115 optional-macro S_TYPEISTMO
116 # endif
118 # if defined XOPEN2K8 || defined POSIX2008
119 constant UTIME_NOW
120 constant UTIME_OMIT
121 # endif
123 function int chmod (const char*, mode_t)
124 # ifndef XPG3
125 function int fchmod (int, mode_t)
126 # endif
127 # if defined XOPEN2K8 || defined POSIX2008
128 function int fchmodat (int, const char*, mode_t, int)
129 # endif
130 function int fstat (int, struct stat*)
131 # if defined XOPEN2K8 || defined POSIX2008
132 function int fstatat (int, const char*, struct stat*, int)
133 function int futimens (int, const struct timespec[2])
134 # endif
135 #if !defined XPG3 && !defined POSIX
136 function int lstat (const char*, struct stat*)
137 #endif
138 function int mkdir (const char*, mode_t)
139 # if defined XOPEN2K8 || defined POSIX2008
140 function int mkdirat (int, const char*, mode_t)
141 # endif
142 function int mkfifo (const char*, mode_t)
143 # if defined XOPEN2K8 || defined POSIX2008
144 function int mkfifoat (int, const char*, mode_t)
145 # endif
146 # if !defined XPG3 && !defined POSIX && !defined POSIX2008
147 function int mknod (const char*, mode_t, dev_t)
148 # endif
149 # ifdef XOPEN2K8
150 function int mknodat (int, const char*, mode_t, dev_t)
151 # endif
152 function int stat (const char*, struct stat*)
153 function mode_t umask (mode_t)
154 # if defined XOPEN2K8 || defined POSIX2008
155 function int utimensat (int, const char*, const struct timespec[2], int)
156 # endif
158 allow st_*
159 allow S_*
160 allow *_t
161 #endif