mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
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.
This commit is contained in:
13
ChangeLog
13
ChangeLog
@ -1,5 +1,18 @@
|
|||||||
2016-04-28 Joseph Myers <joseph@codesourcery.com>
|
2016-04-28 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
|
[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.
|
||||||
|
|
||||||
* conform/data/langinfo.h-data [XPG3 || XPG4 || UNIX98] (YESSTR):
|
* conform/data/langinfo.h-data [XPG3 || XPG4 || UNIX98] (YESSTR):
|
||||||
Expect constant.
|
Expect constant.
|
||||||
[XPG3 || XPG4 || UNIX98] (NOSTR): Likewise.
|
[XPG3 || XPG4 || UNIX98] (NOSTR): Likewise.
|
||||||
|
@ -169,7 +169,6 @@ test-xfail-XPG3/limits.h/conform = yes
|
|||||||
test-xfail-XPG3/pwd.h/conform = yes
|
test-xfail-XPG3/pwd.h/conform = yes
|
||||||
test-xfail-XPG3/search.h/conform = yes
|
test-xfail-XPG3/search.h/conform = yes
|
||||||
test-xfail-XPG3/signal.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/stdlib.h/conform = yes
|
||||||
test-xfail-XPG3/string.h/conform = yes
|
test-xfail-XPG3/string.h/conform = yes
|
||||||
test-xfail-XPG3/sys/stat.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/netdb.h/conform = yes
|
||||||
test-xfail-XPG4/netinet/in.h/conform = yes
|
test-xfail-XPG4/netinet/in.h/conform = yes
|
||||||
test-xfail-XPG4/signal.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/stdlib.h/conform = yes
|
||||||
test-xfail-XPG4/sys/stat.h/conform = yes
|
test-xfail-XPG4/sys/stat.h/conform = yes
|
||||||
test-xfail-XPG4/sys/time.h/conform = yes
|
test-xfail-XPG4/sys/time.h/conform = yes
|
||||||
|
@ -544,7 +544,7 @@ __END_NAMESPACE_STD
|
|||||||
optimization for it. */
|
optimization for it. */
|
||||||
#define getc(_fp) _IO_getc (_fp)
|
#define getc(_fp) _IO_getc (_fp)
|
||||||
|
|
||||||
#ifdef __USE_POSIX
|
#ifdef __USE_POSIX199506
|
||||||
/* These are defined in POSIX.1:1996.
|
/* These are defined in POSIX.1:1996.
|
||||||
|
|
||||||
These functions are possible cancellation points and therefore not
|
These functions are possible cancellation points and therefore not
|
||||||
@ -596,7 +596,7 @@ __END_NAMESPACE_STD
|
|||||||
extern int fputc_unlocked (int __c, FILE *__stream);
|
extern int fputc_unlocked (int __c, FILE *__stream);
|
||||||
#endif /* Use MISC. */
|
#endif /* Use MISC. */
|
||||||
|
|
||||||
#ifdef __USE_POSIX
|
#ifdef __USE_POSIX199506
|
||||||
/* These are defined in POSIX.1:1996.
|
/* These are defined in POSIX.1:1996.
|
||||||
|
|
||||||
These functions are possible cancellation points and therefore not
|
These functions are possible cancellation points and therefore not
|
||||||
@ -907,7 +907,7 @@ extern int obstack_vprintf (struct obstack *__restrict __obstack,
|
|||||||
#endif /* Use GNU. */
|
#endif /* Use GNU. */
|
||||||
|
|
||||||
|
|
||||||
#ifdef __USE_POSIX
|
#ifdef __USE_POSIX199506
|
||||||
/* These are defined in POSIX.1:1996. */
|
/* These are defined in POSIX.1:1996. */
|
||||||
|
|
||||||
/* Acquire ownership of STREAM. */
|
/* Acquire ownership of STREAM. */
|
||||||
|
Reference in New Issue
Block a user