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]

Fix psignal, psiginfo declaration conditions (bug 18483)


signal.h declares psignal and psiginfo if __USE_XOPEN2K - that is, for
the 2001 edition of POSIX.  These functions were actually added in the
2008 edition (as indicated in the header comments).  This patch fixes
the header conditionals.  This fixes some linknamespace test failures
because psiginfo uses fmemopen, which is also new in the 2008 edition,
so before the header fix this appeared to the linknamespace tests as a
2001 function bringing in references to a 2008 function.  The problem
also appeared in conformtest header namespace test results (the
conformtest data has correct conditionals for when these functions
should be visible), but the affected headers still have other
namespace problems so this doesn't fix any of those XFAILs.

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

2015-06-03  Joseph Myers  <joseph@codesourcery.com>

	[BZ #18483]
	* signal/signal.h [__USE_XOPEN2K] (psignal): Change condition to
	[__USE_XOPEN2K8].  Remove redundant #endif.
	[__USE_XOPEN2K] (psiginfo): Change condition to [__USE_XOPEN2K8].
	Remove redundant #if.
	* conform/Makefile (test-xfail-XOPEN2K/signal.h/linknamespace):
	Remove variable.
	(test-xfail-XOPEN2K/sys/wait.h/linknamespace): Likewise.
	(test-xfail-XOPEN2K/ucontext.h/linknamespace): Likewise.

diff --git a/conform/Makefile b/conform/Makefile
index de009af..662ea96 100644
--- a/conform/Makefile
+++ b/conform/Makefile
@@ -374,11 +374,8 @@ test-xfail-UNIX98/unistd.h/linknamespace = yes
 test-xfail-UNIX98/wchar.h/linknamespace = yes
 test-xfail-XOPEN2K/fmtmsg.h/linknamespace = yes
 test-xfail-XOPEN2K/netdb.h/linknamespace = yes
-test-xfail-XOPEN2K/signal.h/linknamespace = yes
 test-xfail-XOPEN2K/stdlib.h/linknamespace = yes
-test-xfail-XOPEN2K/sys/wait.h/linknamespace = yes
 test-xfail-XOPEN2K/syslog.h/linknamespace = yes
-test-xfail-XOPEN2K/ucontext.h/linknamespace = yes
 test-xfail-XOPEN2K/unistd.h/linknamespace = yes
 test-xfail-POSIX2008/grp.h/linknamespace = yes
 test-xfail-POSIX2008/netdb.h/linknamespace = yes
diff --git a/signal/signal.h b/signal/signal.h
index c32e8d9..712cd95 100644
--- a/signal/signal.h
+++ b/signal/signal.h
@@ -146,12 +146,10 @@ extern __sighandler_t ssignal (int __sig, __sighandler_t __handler)
 extern int gsignal (int __sig) __THROW;
 #endif /* Use misc.  */
 
-#ifdef __USE_XOPEN2K
+#ifdef __USE_XOPEN2K8
 /* Print a message describing the meaning of the given signal number.  */
 extern void psignal (int __sig, const char *__s);
-#endif /* Use POSIX 2008.  */
 
-#ifdef __USE_XOPEN2K
 /* Print a message describing the meaning of the given signal information.  */
 extern void psiginfo (const siginfo_t *__pinfo, const char *__s);
 #endif /* POSIX 2008.  */

-- 
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]