1 #if !defined ISO && !defined ISO99 && !defined ISO11
3 #if !defined POSIX && !defined POSIX2008 && !defined XPG4 && !defined XPG42
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
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
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
49 #if !defined XPG4 && !defined POSIX && !defined POSIX2008
51 // The XPG42 use of "long" for these fields is not compatible with the
52 // use of typedefs in future standards to support values outside the
54 xfail-element {struct stat} long st_blksize
55 xfail-element {struct stat} long st_blocks
57 element {struct stat} blksize_t st_blksize
58 element {struct stat} blkcnt_t st_blocks
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
69 #if !defined POSIX && !defined POSIX2008
96 #if !defined XPG4 && !defined POSIX && !defined POSIX2008
105 #if !defined XPG4 && !defined POSIX
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 XPG4 && !defined XPG42 && !defined UNIX98
115 optional-macro S_TYPEISTMO
118 # if defined XOPEN2K8 || defined POSIX2008
123 function int chmod (const char*, mode_t)
125 function int fchmod (int, mode_t)
127 # if defined XOPEN2K8 || defined POSIX2008
128 function int fchmodat (int, const char*, mode_t, int)
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])
135 #if !defined XPG4 && !defined POSIX
136 function int lstat (const char*, struct stat*)
138 function int mkdir (const char*, mode_t)
139 # if defined XOPEN2K8 || defined POSIX2008
140 function int mkdirat (int, const char*, mode_t)
142 function int mkfifo (const char*, mode_t)
143 # if defined XOPEN2K8 || defined POSIX2008
144 function int mkfifoat (int, const char*, mode_t)
146 # if !defined XPG4 && !defined POSIX && !defined POSIX2008
147 function int mknod (const char*, mode_t, dev_t)
150 function int mknodat (int, const char*, mode_t, dev_t)
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)