about summary refs log tree commit diff
path: root/conform
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2016-04-28 22:01:04 +0000
committerJoseph Myers <joseph@codesourcery.com>2016-04-28 22:01:04 +0000
commita7657f3012765b9c2d80c7387d487fc5156d3bc2 (patch)
tree7539c948fc051687164f87bd62388afa12316b8a /conform
parent022d239b5d20df6c0b1ee05d527b94b671a746fb (diff)
downloadglibc-a7657f3012765b9c2d80c7387d487fc5156d3bc2.tar.gz
glibc-a7657f3012765b9c2d80c7387d487fc5156d3bc2.tar.xz
glibc-a7657f3012765b9c2d80c7387d487fc5156d3bc2.zip
Fix stdio.h namespace for pre-threads POSIX (bug 20014).
stdio.h declares flockfile, ftrylockfile, funlockfile, getc_unlocked,
getchar_unlocked, putc_unlocked and putchar_unlocked if __USE_POSIX,
with comments "These are defined in POSIX.1:1996.".  But __USE_POSIX
is actually POSIX.1:1990, and these functions should not be declared
for 1990 / 1992 / 1993 POSIX, XPG3 or XPG4.  This patch fixes stdio.h
to use __USE_POSIX199506 instead for those conditionals, as that is
the correct conditional for the version of POSIX that introduced
threads, and with threads those functions.

Tested for x86_64 and x86 (testsuite, and that installed shared
libraries are unchanged by the patch).

	[BZ #20014]
	* libio/stdio.h (getc_unlocked): Declare if [__USE_POSIX199506],
	not [__USE_POSIX].
	(getchar_unlocked): Likewise.
	(putc_unlocked): Likewise.
	(putchar_unlocked): Likewise.
	(flockfile): Likewise.
	(ftrylockfile): Likewise.
	(funlockfile): Likewise.
	* conform/Makefile (test-xfail-XPG3/stdio.h/conform): Remove
	variable.
	(test-xfail-XPG4/stdio.h/conform): Likewise.
Diffstat (limited to 'conform')
-rw-r--r--conform/Makefile2
1 files changed, 0 insertions, 2 deletions
diff --git a/conform/Makefile b/conform/Makefile
index 06c4ff36f4..f2aa1771b6 100644
--- a/conform/Makefile
+++ b/conform/Makefile
@@ -169,7 +169,6 @@ test-xfail-XPG3/limits.h/conform = yes
 test-xfail-XPG3/pwd.h/conform = yes
 test-xfail-XPG3/search.h/conform = yes
 test-xfail-XPG3/signal.h/conform = yes
-test-xfail-XPG3/stdio.h/conform = yes
 test-xfail-XPG3/stdlib.h/conform = yes
 test-xfail-XPG3/string.h/conform = yes
 test-xfail-XPG3/sys/stat.h/conform = yes
@@ -183,7 +182,6 @@ test-xfail-XPG4/fcntl.h/conform = yes
 test-xfail-XPG4/netdb.h/conform = yes
 test-xfail-XPG4/netinet/in.h/conform = yes
 test-xfail-XPG4/signal.h/conform = yes
-test-xfail-XPG4/stdio.h/conform = yes
 test-xfail-XPG4/stdlib.h/conform = yes
 test-xfail-XPG4/sys/stat.h/conform = yes
 test-xfail-XPG4/sys/time.h/conform = yes