sys_stat: guarantee struct timespec
[pspp] / tests / test-sys_stat.c
index 25fe30d08fdba8279c2f63db6ec8911482ec4a3b..a73f9b81c61f608148275059b644ec0477439de7 100644 (file)
@@ -253,6 +253,23 @@ verify (!S_ISWHT (S_IFLNK));
 verify (!S_ISWHT (S_IFSOCK));
 #endif
 
+/* POSIX 2008 requires traditional encoding of permission constants.  */
+verify (S_IRWXU == 00700);
+verify (S_IRUSR == 00400);
+verify (S_IWUSR == 00200);
+verify (S_IXUSR == 00100);
+verify (S_IRWXG == 00070);
+verify (S_IRGRP == 00040);
+verify (S_IWGRP == 00020);
+verify (S_IXGRP == 00010);
+verify (S_IRWXO == 00007);
+verify (S_IROTH == 00004);
+verify (S_IWOTH == 00002);
+verify (S_IXOTH == 00001);
+verify (S_ISUID == 04000);
+verify (S_ISGID == 02000);
+verify (S_ISVTX == 01000);
+
 #if ((0 <= UTIME_NOW && UTIME_NOW < 1000000000)           \
      || (0 <= UTIME_OMIT && UTIME_OMIT < 1000000000)      \
      || UTIME_NOW == UTIME_OMIT)
@@ -262,6 +279,8 @@ invalid UTIME macros
 /* Check the existence of some types.  */
 nlink_t t1;
 
+struct timespec t2;
+
 int
 main ()
 {