glibc/scripts
Joseph Myers 2072f5c34e Remove C++ namespace handling from glibc headers.
glibc headers include some code (not particularly consistent or
systematic) to put various declarations in C++ namespaces std and
__c99, if _GLIBCPP_USE_NAMESPACES is defined.

As noted in <https://gcc.gnu.org/ml/libstdc++/2017-03/msg00025.html>,
this macro was removed from libstdc++ in 2000.  I don't expect
compilation with such old versions of libstdc++ to work with current
glibc headers anyway (whereas old *binaries* are expected to stay
working with current glibc); this patch (which should be a no-op with
any libstdc++ version postdating that removal) removes all this code
from the glibc headers.

The begin-end-check.pl test, whose comments say it is about checking
these namespace macro calls, is also removed.  The code in that test
would have covered __BEGIN_DECLS / __END_DECLS as well, but if those
weren't properly matched it would show up with the
check-installed-headers-cxx tests, so I don't think there is an actual
use for keeping begin-end-check.pl with the namespace code removed.

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

	* misc/sys/cdefs.h (__BEGIN_NAMESPACE_STD): Remove macro.
	(__END_NAMESPACE_STD): Likewise.
	(__USING_NAMESPACE_STD): Likewise.
	(__BEGIN_NAMESPACE_C99): Likewise.
	(__END_NAMESPACE_C99): Likewise.
	(__USING_NAMESPACE_C99): Likewise.
	* math/math.h (_Mdouble_BEGIN_NAMESPACE): Do not define and
	undefine macro.
	(_Mdouble_END_NAMESPACE): Likewise.
	* ctype/ctype.h: Do not handle C++ namespaces.
	* libio/bits/stdio-ldbl.h: Likewise.
	* libio/stdio.h: Likewise.
	* locale/locale.h: Likewise.
	* math/bits/mathcalls.h: Likewise.
	* setjmp/setjmp.h: Likewise.
	* signal/signal.h: Likewise.
	* stdlib/bits/stdlib-float.h: Likewise.
	* stdlib/bits/stdlib-ldbl.h: Likewise.
	* stdlib/stdlib.h: Likewise.
	* string/string.h: Likewise.
	* sysdeps/x86/fpu/bits/mathinline.h: Likewise.
	* time/bits/types/clock_t.h: Likewise.
	* time/bits/types/struct_tm.h: Likewise.
	* time/bits/types/time_t.h: Likewise.
	* time/time.h: Likewise.
	* wcsmbs/bits/wchar-ldbl.h: Likewise.
	* wcsmbs/uchar.h: Likewise.
	* wcsmbs/wchar.h: Likewise.
	[_GLIBCPP_USE_NAMESPACES] (wint_t): Remove conditional definition.
	* wctype/wctype.h: Do not handle C++ namespaces.
	* scripts/begin-end-check.pl: Remove.
	* Makefile (installed-headers): Likewise.
	(tests-special): Do not add $(objpfx)begin-end-check.out.
	($(objpfx)begin-end-check.out): Remove.
2017-03-16 13:31:57 +00:00
..
abi-versions.awk
abilist.awk Simplify the abilist format 2015-11-06 13:58:53 +01:00
backport-support.sh Add scripts/backport-support.sh 2017-02-28 16:36:26 +01:00
build-many-glibcs.py build-many-glibcs: Remove no_isolate from SH config 2017-03-13 16:23:25 -03:00
check-c++-types.sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
check-execstack.awk
check-installed-headers.sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
check-local-headers.sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
check-localplt.awk Extend local PLT reference check 2015-07-29 11:58:06 -07:00
check-textrel.awk
config-uname.sh
config.guess Update config.guess and config.sub to current versions. 2017-01-01 00:29:55 +00:00
config.sub Update config.guess and config.sub to current versions. 2017-01-01 00:29:55 +00:00
cpp Make shebang interpreter directives consistent 2016-01-07 04:03:21 -05:00
cross-test-ssh.sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
documented.sh Make shebang interpreter directives consistent 2016-01-07 04:03:21 -05:00
evaluate-test.sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
firstversions.awk
gen-as-const.awk
gen-libc-abis Make shebang interpreter directives consistent 2016-01-07 04:03:21 -05:00
gen-libc-modules.awk
gen-posix-conf-vars.awk Remove uses of sprintf in gen-posix-conf-vars.awk 2015-01-02 11:16:35 +05:30
gen-py-const.awk Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
gen-rrtypes.py Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
gen-sorted.awk Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
gen-tunables.awk tunables: Fix environment variable processing for setuid binaries (bz #21073) 2017-02-02 15:50:16 +05:30
install-sh Update miscellaneous files from upstream sources. 2016-12-21 16:05:55 +00:00
lib-names.awk
list-fixed-bugs.py Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
list-sources.sh
localplt.awk Support PLT and GOT references in local PIC check 2015-10-14 06:00:02 -07:00
merge-test-results.sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
mkinstalldirs Update miscellaneous files from upstream sources. 2016-12-21 16:05:55 +00:00
move-if-change Update miscellaneous files from upstream sources. 2016-12-21 16:05:55 +00:00
output-format.sed
pylint
pylintrc pylintrc: disable reports 2015-11-11 13:41:57 -05:00
rellns-sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
soversions.awk
sysd-rules.awk sysd-rules: Cut down the number of rtld-% pattern rules 2016-09-20 10:41:05 +02:00
test_printers_common.py Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
test_printers_exceptions.py Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
test-installation.pl Update copyright dates not handled by scripts/update-copyrights. 2017-01-01 00:26:24 +00:00
update-abilist.sh Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
update-copyrights Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
versionlist.awk Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
versions.awk Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00