about summary refs log tree commit diff
path: root/signal
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-06-09 13:45:37 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-06-09 13:45:37 +0000
commit0862cdcdc814185345ab3e6eda4bb1b81efdf76a (patch)
tree4e46c89e9237410e88caa7f75993a9409cd1da97 /signal
parentb4971123e9e681126cb8eaae6d5de56be84c9e98 (diff)
downloadglibc-0862cdcdc814185345ab3e6eda4bb1b81efdf76a.tar.gz
glibc-0862cdcdc814185345ab3e6eda4bb1b81efdf76a.tar.xz
glibc-0862cdcdc814185345ab3e6eda4bb1b81efdf76a.zip
Condition signal.h inclusion in sys/wait.h (bug 21560).
sys/wait.h includes signal.h unconditionally.  But the permission to
do so is UX-shaded in XPG4.2, and XSI-shaded in POSIX before 2008, so
this should not be unconditional.  This patch fixes this
conservatively: the include is kept, but conditioned on the standards
that permit it (meaning it is still present by default, because
non-XSI POSIX.1:2008 is enabled by default).  <bits/types.h> is now
included unconditionally to provide the required definition of
__pid_t; it was previously included via <signal.h>.  Some standards
require pid_t to be defined here, and all allow it to be defined here;
previously defined via <signal.h>, it's now defined directly in this
header.

Tested for x86_64.  This does not fix any of the sys/wait.h
conformtest failures, but substantially reduces the number of
namespace failures for sys/wait.h for XPG4 and POSIX.

	[BZ #21560]
	* posix/sys/wait.h: Condition include of <signal.h> on
	[__USE_XOPEN_EXTENDED || __USE_XOPEN2K8].  Include <bits/types.h>
	unconditionally.
	[!__pid_t_defined] (pid_t): Define typedef.
Diffstat (limited to 'signal')
0 files changed, 0 insertions, 0 deletions