summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2014-03-07 20:54:03 +0000
committerJoseph Myers <joseph@codesourcery.com>2014-03-07 20:54:03 +0000
commitbc61d27c616f517521826581f0401f5b81772a65 (patch)
tree2938f06614c3121a13e9868c9876b27359c0c019
parent302949e2940a9da3f6364a1574619e621b7e1e71 (diff)
Include all of <time.h> from <sched.h> for older standards (bug 16670).
This patch fixes one of the header namespace issues shown up by conformtest, <sched.h> failing to expose all symbols from <time.h> as required by older standards. The patch keeps the existing behavior if __USE_XOPEN2K is defined (the default; POSIX.1-2001 was the version that made it optional to expose these symbols), but ensures that all the symbols from <time.h> are exposed if an older standard is selected. Tested x86_64. [BZ #16670] * posix/sched.h [!__USE_XOPEN2K] (__need_time_t): Don't define before #include of <time.h>. [!__USE_XOPEN2K] (__need_timespec): Likewise. * conform/Makefile (test-xfail-POSIX/sched.h/conform): Remove. (test-xfail-UNIX98/sched.h/conform): Likewise.
-rw-r--r--ChangeLog9
-rw-r--r--NEWS2
-rw-r--r--conform/Makefile2
-rw-r--r--posix/sched.h6
4 files changed, 14 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 88b70f1a7c..c0ebdc6de9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2014-03-07 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #16670]
+ * posix/sched.h [!__USE_XOPEN2K] (__need_time_t): Don't define
+ before #include of <time.h>.
+ [!__USE_XOPEN2K] (__need_timespec): Likewise.
+ * conform/Makefile (test-xfail-POSIX/sched.h/conform): Remove.
+ (test-xfail-UNIX98/sched.h/conform): Likewise.
+
2014-03-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
* sysdeps/aarch64/fpu/feenablxcpt.c (feenableexcept): Detect and
diff --git a/NEWS b/NEWS
index 0c5b39a857..2e55672931 100644
--- a/NEWS
+++ b/NEWS
@@ -10,7 +10,7 @@ Version 2.20
* The following bugs are resolved with this release:
15347, 15804, 15894, 16447, 16532, 16545, 16574, 16600, 16609, 16610,
- 16611, 16613, 16623, 16632.
+ 16611, 16613, 16623, 16632, 16670.
* The am33 port, which had not worked for several years, has been removed
from ports.
diff --git a/conform/Makefile b/conform/Makefile
index 3e08728cca..e8c9a9acca 100644
--- a/conform/Makefile
+++ b/conform/Makefile
@@ -188,7 +188,6 @@ test-xfail-XPG4/termios.h/conform = yes
test-xfail-XPG4/ucontext.h/conform = yes
test-xfail-XPG4/unistd.h/conform = yes
test-xfail-XPG4/utmpx.h/conform = yes
-test-xfail-POSIX/sched.h/conform = yes
test-xfail-POSIX/signal.h/conform = yes
test-xfail-POSIX/sys/wait.h/conform = yes
test-xfail-POSIX/tar.h/conform = yes
@@ -197,7 +196,6 @@ test-xfail-UNIX98/fcntl.h/conform = yes
test-xfail-UNIX98/langinfo.h/conform = yes
test-xfail-UNIX98/netdb.h/conform = yes
test-xfail-UNIX98/netinet/in.h/conform = yes
-test-xfail-UNIX98/sched.h/conform = yes
test-xfail-UNIX98/signal.h/conform = yes
test-xfail-UNIX98/stdio.h/conform = yes
test-xfail-UNIX98/stdlib.h/conform = yes
diff --git a/posix/sched.h b/posix/sched.h
index f7da2559f9..779109a2c7 100644
--- a/posix/sched.h
+++ b/posix/sched.h
@@ -27,8 +27,10 @@
#define __need_size_t
#include <stddef.h>
-#define __need_time_t
-#define __need_timespec
+#ifdef __USE_XOPEN2K
+# define __need_time_t
+# define __need_timespec
+#endif
#include <time.h>
#ifndef __pid_t_defined