diff options
author | Joseph Myers <joseph@codesourcery.com> | 2016-04-08 22:52:51 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2016-04-08 22:52:51 +0000 |
commit | eb64b6d4571caea5fe39f6427565f849b09c23b6 (patch) | |
tree | e1316cbbe409b02749aa46fc312ff1ed02f9f00c | |
parent | ed80f206f42906ec7d2634595fb5ef8338c7c943 (diff) | |
download | glibc-eb64b6d4571caea5fe39f6427565f849b09c23b6.tar.gz |
Fix limits.h NL_NMAX namespace (bug 19929).
bits/xopen_lim.h (included by limits.h if __USE_XOPEN) defines
NL_NMAX, but this constant was removed in the 2008 edition of POSIX so
should not be defined in that case. This patch duly disables that
define for __USE_XOPEN2K8. It remains enabled for __USE_GNU to avoid
affecting sysconf (_SC_NL_NMAX), the implementation of which uses
"#ifdef NL_NMAX".
Tested for x86_64 and x86 (testsuite, and that installed stripped
shared libraries are unchanged by the patch).
[BZ #19929]
* include/bits/xopen_lim.h (NL_NMAX): Do not define if
[__USE_XOPEN2K8 && !__USE_GNU].
* conform/Makefile (test-xfail-XOPEN2K8/limits.h/conform): Remove
variable.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | conform/Makefile | 1 | ||||
-rw-r--r-- | include/bits/xopen_lim.h | 4 |
3 files changed, 9 insertions, 2 deletions
@@ -1,5 +1,11 @@ 2016-04-08 Joseph Myers <joseph@codesourcery.com> + [BZ #19929] + * include/bits/xopen_lim.h (NL_NMAX): Do not define if + [__USE_XOPEN2K8 && !__USE_GNU]. + * conform/Makefile (test-xfail-XOPEN2K8/limits.h/conform): Remove + variable. + [BZ #19925] * sysdeps/unix/sysv/linux/alpha/bits/termios.h (XCASE): Do not define if [!__USE_MISC && __USE_XOPEN2K]. diff --git a/conform/Makefile b/conform/Makefile index ed94ffc735..0b5514c861 100644 --- a/conform/Makefile +++ b/conform/Makefile @@ -225,7 +225,6 @@ test-xfail-POSIX2008/netinet/in.h/conform = yes test-xfail-POSIX2008/signal.h/conform = yes test-xfail-POSIX2008/sys/socket.h/conform = yes test-xfail-POSIX2008/sys/wait.h/conform = yes -test-xfail-XOPEN2K8/limits.h/conform = yes test-xfail-XOPEN2K8/signal.h/conform = yes test-xfail-XOPEN2K8/stdio.h/conform = yes test-xfail-XOPEN2K8/sys/wait.h/conform = yes diff --git a/include/bits/xopen_lim.h b/include/bits/xopen_lim.h index 26b4fba970..7515ddd61c 100644 --- a/include/bits/xopen_lim.h +++ b/include/bits/xopen_lim.h @@ -77,7 +77,9 @@ /* Maximum number of bytes in N-to-1 collation mapping. We have no limit. */ -#define NL_NMAX INT_MAX +#if defined __USE_GNU || !defined __USE_XOPEN2K8 +# define NL_NMAX INT_MAX +#endif /* Maximum set number. We have no limit. */ #define NL_SETMAX INT_MAX |