about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2016-05-10 17:48:23 +0000
committerJoseph Myers <joseph@codesourcery.com>2016-05-10 17:48:23 +0000
commit23f3a3b5d4f1f1fb77c82899787d69812bd21cf9 (patch)
tree5976a70a1230f7d17391cb49dd75732cc91bc69f
parent77d21a1f4f56659dc3f6d0e841cdf8df0ba2a16a (diff)
downloadglibc-23f3a3b5d4f1f1fb77c82899787d69812bd21cf9.tar.gz
glibc-23f3a3b5d4f1f1fb77c82899787d69812bd21cf9.tar.xz
glibc-23f3a3b5d4f1f1fb77c82899787d69812bd21cf9.zip
conformtest: Correct some sys/stat.h expectations for XPG3.
This patch fixes various conformtest sys/stat.h expectations that were
incorrect for XPG3 (not based on a full review, so not necessarily an
exhaustive set of such corrections).  Most of these corrections fix
spurious failures shown in testing (but that for fchmod introduces a
correct failure, as that function is wrongly declared for XPG3, so
this doesn't eliminate any XFAILs).

Tested for x86_64 and x86.

	* conform/data/sys/stat.h-data [XPG3] (S_IFLNK): Do not expect.
	[XPG3] (S_IFSOCK): Likewise.
	[XPG3] (S_ISVTX): Likewise.
	[XPG3] (S_ISLNK): Likewise.
	[XPG3] (S_ISSOCK): Likewise.
	[XPG3] (fchmod): Likewise.
	[XPG3] (lstat): Likewise.
	[XPG3] (mknod): Likewise.
-rw-r--r--ChangeLog9
-rw-r--r--conform/data/sys/stat.h-data12
2 files changed, 17 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 4e0870fef6..c66244413c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
 2016-05-10  Joseph Myers  <joseph@codesourcery.com>
 
+	* conform/data/sys/stat.h-data [XPG3] (S_IFLNK): Do not expect.
+	[XPG3] (S_IFSOCK): Likewise.
+	[XPG3] (S_ISVTX): Likewise.
+	[XPG3] (S_ISLNK): Likewise.
+	[XPG3] (S_ISSOCK): Likewise.
+	[XPG3] (fchmod): Likewise.
+	[XPG3] (lstat): Likewise.
+	[XPG3] (mknod): Likewise.
+
 	* conform/data/sys/stat.h-data (st_blksize): Do not expect for
 	[XPG3].  Expect type long and XFAIL for [XPG4].
 	(st_blocks): Likewise.
diff --git a/conform/data/sys/stat.h-data b/conform/data/sys/stat.h-data
index c70ef4529f..f7a944adc5 100644
--- a/conform/data/sys/stat.h-data
+++ b/conform/data/sys/stat.h-data
@@ -70,8 +70,10 @@ constant S_IFCHR
 constant S_IFIFO
 constant S_IFREG
 constant S_IFDIR
+# ifndef XPG3
 constant S_IFLNK
 constant S_IFSOCK
+# endif
 #endif
 
 constant S_IRWXU
@@ -88,7 +90,7 @@ constant S_IWOTH
 constant S_IXOTH
 constant S_ISUID
 constant S_ISGID
-#if !defined POSIX && !defined POSIX2008
+#if !defined XPG3 && !defined POSIX && !defined POSIX2008
 constant S_ISVTX
 #endif
 
@@ -97,7 +99,7 @@ macro S_ISCHR
 macro S_ISDIR
 macro S_ISFIFO
 macro S_ISREG
-#if !defined POSIX
+#if !defined XPG3 && !defined POSIX
 macro S_ISLNK
 macro S_ISSOCK
 #endif
@@ -116,7 +118,9 @@ constant UTIME_OMIT
 # endif
 
 function int chmod (const char*, mode_t)
+# ifndef XPG3
 function int fchmod (int, mode_t)
+# endif
 # if defined XOPEN2K8 || defined POSIX2008
 function int fchmodat (int, const char*, mode_t, int)
 # endif
@@ -125,7 +129,7 @@ function int fstat (int, struct stat*)
 function int fstatat (int, const char*, struct stat*, int)
 function int futimens (int, const struct timespec[2])
 # endif
-#if !defined POSIX
+#if !defined XPG3 && !defined POSIX
 function int lstat (const char*, struct stat*)
 #endif
 function int mkdir (const char*, mode_t)
@@ -136,7 +140,7 @@ function int mkfifo (const char*, mode_t)
 # if defined XOPEN2K8 || defined POSIX2008
 function int mkfifoat (int, const char*, mode_t)
 # endif
-# if !defined POSIX && !defined POSIX2008
+# if !defined XPG3 && !defined POSIX && !defined POSIX2008
 function int mknod (const char*, mode_t, dev_t)
 # endif
 # ifdef XOPEN2K8