This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

conformtest: Fix sys/wait.h expectations for struct rusage


I looked at the conformtest failures for XOPEN2K8 and POSIX2008.  Some
failures related to struct rusage not being defined by sys/wait.h.
That appears to be a mistaken expectation in the test data; those
standards (and XPG3) do not specify it as present in sys/wait.h (it's
correctly expected for XPG4 and XOPEN2K).  This patch fixes the
incorrect expectation.

Tested x86_64.  This eliminates three failed tests for each of XPG3,
XOPEN2K8, POSIX2008.  I think the remaining failures for XOPEN2K8 and
POSIX2008 reflect genuine header bugs (some of which may require other
library or Linux kernel changes to fix, and some of the types may be
deliberate choices where the Linux choice is more useful for some
purposes, but at least the first three should be fixable):

* math.h constants not usable in #if (bug 3439, patch sent).

* Missing O_TTY_INIT, O_EXEC, O_SEARCH.

* ioctl has wrong type (bug 14362, and see my comments on ABI issues
  in <http://sourceware.org/ml/libc-alpha/2012-07/msg00458.html>, and
  the rest of that thread).

* Incorrect socket types (msg_iovlen, msg_controllen, cmsg_len).

* Incorrect IPC types (ipc_perm.mode, sem_nsems).

* Incorrect ut_tv type in utmpx.h.

(And missing ndbm.h, which isn't glibc's problem.)

2012-11-02  Joseph Myers  <joseph@codesourcery.com>

	* conform/data/sys/wait.h-data [XPG3 || XOPEN2K8 || POSIX2008]
	(struct rusage): Do not expect type or its members.

diff --git a/conform/data/sys/wait.h-data b/conform/data/sys/wait.h-data
index 8187669..6acdab2 100644
--- a/conform/data/sys/wait.h-data
+++ b/conform/data/sys/wait.h-data
@@ -47,7 +47,7 @@ element siginfo_t int si_status
 element siginfo_t long si_band
 element siginfo_t {union sigval} si_value
 
-#if !defined POSIX
+#if !defined POSIX && !defined XPG3 && !defined XOPEN2K8 && !defined POSIX2008
 type {struct rusage}
 
 element {struct rusage} {struct timeval} ru_utime

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]