c++config: Add in revised namespace associations.

2005-12-18  Benjamin Kosnik  <bkoz@redhat.com>
	
	* include/bits/c++config: Add in revised namespace associations.
	_GLIBCXX_BEGIN_NAMESPACE: New macro.
	_GLIBCXX_END_NAMESPACE: Same.
	_GLIBCXX_BEGIN_NESTED_NAMESPACE: Same.
	_GLIBCXX_END_NESTED_NAMESPACE: Same.
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS]): Add gnu-versioned-namespace.
	* configure: Regenerated.
	* config.h.in: Same.
	* config/abi/pre/gnu-versioned-namespace.ver: New.
	* config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
	debug mode items. 
	* include/Makefile.am (${host_builddir}/c++config.h): Fill in
	values for __GLIBCXX__ and _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION.
	* include/Makefile.in: Regnerate.
	* src/compatibility.cc: Alias new, nested definitions to exported
	symbols from non-nested __gnu_debug.
	* src/Makefile.am:  Add in ENABLE_SYMVERS_GNU_NAMESPACE.
	* src/Makefile.in: Regenerate.
	
	* docs/html/debug_mode.html: Revise for nested design.
	* docs/html/debug.html: Use debug qualifications instead of
	__gnu_debug.
	* docs/html/configopts.html: Revise documentation for
	--enable-symvers.
	
	* include/debug/formatter: Simplify namespace qualifications for
	current, nested-only reality. Add top-level namespace alias,
	namespace debug, for debug-mode containers.
	* include/debug/safe_iterator.h: Same.	
	* include/debug/set.h: Same.
	* include/debug/hash_multimap.h: Same.
	* include/debug/hash_set.h: Same.
	* include/debug/bitset
	* include/debug/safe_sequence.h: Same.
	* include/debug/multiset.h: Same.
	* include/debug/safe_base.h: Same.
	* include/debug/functions.h: Same.
	* include/debug/safe_iterator.tcc
	* include/debug/hash_multiset.h: Same.
	* include/debug/vector
	* include/debug/map.h: Same.
	* include/debug/deque
	* include/debug/hash_map.h: Same.
	* include/debug/string
	* include/debug/macros.h: Same.
	* include/debug/list
	* include/debug/debug.h: Same.
	* include/debug/multimap.h: Same.	
	* src/debug.cc: Same.
	* testsuite/23_containers/vector/invalidation/1.cc: Cleanups.
	* testsuite/23_containers/vector/invalidation/2.cc: Same.
	* testsuite/23_containers/vector/invalidation/3.cc: Same.
	* testsuite/23_containers/vector/invalidation/4.cc: Same.
	* testsuite/23_containers/deque/invalidation/1.cc: Same.
	* testsuite/23_containers/deque/invalidation/2.cc: Same.
	* testsuite/23_containers/deque/invalidation/3.cc: Same.
	* testsuite/23_containers/deque/invalidation/4.cc: Same.
	* testsuite/23_containers/multiset/invalidation/1.cc: Same.
	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
	* testsuite/23_containers/multimap/invalidation/1.cc: Same.
	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
	* testsuite/23_containers/bitset/invalidation/1.cc: Same.
	* testsuite/23_containers/bitset/cons/16020.cc: Same.
	* testsuite/23_containers/bitset/operations/13838.cc: Same.
	* testsuite/23_containers/list/invalidation/1.cc: Same.
	* testsuite/23_containers/list/invalidation/2.cc: Same.
	* testsuite/23_containers/list/invalidation/3.cc: Same.
	* testsuite/23_containers/list/invalidation/4.cc: Same.
	* testsuite/23_containers/set/invalidation/1.cc: Same.
	* testsuite/23_containers/set/invalidation/2.cc: Same.
	* testsuite/23_containers/map/invalidation/1.cc: Same.
	* testsuite/23_containers/map/invalidation/2.cc: Same.
	* testsuite/23_containers/map/insert/16813.cc: Same.
	
	* include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
	friends.	
	* include/bits/stl_list.h: Same.
	* include/bits/stl_map.h: Same.
	* include/bits/stl_algobase.h: Same.
	* include/bits/localefwd.h: Same.
	* include/bits/valarray_array.tcc: Same.
	* include/bits/valarray_after.h: Same.
	* include/bits/gslice_array.h: Same.
	* include/bits/stl_queue.h: Same.
	* include/bits/gslice.h: Same.
	* include/bits/locale_facets.tcc: Same.
	* include/bits/locale_classes.h: Same.
	* include/bits/stl_set.h: Same.
	* include/bits/locale_facets.h: Same.
	* include/bits/stl_stack.h: Same.
	* include/bits/stl_iterator_base_types.h: Same.
	* include/bits/stl_heap.h: Same.
	* include/bits/indirect_array.h: Same.
	* include/bits/atomicity.h: Same.
	* include/bits/stream_iterator.h: Same.
	* include/bits/concurrence.h: Same.
	* include/bits/basic_string.h: Same.
	* include/bits/stl_multimap.h: Same.
	* include/bits/stl_pair.h: Same.
	* include/bits/basic_ios.tcc: Same.
	* include/bits/stl_raw_storage_iter.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/bits/stl_numeric.h: Same.
	* include/bits/ios_base.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/istream.tcc: Same.
	* include/bits/postypes.h: Same.
	* include/bits/stl_multiset.h: Same.
	* include/bits/mask_array.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/ostream.tcc: Same.
	* include/bits/slice_array.h: Same.
	* include/bits/boost_concept_check.h: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/stl_iterator_base_funcs.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/stl_algo.h: Same.
	* include/bits/stringfwd.h: Same.
	* include/bits/c++config
	* include/bits/stl_iterator.h: Same.
	* include/bits/valarray_array.h: Same.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/vector.tcc: Same.
	* include/bits/deque.tcc: Same.
	* include/bits/stl_bvector.h: Same.
	* include/bits/basic_string.tcc: Same.
	* include/bits/list.tcc: Same.
	* include/bits/streambuf_iterator.h: Same.
	* include/bits/valarray_before.h: Same.
	* include/bits/stl_construct.h: Same.
	* include/bits/stl_function.h: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/streambuf.tcc: Same.
	* include/bits/allocator.h: Same.
	* include/bits/stl_tree.h: Same.
	* include/bits/fstream.tcc: Same.
	* include/bits/stl_relops.h: Same.
	* include/bits/functexcept.h: Same.
	* include/std/std_valarray.h: Same.
	* include/std/std_iostream.h: Same.
	* include/std/std_streambuf.h: Same.
	* include/std/std_bitset.h: Same.
	* include/std/std_iosfwd.h: Same.
	* include/std/std_iomanip.h: Same.
	* include/std/std_fstream.h: Same.
	* include/std/std_limits.h: Same.
	* include/std/std_stdexcept.h: Same.
	* include/std/std_istream.h: Same.
	* include/std/std_complex.h: Same.
	* include/std/std_memory.h: Same.
	* include/std/std_ostream.h: Same.
	* include/std/std_sstream.h: Same.
	* include/c_std/std_csignal.h: Same.
	* include/c_std/std_cstdlib.h: Same.
	* include/c_std/std_cstdio.h: Same.
	* include/c_std/std_cstdarg.h: Same.
	* include/c_std/std_cctype.h: Same.
	* include/c_std/std_cmath.h: Same.
	* include/c_std/std_ctime.h: Same.
	* include/c_std/std_clocale.h: Same.
	* include/c_std/std_csetjmp.h: Same.
	* include/c_std/std_cwchar.h: Same.
	* include/c_std/std_cstring.h: Same.
	* include/c_std/std_cstddef.h: Same.
	* include/c_std/std_cwctype.h: Same.
	* include/backward/iterator.h: Same.
	* include/backward/set.h: Same.
	* include/backward/hashtable.h: Same.
	* include/backward/fstream.h: Same.
	* include/backward/tempbuf.h: Same.
	* include/backward/istream.h: Same.
	* include/backward/bvector.h: Same.
	* include/backward/stack.h: Same.
	* include/backward/rope.h: Same.
	* include/backward/complex.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/heap.h: Same.
	* include/backward/iostream.h: Same.
	* include/backward/function.h: Same.
	* include/backward/multimap.h: Same.
	* include/backward/pair.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/iomanip.h: Same.
	* include/backward/strstream
	* include/backward/slist.h: Same.
	* include/backward/tree.h: Same.
	* include/backward/vector.h: Same.
	* include/backward/deque.h: Same.
	* include/backward/multiset.h: Same.
	* include/backward/list.h: Same.
	* include/backward/map.h: Same.
	* include/backward/algobase.h: Same.
	* include/backward/hash_map.h: Same.
	* include/backward/algo.h: Same.
	* include/backward/queue.h: Same.
	* include/backward/streambuf.h: Same.
	* src/allocator-inst.cc: Same.
	* src/complex_io.cc: Same.
	* src/localename.cc: Same.
	* src/limits.cc: Same.
	* src/ios_failure.cc: Same.
	* src/locale-misc-inst.cc: Same.
	* src/streambuf-inst.cc: Same.
	* src/misc-inst.cc: Same.
	* src/concept-inst.cc: Same.
	* src/ios_locale.cc: Same.
	* src/pool_allocator.cc: Same.
	* src/fstream-inst.cc: Same.
	* src/istream-inst.cc: Same.
	* src/string-inst.cc: Same.
	* src/locale_init.cc: Same.
	* src/ctype.cc: Same.
	* src/strstream.cc: Same.
	* src/ostream-inst.cc: Same.
	* src/functexcept.cc: Same.
	* src/streambuf.cc: Same.
	* src/sstream-inst.cc: Same.
	* src/ios.cc: Same.
	* src/valarray-inst.cc: Same.
	* src/locale.cc: Same.
	* src/tree.cc: Same.
	* src/stdexcept.cc: Same.
	* src/istream.cc: Same.
	* src/compatibility.cc: Same.
	* src/locale-inst.cc: Same.
	* src/globals_io.cc: Same.
	* src/list.cc: Same.
	* src/ios_init.cc: Same.
	* src/locale_facets.cc: Same.
	* src/codecvt.cc: Same.

	* include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
	* include/tr1/boost_shared_ptr.h: Same.
	* include/tr1/tuple
	* include/tr1/hashtable
	* include/tr1/type_traits_fwd.h: Same.
	* include/tr1/unordered_set
	* include/tr1/functional
	* include/tr1/ref_fwd.h: Same.
	* include/tr1/utility
	* include/tr1/type_traits
	* include/tr1/array

	* include/ext/hashtable.h: Use _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx).
	* include/ext/typelist.h: Same.
	* include/ext/hash_map: Same.
	* include/ext/rc_string_base.h: Same.
	* include/ext/pool_allocator.h: Same.
	* include/ext/iterator: Same.
	* include/ext/rb_tree: Same.
	* include/ext/numeric: Same.
	* include/ext/vstring.tcc: Same.
	* include/ext/sso_string_base.h: Same.
	* include/ext/stdio_filebuf.h: Same.
	* include/ext/algorithm: Same.
	* include/ext/codecvt_specializations.h: Same.
	* include/ext/new_allocator.h: Same.
	* include/ext/array_allocator.h: Same.
	* include/ext/vstring_util.h: Same.
	* include/ext/vstring_fwd.h: Same.
	* include/ext/mt_allocator.h: Same.
	* include/ext/debug_allocator.h: Same.
	* include/ext/slist: Same.
	* include/ext/stdio_sync_filebuf.h: Same.
	* include/ext/hash_fun.h: Same.
	* include/ext/malloc_allocator.h: Same.
	* include/ext/functional: Same.
	* include/ext/bitmap_allocator.h: Same.
	* include/ext/pod_char_traits.h: Same.
	* include/ext/vstring.h: Same.
	* include/ext/ropeimpl.h: Same.
	* include/ext/hash_set: Same.
	* include/ext/memory: Same.
	* include/ext/rope: Same.
	* include/bits/boost_concept_check.h: Same.
	* include/bits/stl_iterator.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/concurrence.h: Same.
	* include/bits/atomicity.h: Same.
	* config/locale/gnu/numeric_members.cc: Same.
	* config/locale/gnu/collate_members.cc: Same.
	* config/locale/gnu/ctype_members.cc: Same.
	* config/locale/gnu/c_locale.cc: Same.
	* config/locale/gnu/codecvt_members.cc: Same.
	* config/locale/gnu/messages_members.cc: Same.
	* config/locale/gnu/c_locale.h: Same.
	* config/locale/gnu/monetary_members.cc: Same.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/ieee_1003.1-2001/c_locale.h: Same.
	* config/locale/generic/numeric_members.cc: Same.
	* config/locale/generic/collate_members.cc: Same.
	* config/locale/generic/ctype_members.cc: Same.
	* config/locale/generic/c_locale.cc: Same.
	* config/locale/generic/codecvt_members.cc: Same.
	* config/locale/generic/messages_members.cc: Same.
	* config/locale/generic/c_locale.h: Same.
	* config/locale/generic/monetary_members.cc: Same.
	* config/locale/generic/time_members.cc: Same.
	* config/os/aix/atomicity.h: Same.
	* config/os/irix/atomicity.h: Same.
	* config/cpu/powerpc/atomicity.h: Same.
	* config/cpu/cris/atomicity.h: Same.
	* config/cpu/ia64/atomicity.h: Same.
	* config/cpu/alpha/atomicity.h: Same.
	* config/cpu/m68k/atomicity.h: Same.
	* config/cpu/hppa/atomicity.h: Same.
	* config/cpu/mips/atomicity.h: Same.
	* config/cpu/sparc/atomicity.h: Same.
	* config/cpu/i386/atomicity.h: Same.
	* config/cpu/i486/atomicity.h: Same.
	* config/cpu/sh/atomicity.h: Same.
	* config/cpu/generic/atomicity.h: Same.
	* config/cpu/s390/atomicity.h: Same.
	* config/io/c_io_stdio.h: Same.
	* config/io/basic_file_stdio.cc: Same.
	* config/io/basic_file_stdio.h: Same.	
	* src/misc-inst.cc: Same.
	* src/concept-inst.cc: Same.
	* src/ext-inst.cc: Same.
	* src/string-inst.cc: Same.
	* src/pool_allocator.cc: Same.
	* src/bitmap_allocator.cc: Same.
	* src/mt_allocator.cc: Same.
	* libsupc++/exception: Same.
	* libsupc++/vterminate.cc: Same.
	* testsuite/ext/hash_map/1.cc: Explicitly qualify __gnu_cxx::hash_map.
	* testsuite/ext/hash_map/14648.cc: Same.	

	* libsupc++/eh_alloc.cc: Correct comment line spacing.

From-SVN: r108775
This commit is contained in:
Benjamin Kosnik 2005-12-19 00:56:05 +00:00 committed by Benjamin Kosnik
parent 402840fd9b
commit 3cbc7af037
312 changed files with 2240 additions and 1335 deletions

View File

@ -1,3 +1,336 @@
2005-12-18 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Add in revised namespace associations.
_GLIBCXX_BEGIN_NAMESPACE: New macro.
_GLIBCXX_END_NAMESPACE: Same.
_GLIBCXX_BEGIN_NESTED_NAMESPACE: Same.
_GLIBCXX_END_NESTED_NAMESPACE: Same.
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS]): Add gnu-versioned-namespace.
* configure: Regenerated.
* config.h.in: Same.
* config/abi/pre/gnu-versioned-namespace.ver: New.
* config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
debug mode items.
* include/Makefile.am (${host_builddir}/c++config.h): Fill in
values for __GLIBCXX__ and _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION.
* include/Makefile.in: Regnerate.
* src/compatibility.cc: Alias new, nested definitions to exported
symbols from non-nested __gnu_debug.
* src/Makefile.am: Add in ENABLE_SYMVERS_GNU_NAMESPACE.
* src/Makefile.in: Regenerate.
* docs/html/debug_mode.html: Revise for nested design.
* docs/html/debug.html: Use debug qualifications instead of
__gnu_debug.
* docs/html/configopts.html: Revise documentation for
--enable-symvers.
* include/debug/formatter: Simplify namespace qualifications for
current, nested-only reality. Add top-level namespace alias,
namespace debug, for debug-mode containers.
* include/debug/safe_iterator.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/bitset
* include/debug/safe_sequence.h: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/functions.h: Same.
* include/debug/safe_iterator.tcc
* include/debug/hash_multiset.h: Same.
* include/debug/vector
* include/debug/map.h: Same.
* include/debug/deque
* include/debug/hash_map.h: Same.
* include/debug/string
* include/debug/macros.h: Same.
* include/debug/list
* include/debug/debug.h: Same.
* include/debug/multimap.h: Same.
* src/debug.cc: Same.
* testsuite/23_containers/vector/invalidation/1.cc: Cleanups.
* testsuite/23_containers/vector/invalidation/2.cc: Same.
* testsuite/23_containers/vector/invalidation/3.cc: Same.
* testsuite/23_containers/vector/invalidation/4.cc: Same.
* testsuite/23_containers/deque/invalidation/1.cc: Same.
* testsuite/23_containers/deque/invalidation/2.cc: Same.
* testsuite/23_containers/deque/invalidation/3.cc: Same.
* testsuite/23_containers/deque/invalidation/4.cc: Same.
* testsuite/23_containers/multiset/invalidation/1.cc: Same.
* testsuite/23_containers/multiset/invalidation/2.cc: Same.
* testsuite/23_containers/multimap/invalidation/1.cc: Same.
* testsuite/23_containers/multimap/invalidation/2.cc: Same.
* testsuite/23_containers/bitset/invalidation/1.cc: Same.
* testsuite/23_containers/bitset/cons/16020.cc: Same.
* testsuite/23_containers/bitset/operations/13838.cc: Same.
* testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
* testsuite/23_containers/list/invalidation/3.cc: Same.
* testsuite/23_containers/list/invalidation/4.cc: Same.
* testsuite/23_containers/set/invalidation/1.cc: Same.
* testsuite/23_containers/set/invalidation/2.cc: Same.
* testsuite/23_containers/map/invalidation/1.cc: Same.
* testsuite/23_containers/map/invalidation/2.cc: Same.
* testsuite/23_containers/map/insert/16813.cc: Same.
* include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
friends.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/localefwd.h: Same.
* include/bits/valarray_array.tcc: Same.
* include/bits/valarray_after.h: Same.
* include/bits/gslice_array.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/gslice.h: Same.
* include/bits/locale_facets.tcc: Same.
* include/bits/locale_classes.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stl_heap.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/atomicity.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_pair.h: Same.
* include/bits/basic_ios.tcc: Same.
* include/bits/stl_raw_storage_iter.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_numeric.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/istream.tcc: Same.
* include/bits/postypes.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/stl_uninitialized.h: Same.
* include/bits/ostream.tcc: Same.
* include/bits/slice_array.h: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/sstream.tcc: Same.
* include/bits/stl_iterator_base_funcs.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stringfwd.h: Same.
* include/bits/c++config
* include/bits/stl_iterator.h: Same.
* include/bits/valarray_array.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/vector.tcc: Same.
* include/bits/deque.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/list.tcc: Same.
* include/bits/streambuf_iterator.h: Same.
* include/bits/valarray_before.h: Same.
* include/bits/stl_construct.h: Same.
* include/bits/stl_function.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/allocator.h: Same.
* include/bits/stl_tree.h: Same.
* include/bits/fstream.tcc: Same.
* include/bits/stl_relops.h: Same.
* include/bits/functexcept.h: Same.
* include/std/std_valarray.h: Same.
* include/std/std_iostream.h: Same.
* include/std/std_streambuf.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_iosfwd.h: Same.
* include/std/std_iomanip.h: Same.
* include/std/std_fstream.h: Same.
* include/std/std_limits.h: Same.
* include/std/std_stdexcept.h: Same.
* include/std/std_istream.h: Same.
* include/std/std_complex.h: Same.
* include/std/std_memory.h: Same.
* include/std/std_ostream.h: Same.
* include/std/std_sstream.h: Same.
* include/c_std/std_csignal.h: Same.
* include/c_std/std_cstdlib.h: Same.
* include/c_std/std_cstdio.h: Same.
* include/c_std/std_cstdarg.h: Same.
* include/c_std/std_cctype.h: Same.
* include/c_std/std_cmath.h: Same.
* include/c_std/std_ctime.h: Same.
* include/c_std/std_clocale.h: Same.
* include/c_std/std_csetjmp.h: Same.
* include/c_std/std_cwchar.h: Same.
* include/c_std/std_cstring.h: Same.
* include/c_std/std_cstddef.h: Same.
* include/c_std/std_cwctype.h: Same.
* include/backward/iterator.h: Same.
* include/backward/set.h: Same.
* include/backward/hashtable.h: Same.
* include/backward/fstream.h: Same.
* include/backward/tempbuf.h: Same.
* include/backward/istream.h: Same.
* include/backward/bvector.h: Same.
* include/backward/stack.h: Same.
* include/backward/rope.h: Same.
* include/backward/complex.h: Same.
* include/backward/ostream.h: Same.
* include/backward/heap.h: Same.
* include/backward/iostream.h: Same.
* include/backward/function.h: Same.
* include/backward/multimap.h: Same.
* include/backward/pair.h: Same.
* include/backward/stream.h: Same.
* include/backward/iomanip.h: Same.
* include/backward/strstream
* include/backward/slist.h: Same.
* include/backward/tree.h: Same.
* include/backward/vector.h: Same.
* include/backward/deque.h: Same.
* include/backward/multiset.h: Same.
* include/backward/list.h: Same.
* include/backward/map.h: Same.
* include/backward/algobase.h: Same.
* include/backward/hash_map.h: Same.
* include/backward/algo.h: Same.
* include/backward/queue.h: Same.
* include/backward/streambuf.h: Same.
* src/allocator-inst.cc: Same.
* src/complex_io.cc: Same.
* src/localename.cc: Same.
* src/limits.cc: Same.
* src/ios_failure.cc: Same.
* src/locale-misc-inst.cc: Same.
* src/streambuf-inst.cc: Same.
* src/misc-inst.cc: Same.
* src/concept-inst.cc: Same.
* src/ios_locale.cc: Same.
* src/pool_allocator.cc: Same.
* src/fstream-inst.cc: Same.
* src/istream-inst.cc: Same.
* src/string-inst.cc: Same.
* src/locale_init.cc: Same.
* src/ctype.cc: Same.
* src/strstream.cc: Same.
* src/ostream-inst.cc: Same.
* src/functexcept.cc: Same.
* src/streambuf.cc: Same.
* src/sstream-inst.cc: Same.
* src/ios.cc: Same.
* src/valarray-inst.cc: Same.
* src/locale.cc: Same.
* src/tree.cc: Same.
* src/stdexcept.cc: Same.
* src/istream.cc: Same.
* src/compatibility.cc: Same.
* src/locale-inst.cc: Same.
* src/globals_io.cc: Same.
* src/list.cc: Same.
* src/ios_init.cc: Same.
* src/locale_facets.cc: Same.
* src/codecvt.cc: Same.
* include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
* include/tr1/boost_shared_ptr.h: Same.
* include/tr1/tuple
* include/tr1/hashtable
* include/tr1/type_traits_fwd.h: Same.
* include/tr1/unordered_set
* include/tr1/functional
* include/tr1/ref_fwd.h: Same.
* include/tr1/utility
* include/tr1/type_traits
* include/tr1/array
* include/ext/hashtable.h: Use _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx).
* include/ext/typelist.h: Same.
* include/ext/hash_map: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/iterator: Same.
* include/ext/rb_tree: Same.
* include/ext/numeric: Same.
* include/ext/vstring.tcc: Same.
* include/ext/sso_string_base.h: Same.
* include/ext/stdio_filebuf.h: Same.
* include/ext/algorithm: Same.
* include/ext/codecvt_specializations.h: Same.
* include/ext/new_allocator.h: Same.
* include/ext/array_allocator.h: Same.
* include/ext/vstring_util.h: Same.
* include/ext/vstring_fwd.h: Same.
* include/ext/mt_allocator.h: Same.
* include/ext/debug_allocator.h: Same.
* include/ext/slist: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/ext/hash_fun.h: Same.
* include/ext/malloc_allocator.h: Same.
* include/ext/functional: Same.
* include/ext/bitmap_allocator.h: Same.
* include/ext/pod_char_traits.h: Same.
* include/ext/vstring.h: Same.
* include/ext/ropeimpl.h: Same.
* include/ext/hash_set: Same.
* include/ext/memory: Same.
* include/ext/rope: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/atomicity.h: Same.
* config/locale/gnu/numeric_members.cc: Same.
* config/locale/gnu/collate_members.cc: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/gnu/codecvt_members.cc: Same.
* config/locale/gnu/messages_members.cc: Same.
* config/locale/gnu/c_locale.h: Same.
* config/locale/gnu/monetary_members.cc: Same.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.h: Same.
* config/locale/generic/numeric_members.cc: Same.
* config/locale/generic/collate_members.cc: Same.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/generic/c_locale.cc: Same.
* config/locale/generic/codecvt_members.cc: Same.
* config/locale/generic/messages_members.cc: Same.
* config/locale/generic/c_locale.h: Same.
* config/locale/generic/monetary_members.cc: Same.
* config/locale/generic/time_members.cc: Same.
* config/os/aix/atomicity.h: Same.
* config/os/irix/atomicity.h: Same.
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/ia64/atomicity.h: Same.
* config/cpu/alpha/atomicity.h: Same.
* config/cpu/m68k/atomicity.h: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/cpu/mips/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
* config/cpu/i386/atomicity.h: Same.
* config/cpu/i486/atomicity.h: Same.
* config/cpu/sh/atomicity.h: Same.
* config/cpu/generic/atomicity.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/io/c_io_stdio.h: Same.
* config/io/basic_file_stdio.cc: Same.
* config/io/basic_file_stdio.h: Same.
* src/misc-inst.cc: Same.
* src/concept-inst.cc: Same.
* src/ext-inst.cc: Same.
* src/string-inst.cc: Same.
* src/pool_allocator.cc: Same.
* src/bitmap_allocator.cc: Same.
* src/mt_allocator.cc: Same.
* libsupc++/exception: Same.
* libsupc++/vterminate.cc: Same.
* testsuite/ext/hash_map/1.cc: Explicitly qualify __gnu_cxx::hash_map.
* testsuite/ext/hash_map/14648.cc: Same.
* libsupc++/eh_alloc.cc: Correct comment line spacing.
2005-12-18 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (__copy_normal::copy_n): Uglify

View File

@ -135,6 +135,8 @@ ENABLE_SYMVERS_DARWIN_FALSE = @ENABLE_SYMVERS_DARWIN_FALSE@
ENABLE_SYMVERS_DARWIN_TRUE = @ENABLE_SYMVERS_DARWIN_TRUE@
ENABLE_SYMVERS_FALSE = @ENABLE_SYMVERS_FALSE@
ENABLE_SYMVERS_GNU_FALSE = @ENABLE_SYMVERS_GNU_FALSE@
ENABLE_SYMVERS_GNU_NAMESPACE_FALSE = @ENABLE_SYMVERS_GNU_NAMESPACE_FALSE@
ENABLE_SYMVERS_GNU_NAMESPACE_TRUE = @ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@
ENABLE_SYMVERS_GNU_TRUE = @ENABLE_SYMVERS_GNU_TRUE@
ENABLE_SYMVERS_TRUE = @ENABLE_SYMVERS_TRUE@
EXEEXT = @EXEEXT@

View File

@ -1685,7 +1685,7 @@ AC_DEFUN([GLIBCXX_ENABLE_SYMVERS], [
GLIBCXX_ENABLE(symvers,$1,[=STYLE],
[enables symbol versioning of the shared library],
[permit yes|no|gnu|darwin|darwin-export])
[permit yes|no|gnu|gnu-versioned-namespace|darwin|darwin-export])
# If we never went through the GLIBCXX_CHECK_LINKER_FEATURES macro, then we
# don't know enough about $LD to do tricks...
@ -1715,7 +1715,7 @@ if test x$enable_symvers = xdarwin-export ; then
fi
# Check to see if 'gnu' can win.
if test $enable_symvers = gnu; then
if test $enable_symvers = gnu || test $enable_symvers = gnu-versioned-namespace; then
# Check to see if libgcc_s exists, indicating that shared libgcc is possible.
AC_MSG_CHECKING([for shared libgcc])
ac_save_CFLAGS="$CFLAGS"
@ -1778,6 +1778,11 @@ case $enable_symvers in
AC_DEFINE(_GLIBCXX_SYMVER_GNU, 1,
[Define to use GNU versioning in the shared library.])
;;
gnu-versioned-namespace)
SYMVER_FILE=config/abi/pre/gnu-versioned-namespace.ver
AC_DEFINE(_GLIBCXX_SYMVER_GNU_NAMESPACE, 1,
[Define to use GNU namespace versioning in the shared library.])
;;
darwin)
SYMVER_FILE=config/abi/pre/gnu.ver
AC_DEFINE(_GLIBCXX_SYMVER_DARWIN, 1,
@ -1794,6 +1799,7 @@ AC_SUBST(SYMVER_FILE)
AC_SUBST(port_specific_symbol_files)
GLIBCXX_CONDITIONAL(ENABLE_SYMVERS, test $enable_symvers != no)
GLIBCXX_CONDITIONAL(ENABLE_SYMVERS_GNU, test $enable_symvers = gnu)
GLIBCXX_CONDITIONAL(ENABLE_SYMVERS_GNU_NAMESPACE, test $enable_symvers = gnu-versioned-namespace)
GLIBCXX_CONDITIONAL(ENABLE_SYMVERS_DARWIN, test $enable_symvers = darwin)
AC_MSG_NOTICE(versioning on shared library symbols is $enable_symvers)

View File

@ -679,6 +679,9 @@
/* Define to use GNU versioning in the shared library. */
#undef _GLIBCXX_SYMVER_GNU
/* Define to use GNU namespace versioning in the shared library. */
#undef _GLIBCXX_SYMVER_GNU_NAMESPACE
/* Define if C99 functions or macros from <wchar.h>, <math.h>, <complex.h>,
<stdio.h>, and <stdlib.h> can be used or exposed. */
#undef _GLIBCXX_USE_C99

View File

@ -0,0 +1,202 @@
## Linker script for GNU namespace versioning.
##
## Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
##
## This file is part of the libstdc++ version 3 distribution.
##
## This file is part of the GNU ISO C++ Library. This library is free
## software; you can redistribute it and/or modify it under the
## terms of the GNU General Public License as published by the
## Free Software Foundation; either version 2, or (at your option)
## any later version.
##
## This library is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License along
## with this library; see the file COPYING. If not, write to the Free
## Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
## USA.
GLIBCXX_3.7 {
global:
# Names inside the 'extern' block are demangled names.
extern "C++"
{
std::_6::*;
std::*
};
# operator new(size_t)
_Znw[jm];
# operator new(size_t, std::nothrow_t const&)
_Znw[jm]RKSt9nothrow_t;
# operator delete(void*)
_ZdlPv;
# operator delete(void*, std::nothrow_t const&)
_ZdlPvRKSt9nothrow_t;
# operator new[](size_t)
_Zna[jm];
# operator new[](size_t, std::nothrow_t const&)
_Zna[jm]RKSt9nothrow_t;
# operator delete[](void*)
_ZdaPv;
# operator delete[](void*, std::nothrow_t const&)
_ZdaPvRKSt9nothrow_t;
# function-scope static objects requires a guard variable.
_ZGVNSt*;
_ZTT*;
_ZTV*;
_ZTI*;
_ZTS*;
_ZTv0_n*;
# std::__convert_to_v
_ZNSt2_614__convert_to_v*;
# std::__copy_streambufs
_ZNSt2_617__copy_streambufsI[cw]NS_11char_traitsI[cw]EEEEiPNS_15basic_streambufIT_T0_EES7_;
# __gnu_cxx::__atomic_add
# __gnu_cxx::__exchange_and_add
_ZN9__gnu_cxx2_612__atomic_addEPV[il][il];
_ZN9__gnu_cxx2_618__exchange_and_addEPV[li][il];
# __gnu_cxx::__pool
_ZN9__gnu_cxx2_66__poolILb[01]EE13_M_initializeEv;
_ZN9__gnu_cxx2_66__poolILb[01]EE16_M_reserve_blockE[jm][jm];
_ZN9__gnu_cxx2_66__poolILb[01]EE16_M_reclaim_blockEPc[jm];
_ZN9__gnu_cxx2_66__poolILb[01]EE10_M_destroyEv;
_ZN9__gnu_cxx2_66__poolILb1EE16_M_get_thread_idEv;
_ZN9__gnu_cxx2_617__pool_alloc_base9_M_refillE[jm];
_ZN9__gnu_cxx2_617__pool_alloc_base16_M_get_free_listE[jm];
_ZN9__gnu_cxx2_617__pool_alloc_base12_M_get_mutexEv;
_ZN9__gnu_cxx2_69free_list6_M_getE[jm];
_ZN9__gnu_cxx2_69free_list8_M_clearEv;
local:
*;
};
# Symbols in the support library (libsupc++) have their own tag.
CXXABI_1.7 {
global:
__cxa_allocate_exception;
__cxa_bad_cast;
__cxa_bad_typeid;
__cxa_begin_catch;
__cxa_begin_cleanup;
__cxa_call_unexpected;
__cxa_current_exception_type;
__cxa_demangle;
__cxa_end_catch;
__cxa_end_cleanup;
__cxa_free_exception;
__cxa_get_exception_ptr;
__cxa_get_globals;
__cxa_get_globals_fast;
__cxa_guard_abort;
__cxa_guard_acquire;
__cxa_guard_release;
__cxa_pure_virtual;
__cxa_rethrow;
__cxa_throw;
__cxa_type_match;
__cxa_vec_cctor;
__cxa_vec_cleanup;
__cxa_vec_ctor;
__cxa_vec_delete2;
__cxa_vec_delete3;
__cxa_vec_delete;
__cxa_vec_dtor;
__cxa_vec_new2;
__cxa_vec_new3;
__cxa_vec_new;
__gxx_personality_v0;
__gxx_personality_sj0;
__dynamic_cast;
# *_type_info classes, ctor and dtor
_ZN10__cxxabiv117__array_type_info*;
_ZN10__cxxabiv117__class_type_info*;
_ZN10__cxxabiv116__enum_type_info*;
_ZN10__cxxabiv120__function_type_info*;
_ZN10__cxxabiv123__fundamental_type_info*;
_ZN10__cxxabiv117__pbase_type_info*;
_ZN10__cxxabiv129__pointer_to_member_type_info*;
_ZN10__cxxabiv119__pointer_type_info*;
_ZN10__cxxabiv120__si_class_type_info*;
_ZN10__cxxabiv121__vmi_class_type_info*;
# *_type_info classes, member functions
_ZNK10__cxxabiv117__class_type_info*;
_ZNK10__cxxabiv120__function_type_info*;
_ZNK10__cxxabiv117__pbase_type_info*;
_ZNK10__cxxabiv129__pointer_to_member_type_info*;
_ZNK10__cxxabiv119__pointer_type_info*;
_ZNK10__cxxabiv120__si_class_type_info*;
_ZNK10__cxxabiv121__vmi_class_type_info*;
# virtual table
_ZTVN10__cxxabiv117__array_type_infoE;
_ZTVN10__cxxabiv117__class_type_infoE;
_ZTVN10__cxxabiv116__enum_type_infoE;
_ZTVN10__cxxabiv120__function_type_infoE;
_ZTVN10__cxxabiv123__fundamental_type_infoE;
_ZTVN10__cxxabiv117__pbase_type_infoE;
_ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
_ZTVN10__cxxabiv119__pointer_type_infoE;
_ZTVN10__cxxabiv120__si_class_type_infoE;
_ZTVN10__cxxabiv121__vmi_class_type_infoE;
# typeinfo structure (and some names)
_ZTI[a-z];
_ZTIP[a-z];
_ZTIPK[a-z];
_ZTIN10__cxxabiv117__array_type_infoE;
_ZTIN10__cxxabiv117__class_type_infoE;
_ZTIN10__cxxabiv116__enum_type_infoE;
_ZTIN10__cxxabiv120__function_type_infoE;
_ZTIN10__cxxabiv123__fundamental_type_infoE;
_ZTIN10__cxxabiv117__pbase_type_infoE;
_ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
_ZTIN10__cxxabiv119__pointer_type_infoE;
_ZTIN10__cxxabiv120__si_class_type_infoE;
_ZTIN10__cxxabiv121__vmi_class_type_infoE;
# typeinfo name
_ZTS[a-z];
_ZTSP[a-z];
_ZTSPK[a-z];
_ZTSN10__cxxabiv117__array_type_infoE;
_ZTSN10__cxxabiv117__class_type_infoE;
_ZTSN10__cxxabiv116__enum_type_infoE;
_ZTSN10__cxxabiv120__function_type_infoE;
_ZTSN10__cxxabiv123__fundamental_type_infoE;
_ZTSN10__cxxabiv117__pbase_type_infoE;
_ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
_ZTSN10__cxxabiv119__pointer_type_infoE;
_ZTSN10__cxxabiv120__si_class_type_infoE;
_ZTSN10__cxxabiv121__vmi_class_type_infoE;
# __gnu_cxx::_verbose_terminate_handler()
_ZN9__gnu_cxx2_627__verbose_terminate_handlerEv;
local:
*;
};

View File

@ -1,9 +1,7 @@
## Linker script for GNU ld 2.13.91+ only.
## Linker script for GNU versioning (GNU ld 2.13.91+ only.)
##
## Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
##
## This file is part of the libstdc++ version 3 distribution.
##
## This file is part of the GNU ISO C++ Library. This library is free
## software; you can redistribute it and/or modify it under the
## terms of the GNU General Public License as published by the
@ -110,15 +108,7 @@ GLIBCXX_3.4 {
std::__num_base::_S_atoms_out;
std::__moneypunct_cache*;
std::__numpunct_cache*;
std::__timepunct_cache*;
__gnu_debug::_Safe_iterator_base*;
__gnu_debug::_Safe_sequence_base*;
__gnu_debug::_Error_formatter*;
__gnu_norm::_List_node_base::hook*;
__gnu_norm::_List_node_base::swap*;
__gnu_norm::_List_node_base::unhook*;
__gnu_norm::_List_node_base::reverse*;
__gnu_norm::_List_node_base::transfer*
std::__timepunct_cache*
};
# Names not in an 'extern' block are mangled names.
@ -337,6 +327,27 @@ GLIBCXX_3.4 {
_ZN9__gnu_cxx12__atomic_add*;
_ZN9__gnu_cxx18__exchange_and_add*;
# __gnu_debug
_ZN10__gnu_norm15_List_node_base4hookEPS0_;
_ZN10__gnu_norm15_List_node_base4swapERS0_S1_;
_ZN10__gnu_norm15_List_node_base6unhookEv;
_ZN10__gnu_norm15_List_node_base7reverseEv;
_ZN10__gnu_norm15_List_node_base8transferEPS0_S1_;
_ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
_ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
_ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
_ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
_ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
_ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
_ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
_ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
_ZNK11__gnu_debug16_Error_formatter8_M_errorEv;
_ZNK11__gnu_debug16_Error_formatter10_M_messageENS_13_Debug_msg_idE;
_ZNK11__gnu_debug16_Error_formatter10_Parameter14_M_print_fieldEPKS0_PKc;
_ZNK11__gnu_debug16_Error_formatter10_Parameter20_M_print_descriptionEPKS0_;
_ZNK11__gnu_debug16_Error_formatter13_M_print_wordEPKc;
_ZNK11__gnu_debug16_Error_formatter15_M_print_stringEPKc;
# operator new(size_t)
_Znw[jm];
# operator new(size_t, std::nothrow_t const&)
@ -585,6 +596,26 @@ GLIBCXX_3.4.7 {
_ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetE[jm];
_ZNSt10__gnu_norm15_List_node_base4hookEPS0_;
_ZNSt10__gnu_norm15_List_node_base4swapERS0_S1_;
_ZNSt10__gnu_norm15_List_node_base6unhookEv;
_ZNSt10__gnu_norm15_List_node_base7reverseEv;
_ZNSt10__gnu_norm15_List_node_base8transferEPS0_S1_;
_ZNKSt11__gnu_debug16_Error_formatter8_M_errorEv;
_ZNKSt11__gnu_debug16_Error_formatter10_M_messageENS_13_Debug_msg_idE;
_ZNKSt11__gnu_debug16_Error_formatter10_Parameter14_M_print_fieldEPKS0_PKc;
_ZNKSt11__gnu_debug16_Error_formatter10_Parameter20_M_print_descriptionEPKS0_;
_ZNKSt11__gnu_debug16_Error_formatter13_M_print_wordEPKc;
_ZNKSt11__gnu_debug16_Error_formatter15_M_print_stringEPKc;
_ZNKSt11__gnu_debug19_Safe_iterator_base11_M_singularEv;
_ZNKSt11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
_ZNSt11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
_ZNSt11__gnu_debug19_Safe_iterator_base9_M_detachEv;
_ZNSt11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
_ZNSt11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
_ZNSt11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
_ZNSt11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
} GLIBCXX_3.4.6;
# Symbols in the support library (libsupc++) have their own tag.

View File

@ -1,7 +1,7 @@
#
# This is a placeholder file. It does nothing and is not used.
#
# If you are seeing this file as your linker script (named linker.map), then
# either 1) the configuration process determined that symbol versioning should
# not be done, or 2) you specifically turned it off.
#
# If you are seeing this file as your linker script (named
# libstdc++-symbols.ver), then either 1) the configuration process
# determined that symbol versioning should not be done, or 2) you
# specifically turned it off. (ie, --disable-symvers).

View File

@ -30,8 +30,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -41,5 +41,6 @@ namespace __gnu_cxx
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __sync_fetch_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -29,8 +29,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
{
@ -74,4 +74,5 @@ namespace __gnu_cxx
void
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __exchange_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,7 @@
// Low-level functions for atomic operations: Generic version -*- C++ -*-
// Copyright (C) 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,8 +36,8 @@ namespace __gnu_internal
__glibcxx_mutex_define_initialized(atomic_mutex);
} // namespace __gnu_internal
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -53,4 +54,5 @@ namespace __gnu_cxx
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __exchange_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: PA-RISC version -*- C++ -*-
// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -30,8 +30,8 @@
#include <bits/c++config.h>
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<int _Inst>
struct _Atomicity_lock
{
@ -94,4 +94,5 @@ namespace __gnu_cxx
__asm__ __volatile__ ("stw,ma %1,0(%0)"
: : "r" (&lock), "r" (tmp) : "memory");
}
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: x86, x >= 3 version -*- C++ -*-
// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -29,8 +29,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<int __inst>
struct _Atomicity_lock
{
@ -71,4 +71,5 @@ namespace __gnu_cxx
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __exchange_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: x86, x >= 4 version -*- C++ -*-
// Copyright (C) 1999, 2000, 2001, 2004 Free Software Foundation, Inc.
// Copyright (C) 1999, 2000, 2001, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -29,8 +29,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -49,5 +49,6 @@ namespace __gnu_cxx
__asm__ __volatile__ ("lock; add{l} {%1,%0|%0,%1}"
: "=m" (*__mem) : "ir" (__val), "m" (*__mem));
}
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -30,8 +30,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -41,4 +41,5 @@ namespace __gnu_cxx
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __sync_fetch_and_add(__mem, __val); }
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: m68k version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -29,8 +29,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#if ( defined(__mc68020__) || defined(__mc68030__) \
|| defined(__mc68040__) || defined(__mc68060__) ) \
&& !defined(__mcpu32__)
@ -130,4 +130,5 @@ namespace __gnu_cxx
// architecturally guaranteed to be atomic.
__exchange_and_add(__mem, __val);
}
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: MIPS version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -29,8 +29,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -80,4 +80,5 @@ namespace __gnu_cxx
: "r"(__mem), "r"(__val)
: "memory" );
}
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -30,8 +30,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -41,4 +41,5 @@ namespace __gnu_cxx
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __sync_fetch_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: S/390 version -*- C++ -*-
// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -29,8 +29,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -40,4 +40,5 @@ namespace __gnu_cxx
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __sync_fetch_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,4 +1,4 @@
// Low-level functions for atomic operations: Generic version -*- C++ -*-
// Low-level functions for atomic operations: sh version -*- C++ -*-
// Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005
// Free Software Foundation, Inc.
@ -82,8 +82,8 @@ namespace __gnu_internal
__glibcxx_mutex_define_initialized(atomic_mutex);
} // namespace __gnu_internal
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
@ -100,7 +100,8 @@ namespace __gnu_cxx
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __exchange_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE
#endif /* !__SH4A__ */

View File

@ -1,6 +1,7 @@
// Low-level functions for atomic operations: Sparc version -*- C++ -*-
// Copyright (C) 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
// Copyright (C) 1999, 2000, 2001, 2002, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -29,8 +30,8 @@
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#ifdef __arch64__
_Atomic_word
__attribute__ ((__unused__))
@ -122,4 +123,5 @@ namespace __gnu_cxx
: "memory");
}
#endif /* __arch32__ */
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -174,8 +174,9 @@ namespace __gnu_internal
#endif
} // namespace __gnu_internal
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Definitions for __basic_file<char>.
__basic_file<char>::__basic_file(__c_lock* /*__lock*/)
: _M_cfile(NULL), _M_cfile_created(false) { }
@ -370,4 +371,6 @@ namespace std
#endif
return 0;
}
} // namespace std
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,7 @@
// Wrapper of C-language FILE struct -*- C++ -*-
// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -44,8 +45,8 @@
#include <bits/c++config.h>
#include <ios>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Generic declaration.
template<typename _CharT>
class __basic_file;
@ -105,6 +106,7 @@ namespace std
streamsize
showmanyc();
};
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -1,6 +1,7 @@
// underlying io library -*- C++ -*-
// Underlying io library details -*- C++ -*-
// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +37,8 @@
#include <cstddef>
#include <bits/gthr.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
typedef __gthread_mutex_t __c_lock;
// for basic_file.h
@ -81,6 +82,7 @@ namespace std
static const __int_type _S_out = 0x10;
static const __int_type _S_trunc = 0x20;
};
}
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -43,8 +43,8 @@
#include <ieeefp.h>
#endif
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Specializations for all types used in num_get.
template<>
void
@ -149,10 +149,11 @@ namespace std
__c_locale
locale::facet::_S_clone_c_locale(__c_locale&)
{ return __c_locale(); }
} // namespace std
namespace __gnu_cxx
{
_GLIBCXX_END_NAMESPACE
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
{
"LC_CTYPE",
@ -162,9 +163,11 @@ namespace __gnu_cxx
"LC_MONETARY",
"LC_MESSAGES"
};
}
namespace std
{
_GLIBCXX_END_NAMESPACE
_GLIBCXX_BEGIN_NAMESPACE(std)
const char* const* const locale::_S_categories = __gnu_cxx::category_names;
} // namespace std
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Wrapper for underlying C-language localization -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -44,8 +44,8 @@
#define _GLIBCXX_NUM_CATEGORIES 0
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
typedef int* __c_locale;
// Convert numeric value of type _Tv to string and return length of
@ -81,6 +81,7 @@ namespace std
}
return __ret;
}
}
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -1,6 +1,6 @@
// std::codecvt implementation details, generic version -*- C++ -*-
// Copyright (C) 2002 Free Software Foundation, Inc.
// Copyright (C) 2002, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,8 +35,8 @@
#include <locale>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Specializations.
#ifdef _GLIBCXX_USE_WCHAR_T
codecvt_base::result
@ -214,4 +214,5 @@ namespace std
return __ret;
}
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::collate implementation details, generic version -*- C++ -*-
// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,8 +35,8 @@
#include <locale>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// These are basically extensions to char_traits, and perhaps should
// be put there instead of here.
template<>
@ -69,4 +69,5 @@ namespace std
size_t __n) const
{ return wcsxfrm(__to, __from, __n); }
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::ctype implementation details, generic version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,8 +35,8 @@
#include <locale>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// NB: The other ctype<char> specializations are in src/locale.cc and
// various /config/os/* files.
template<>
@ -264,4 +264,5 @@ namespace std
}
}
#endif // _GLIBCXX_USE_WCHAR_T
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::messages implementation details, generic version -*- C++ -*-
// Copyright (C) 2001 Free Software Foundation, Inc.
// Copyright (C) 2001, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,8 +35,8 @@
#include <locale>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Specializations
template<>
string
@ -49,4 +49,5 @@ namespace std
messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const
{ return __dfault; }
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::moneypunct implementation details, generic version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,8 +35,8 @@
#include <locale>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Construct and return valid pattern consisting of some combination of:
// space none symbol sign value
money_base::pattern
@ -168,4 +168,5 @@ namespace std
moneypunct<wchar_t, false>::~moneypunct()
{ delete _M_data; }
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::numpunct implementation details, generic version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,8 +35,8 @@
#include <locale>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<>
void
numpunct<char>::_M_initialize_numpunct(__c_locale)
@ -103,4 +103,6 @@ namespace std
numpunct<wchar_t>::~numpunct()
{ delete _M_data; }
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::time_get, std::time_put implementation, generic version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +36,8 @@
#include <locale>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<>
void
__timepunct<char>::
@ -201,4 +201,5 @@ namespace std
_M_data->_M_amonth12 = L"Dec";
}
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -40,8 +40,8 @@
#include <langinfo.h>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<>
void
__convert_to_v(const char* __s, float& __v, ios_base::iostate& __err,
@ -107,10 +107,11 @@ namespace std
__c_locale
locale::facet::_S_clone_c_locale(__c_locale& __cloc)
{ return __duplocale(__cloc); }
} // namespace std
namespace __gnu_cxx
{
_GLIBCXX_END_NAMESPACE
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
{
"LC_CTYPE",
@ -126,9 +127,11 @@ namespace __gnu_cxx
"LC_MEASUREMENT",
"LC_IDENTIFICATION"
};
}
namespace std
{
_GLIBCXX_END_NAMESPACE
_GLIBCXX_BEGIN_NAMESPACE(std)
const char* const* const locale::_S_categories = __gnu_cxx::category_names;
} // namespace std
_GLIBCXX_END_NAMESPACE

View File

@ -50,14 +50,15 @@
#define _GLIBCXX_NUM_CATEGORIES 6
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
extern "C" __typeof(uselocale) __uselocale;
}
_GLIBCXX_END_NAMESPACE
#endif
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
typedef __locale_t __c_locale;
// Convert numeric value of type _Tv to string and return length of
@ -96,6 +97,7 @@ namespace std
#endif
return __ret;
}
}
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -1,6 +1,6 @@
// std::codecvt implementation details, GNU version -*- C++ -*-
// Copyright (C) 2002, 2003 Free Software Foundation, Inc.
// Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +36,8 @@
#include <locale>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Specializations.
#ifdef _GLIBCXX_USE_WCHAR_T
codecvt_base::result
@ -303,4 +303,5 @@ namespace std
return __ret;
}
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::collate implementation details, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +36,8 @@
#include <locale>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// These are basically extensions to char_traits, and perhaps should
// be put there instead of here.
template<>
@ -70,4 +70,5 @@ namespace std
size_t __n) const
{ return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); }
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::ctype implementation details, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +36,8 @@
#include <locale>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// NB: The other ctype<char> specializations are in src/locale.cc and
// various /config/os/* files.
template<>
@ -300,4 +300,5 @@ namespace std
#endif
}
#endif // _GLIBCXX_USE_WCHAR_T
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::messages implementation details, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +36,8 @@
#include <locale>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Specializations.
template<>
string
@ -78,4 +78,5 @@ namespace std
# endif
}
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::moneypunct implementation details, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +36,8 @@
#include <locale>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Construct and return valid pattern consisting of some combination of:
// space none symbol sign value
money_base::pattern
@ -652,4 +652,5 @@ namespace std
delete _M_data;
}
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::numpunct implementation details, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -36,8 +36,8 @@
#include <locale>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<>
void
numpunct<char>::_M_initialize_numpunct(__c_locale __cloc)
@ -148,4 +148,5 @@ namespace std
numpunct<wchar_t>::~numpunct()
{ delete _M_data; }
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -37,8 +37,8 @@
#include <locale>
#include <bits/c++locale_internal.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<>
void
__timepunct<char>::
@ -392,4 +392,5 @@ namespace std
}
}
#endif
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Wrapper for underlying C-language localization -*- C++ -*-
// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -38,7 +38,9 @@
#include <iconv.h> // For codecvt using iconv, iconv_t
#include <nl_types.h> // For messages
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
typedef int* __c_locale;
}
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: AIX version -*- C++ -*-
// Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc.
// Copyright (C) 2000, 2001, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -43,8 +43,8 @@ extern "C"
#include <sys/atomic_op.h>
}
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add (volatile _Atomic_word* __mem, int __val)
@ -58,4 +58,5 @@ namespace __gnu_cxx
{
(void) ::fetch_and_add (const_cast<atomic_p>(__mem), __val);
}
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations: IRIX version -*- C++ -*-
// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -30,8 +30,8 @@
#include <mutex.h>
#include <bits/atomicity.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
{ return (_Atomic_word) test_then_add((unsigned long*) const_cast<_Atomic_word*>(__mem), __val); }
@ -39,4 +39,5 @@ namespace __gnu_cxx
void
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __exchange_and_add(__mem, __val); }
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE

View File

@ -309,7 +309,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static GLIBCXX_HOSTED_TRUE GLIBCXX_HOSTED_FALSE GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H ALLOCATOR_H ALLOCATOR_NAME C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS glibcxx_thread_h WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS LIBICONV SYMVER_FILE port_specific_symbol_files ENABLE_SYMVERS_TRUE ENABLE_SYMVERS_FALSE ENABLE_SYMVERS_GNU_TRUE ENABLE_SYMVERS_GNU_FALSE ENABLE_SYMVERS_DARWIN_TRUE ENABLE_SYMVERS_DARWIN_FALSE baseline_dir ATOMICITY_SRCDIR ATOMIC_WORD_SRCDIR CPU_DEFINES_SRCDIR ABI_TWEAKS_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS'
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static GLIBCXX_HOSTED_TRUE GLIBCXX_HOSTED_FALSE GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H ALLOCATOR_H ALLOCATOR_NAME C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS glibcxx_thread_h WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS LIBICONV SYMVER_FILE port_specific_symbol_files ENABLE_SYMVERS_TRUE ENABLE_SYMVERS_FALSE ENABLE_SYMVERS_GNU_TRUE ENABLE_SYMVERS_GNU_FALSE ENABLE_SYMVERS_GNU_NAMESPACE_TRUE ENABLE_SYMVERS_GNU_NAMESPACE_FALSE ENABLE_SYMVERS_DARWIN_TRUE ENABLE_SYMVERS_DARWIN_FALSE baseline_dir ATOMICITY_SRCDIR ATOMIC_WORD_SRCDIR CPU_DEFINES_SRCDIR ABI_TWEAKS_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@ -87368,7 +87368,7 @@ if test "${enable_symvers+set}" = set; then
enableval="$enable_symvers"
case "$enableval" in
yes|no|gnu|darwin|darwin-export) ;;
yes|no|gnu|gnu-versioned-namespace|darwin|darwin-export) ;;
*) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable symvers" >&5
echo "$as_me: error: Unknown argument to enable/disable symvers" >&2;}
{ (exit 1); exit 1; }; } ;;
@ -87407,7 +87407,7 @@ if test x$enable_symvers = xdarwin-export ; then
fi
# Check to see if 'gnu' can win.
if test $enable_symvers = gnu; then
if test $enable_symvers = gnu || test $enable_symvers = gnu-versioned-namespace; then
# Check to see if libgcc_s exists, indicating that shared libgcc is possible.
echo "$as_me:$LINENO: checking for shared libgcc" >&5
echo $ECHO_N "checking for shared libgcc... $ECHO_C" >&6
@ -87580,6 +87580,14 @@ case $enable_symvers in
cat >>confdefs.h <<\_ACEOF
#define _GLIBCXX_SYMVER_GNU 1
_ACEOF
;;
gnu-versioned-namespace)
SYMVER_FILE=config/abi/pre/gnu-versioned-namespace.ver
cat >>confdefs.h <<\_ACEOF
#define _GLIBCXX_SYMVER_GNU_NAMESPACE 1
_ACEOF
;;
@ -87606,6 +87614,7 @@ fi
{ echo "$as_me:$LINENO: versioning on shared library symbols is $enable_symvers" >&5
echo "$as_me: versioning on shared library symbols is $enable_symvers" >&6;}
@ -88586,6 +88595,17 @@ fi
if test $enable_symvers = gnu-versioned-namespace; then
ENABLE_SYMVERS_GNU_NAMESPACE_TRUE=
ENABLE_SYMVERS_GNU_NAMESPACE_FALSE='#'
else
ENABLE_SYMVERS_GNU_NAMESPACE_TRUE='#'
ENABLE_SYMVERS_GNU_NAMESPACE_FALSE=
fi
if test $enable_symvers = darwin; then
ENABLE_SYMVERS_DARWIN_TRUE=
ENABLE_SYMVERS_DARWIN_FALSE='#'
@ -88952,6 +88972,13 @@ echo "$as_me: error: conditional \"ENABLE_SYMVERS_GNU\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; }
fi
if test -z "${ENABLE_SYMVERS_GNU_NAMESPACE_TRUE}" && test -z "${ENABLE_SYMVERS_GNU_NAMESPACE_FALSE}"; then
{ { echo "$as_me:$LINENO: error: conditional \"ENABLE_SYMVERS_GNU_NAMESPACE\" was never defined.
Usually this means the macro was only invoked conditionally." >&5
echo "$as_me: error: conditional \"ENABLE_SYMVERS_GNU_NAMESPACE\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; }
fi
if test -z "${ENABLE_SYMVERS_DARWIN_TRUE}" && test -z "${ENABLE_SYMVERS_DARWIN_FALSE}"; then
{ { echo "$as_me:$LINENO: error: conditional \"ENABLE_SYMVERS_DARWIN\" was never defined.
Usually this means the macro was only invoked conditionally." >&5
@ -89629,6 +89656,8 @@ s,@ENABLE_SYMVERS_TRUE@,$ENABLE_SYMVERS_TRUE,;t t
s,@ENABLE_SYMVERS_FALSE@,$ENABLE_SYMVERS_FALSE,;t t
s,@ENABLE_SYMVERS_GNU_TRUE@,$ENABLE_SYMVERS_GNU_TRUE,;t t
s,@ENABLE_SYMVERS_GNU_FALSE@,$ENABLE_SYMVERS_GNU_FALSE,;t t
s,@ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@,$ENABLE_SYMVERS_GNU_NAMESPACE_TRUE,;t t
s,@ENABLE_SYMVERS_GNU_NAMESPACE_FALSE@,$ENABLE_SYMVERS_GNU_NAMESPACE_FALSE,;t t
s,@ENABLE_SYMVERS_DARWIN_TRUE@,$ENABLE_SYMVERS_DARWIN_TRUE,;t t
s,@ENABLE_SYMVERS_DARWIN_FALSE@,$ENABLE_SYMVERS_DARWIN_FALSE,;t t
s,@baseline_dir@,$baseline_dir,;t t

View File

@ -277,14 +277,18 @@ options</a></h1>
</dd>
<dt><code>--enable-symvers[=style] </code></dt>
<dd><p>In 3.1 and later, tries to turn on symbol versioning in the
shared library (if a shared library has been requested). The
only 'style' currently supported is 'gnu' which requires that
a recent version of the GNU linker be in use. With no style
given, the configure script will try to guess if the 'gnu'
style can be used, and if so, will turn it on. Hopefully
people will volunteer to do other 'style' options.
shared library (if a shared library has been
requested). Values for 'style' that are currently supported
are 'gnu', 'gnu-versioned-namespace', 'darwin', and
'darwin-export'. Both gnu- options require that a recent
version of the GNU linker be in use. Both darwin options are
equivalent. With no style given, the configure script will try
to guess if the 'gnu' style can be used, and if so, will turn
it on.
</p>
</dd>
<dt><code>--enable-libstdcxx-pch </code></dt>

View File

@ -163,91 +163,91 @@
<tr>
<td>std::bitset</td>
<td>&lt;bitset&gt;</td>
<td>__gnu_debug::bitset</td>
<td>debug::bitset</td>
<td>&lt;debug/bitset&gt;</td>
</tr>
<tr>
<td>std::deque</td>
<td>&lt;deque&gt;</td>
<td>__gnu_debug::deque</td>
<td>debug::deque</td>
<td>&lt;debug/deque&gt;</td>
</tr>
<tr>
<td>std::list</td>
<td>&lt;list&gt;</td>
<td>__gnu_debug::list</td>
<td>debug::list</td>
<td>&lt;debug/list&gt;</td>
</tr>
<tr>
<td>std::map</td>
<td>&lt;map&gt;</td>
<td>__gnu_debug::map</td>
<td>debug::map</td>
<td>&lt;debug/map&gt;</td>
</tr>
<tr>
<td>std::multimap</td>
<td>&lt;map&gt;</td>
<td>__gnu_debug::multimap</td>
<td>debug::multimap</td>
<td>&lt;debug/map&gt;</td>
</tr>
<tr>
<td>std::multiset</td>
<td>&lt;set&gt;</td>
<td>__gnu_debug::multiset</td>
<td>debug::multiset</td>
<td>&lt;debug/set&gt;</td>
</tr>
<tr>
<td>std::set</td>
<td>&lt;set&gt;</td>
<td>__gnu_debug::set</td>
<td>debug::set</td>
<td>&lt;debug/set&gt;</td>
</tr>
<tr>
<td>std::string</td>
<td>&lt;string&gt;</td>
<td>__gnu_debug::string</td>
<td>debug::string</td>
<td>&lt;debug/string&gt;</td>
</tr>
<tr>
<td>std::wstring</td>
<td>&lt;string&gt;</td>
<td>__gnu_debug::wstring</td>
<td>debug::wstring</td>
<td>&lt;debug/string&gt;</td>
</tr>
<tr>
<td>std::basic_string</td>
<td>&lt;string&gt;</td>
<td>__gnu_debug::basic_string</td>
<td>debug::basic_string</td>
<td>&lt;debug/string&gt;</td>
</tr>
<tr>
<td>std::vector</td>
<td>&lt;vector&gt;</td>
<td>__gnu_debug::vector</td>
<td>debug::vector</td>
<td>&lt;debug/vector&gt;</td>
</tr>
<tr>
<td>__gnu_cxx::hash_map</td>
<td>&lt;ext/hash_map&gt;</td>
<td>__gnu_debug::hash_map</td>
<td>debug::hash_map</td>
<td>&lt;debug/hash_map&gt;</td>
</tr>
<tr>
<td>__gnu_cxx::hash_multimap</td>
<td>&lt;ext/hash_map&gt;</td>
<td>__gnu_debug::hash_multimap</td>
<td>debug::hash_multimap</td>
<td>&lt;debug/hash_map&gt;</td>
</tr>
<tr>
<td>__gnu_cxx::hash_set</td>
<td>&lt;ext/hash_set&gt;</td>
<td>__gnu_debug::hash_set</td>
<td>debug::hash_set</td>
<td>&lt;debug/hash_set&gt;</td>
</tr>
<tr>
<td>__gnu_cxx::hash_multiset</td>
<td>&lt;ext/hash_set&gt;</td>
<td>__gnu_debug::hash_multiset</td>
<td>debug::hash_multiset</td>
<td>&lt;debug/hash_set&gt;</td>
</tr>
</table>
@ -297,16 +297,16 @@
<li><code>std::basic_string</code> (no safe iterators)</li>
<li><code>std::bitset</code></li>
<li><code>std::deque</code></li>
<li><code>__gnu_cxx::hash_map</code></li>
<li><code>__gnu_cxx::hash_multimap</code></li>
<li><code>__gnu_cxx::hash_multiset</code></li>
<li><code>__gnu_cxx::hash_set</code></li>
<li><code>std::list</code></li>
<li><code>std::map</code></li>
<li><code>std::multimap</code></li>
<li><code>std::multiset</code></li>
<li><code>std::set</code></li>
<li><code>std::vector</code></li>
<li><code>__gnu_cxx::hash_map</code></li>
<li><code>__gnu_cxx::hash_multimap</code></li>
<li><code>__gnu_cxx::hash_multiset</code></li>
<li><code>__gnu_cxx::hash_set</code></li>
</ul>

View File

@ -330,68 +330,56 @@ template&lt;typename _Tp, typename _Allocator = allocator&lt;_Tp&gt;
<p>In release mode, we define only the release-mode version of the
component with its standard name and do not include the debugging
component at all. The release mode version is defined within the
namespace <code>__gnu_norm</code>, and then associated with namespace
<code>std</code> via a "strong using" directive. Minus the
namespace associations, this method leaves the behavior of release
mode completely unchanged from its behavior prior to the
introduction of the libstdc++ debug mode. Here's an example of what
this ends up looking like, in C++.</p>
namespace <code>std</code>. Minus the namespace associations, this
method leaves the behavior of release mode completely unchanged from
its behavior prior to the introduction of the libstdc++ debug
mode. Here's an example of what this ends up looking like, in
C++.</p>
<pre>
namespace __gnu_norm
namespace std
{
using namespace std;
template&lt;typename _Tp, typename _Alloc = allocator&lt;_Tp&gt; &gt;
class list
{
// ...
};
} // namespace __gnu_norm
namespace std
{
using namespace __gnu_norm __attribute__ ((strong));
}
};
} // namespace std
</pre>
<p>In debug mode we include the release-mode container and also the
debug-mode container. The release mode version is defined exactly as
before, and the debug-mode container is defined within the namespace
<code>__gnu_debug</code>, which is associated with namespace
<p>In debug mode we include the release-mode container (which is now
defined in in the namespace <code>__gnu_norm</code>) and also the
debug-mode container. The debug-mode container is defined within the
namespace <code>__gnu_debug</code>, which is associated with namespace
<code>std</code> via a "strong using" directive. This method allows
the debug- and release-mode versions of the same component to coexist
at compile-time without causing an unreasonable maintenance burden,
while minimizing confusion. Again, this boils down to C++ code as
follows:</p>
at compile-time and link-time without causing an unreasonable
maintenance burden, while minimizing confusion. Again, this boils down
to C++ code as follows:</p>
<pre>
namespace __gnu_norm
{
using namespace std;
template&lt;typename _Tp, typename _Alloc = allocator&lt;_Tp&gt; &gt;
class list
{
// ...
};
} // namespace __gnu_norm
namespace __gnu_debug
{
using namespace std;
template&lt;typename _Tp, typename _Alloc = allocator&lt;_Tp&gt; &gt;
class list
: public __gnu_norm::list&lt;_Tp, _Alloc&gt;,
public __gnu_debug::_Safe_sequence&lt;list&lt;_Tp, _Alloc&gt; &gt;
{
// ...
};
} // namespace __gnu_norm
namespace std
{
namespace __gnu_norm
{
template&lt;typename _Tp, typename _Alloc = allocator&lt;_Tp&gt; &gt;
class list
{
// ...
};
} // namespace __gnu_norm
namespace __gnu_debug
{
template&lt;typename _Tp, typename _Alloc = allocator&lt;_Tp&gt; &gt;
class list
: public __gnu_norm::list&lt;_Tp, _Alloc&gt;,
public __gnu_debug::_Safe_sequence&lt;list&lt;_Tp, _Alloc&gt; &gt;
{
// ...
};
} // namespace __gnu_norm
using namespace __gnu_debug __attribute__ ((strong));
}
</pre>

View File

@ -821,19 +821,30 @@ stamp-host: ${host_headers} ${host_headers_noinst} stamp-${host_alias}
$(STAMP) stamp-host
# Host includes dynamic.
${host_builddir}/c++config.h: ${top_builddir}/config.h \
${glibcxx_srcdir}/include/bits/c++config \
stamp-${host_alias} \
${toplevel_srcdir}/gcc/DATESTAMP
@cat ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
sed -e 's/^/#define __GLIBCXX__ /' \
< ${toplevel_srcdir}/gcc/DATESTAMP >> $@ ;\
if ENABLE_SYMVERS_GNU_NAMESPACE
stamp-namespace-version:
echo 1 > stamp-namespace-version
else
stamp-namespace-version:
echo 0 > stamp-namespace-version
endif
${host_builddir}/c++config.h: ${CONFIG_HEADER} \
${glibcxx_srcdir}/include/bits/c++config \
stamp-${host_alias} \
${toplevel_srcdir}/gcc/DATESTAMP \
stamp-namespace-version
@date=`cat ${toplevel_srcdir}/gcc/DATESTAMP` ;\
nsa_version=`cat stamp-namespace-version` ;\
sed -e "s,define __GLIBCXX__,define __GLIBCXX__ $$date," \
-e "s,define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION, define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION $$nsa_version," \
< ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
-e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
-e 's/VERSION/_GLIBCXX_VERSION/g' \
-e 's/WORDS_/_GLIBCXX_WORDS_/g' \
< ${CONFIG_HEADER} >> $@ ;\
echo "#endif // _CXXCONFIG_" >>$@
echo "" >> $@ ;\
echo "#endif // _CXXCONFIG_" >> $@
# Host includes for threads
uppercase = [ABCDEFGHIJKLMNOPQRSTUVWXYZ_]

View File

@ -103,6 +103,8 @@ ENABLE_SYMVERS_DARWIN_FALSE = @ENABLE_SYMVERS_DARWIN_FALSE@
ENABLE_SYMVERS_DARWIN_TRUE = @ENABLE_SYMVERS_DARWIN_TRUE@
ENABLE_SYMVERS_FALSE = @ENABLE_SYMVERS_FALSE@
ENABLE_SYMVERS_GNU_FALSE = @ENABLE_SYMVERS_GNU_FALSE@
ENABLE_SYMVERS_GNU_NAMESPACE_FALSE = @ENABLE_SYMVERS_GNU_NAMESPACE_FALSE@
ENABLE_SYMVERS_GNU_NAMESPACE_TRUE = @ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@
ENABLE_SYMVERS_GNU_TRUE = @ENABLE_SYMVERS_GNU_TRUE@
ENABLE_SYMVERS_TRUE = @ENABLE_SYMVERS_TRUE@
EXEEXT = @EXEEXT@
@ -1201,19 +1203,27 @@ stamp-host: ${host_headers} ${host_headers_noinst} stamp-${host_alias}
$(STAMP) stamp-host
# Host includes dynamic.
${host_builddir}/c++config.h: ${top_builddir}/config.h \
${glibcxx_srcdir}/include/bits/c++config \
stamp-${host_alias} \
${toplevel_srcdir}/gcc/DATESTAMP
@cat ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
sed -e 's/^/#define __GLIBCXX__ /' \
< ${toplevel_srcdir}/gcc/DATESTAMP >> $@ ;\
@ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@stamp-namespace-version:
@ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@ echo 1 > stamp-namespace-version
@ENABLE_SYMVERS_GNU_NAMESPACE_FALSE@stamp-namespace-version:
@ENABLE_SYMVERS_GNU_NAMESPACE_FALSE@ echo 0 > stamp-namespace-version
${host_builddir}/c++config.h: ${CONFIG_HEADER} \
${glibcxx_srcdir}/include/bits/c++config \
stamp-${host_alias} \
${toplevel_srcdir}/gcc/DATESTAMP \
stamp-namespace-version
@date=`cat ${toplevel_srcdir}/gcc/DATESTAMP` ;\
nsa_version=`cat stamp-namespace-version` ;\
sed -e "s,define __GLIBCXX__,define __GLIBCXX__ $$date," \
-e "s,define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION, define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION $$nsa_version," \
< ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
-e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
-e 's/VERSION/_GLIBCXX_VERSION/g' \
-e 's/WORDS_/_GLIBCXX_WORDS_/g' \
< ${CONFIG_HEADER} >> $@ ;\
echo "#endif // _CXXCONFIG_" >>$@
echo "" >> $@ ;\
echo "#endif // _CXXCONFIG_" >> $@
${host_builddir}/gthr.h: ${toplevel_srcdir}/gcc/gthr.h stamp-${host_alias}
sed -e '/^#pragma/b' \

View File

@ -143,7 +143,3 @@ using __gnu_cxx::power;
using __gnu_cxx::iota;
#endif /* _BACKWARD_ALGO_H */
// Local Variables:
// mode:C++
// End:

View File

@ -89,7 +89,3 @@ using __gnu_cxx::lexicographical_compare_3way;
using __gnu_cxx::uninitialized_copy_n;
#endif /* _BACKWARD_ALGOBASE_H */
// Local Variables:
// mode:C++
// End:

View File

@ -62,7 +62,3 @@
typedef std::vector<bool, std::allocator<bool> > bit_vector;
#endif /* _BACKWARD_BVECTOR_H */
// Local Variables:
// mode:C++
// End:

View File

@ -37,7 +37,3 @@ typedef complex<double> double_complex;
typedef complex<long double> long_double_complex;
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -64,7 +64,3 @@
using std::deque;
#endif /* _BACKWARD_DEQUE_H */
// Local Variables:
// mode:C++
// End:

View File

@ -46,7 +46,3 @@ using std::wstreampos;
#endif
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -124,7 +124,3 @@ using __gnu_cxx::mem_fun1;
using __gnu_cxx::mem_fun1_ref;
#endif /* _BACKWARD_FUNCTION_H */
// Local Variables:
// mode:C++
// End:

View File

@ -66,7 +66,3 @@ using __gnu_cxx::hash_map;
using __gnu_cxx::hash_multimap;
#endif /* _BACKWARD_HASH_MAP_H */
// Local Variables:
// mode:C++
// End:

View File

@ -70,7 +70,3 @@ using __gnu_cxx::hash;
using __gnu_cxx::hashtable;
#endif /* _BACKWARD_HASHTABLE_H */
// Local Variables:
// mode:C++
// End:

View File

@ -65,7 +65,3 @@ using std::make_heap;
using std::sort_heap;
#endif /* _BACKWARD_HEAP_H */
// Local Variables:
// mode:C++
// End:

View File

@ -64,7 +64,3 @@ using std::setprecision;
using std::setw;
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -54,7 +54,3 @@ using std::ends;
using std::flush;
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -32,12 +32,3 @@
#include "iostream.h"
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -185,7 +185,3 @@ template <class _ForwardIterator>
using std::raw_storage_iterator;
#endif /* _BACKWARD_ITERATOR_H */
// Local Variables:
// mode:C++
// End:

View File

@ -64,7 +64,3 @@
using std::list;
#endif /* _BACKWARD_LIST_H */
// Local Variables:
// mode:C++
// End:

View File

@ -63,7 +63,3 @@
using std::map;
#endif /* _BACKWARD_MAP_H */
// Local Variables:
// mode:C++
// End:

View File

@ -63,7 +63,3 @@
using std::multimap;
#endif /* _BACKWARD_MULTIMAP_H */
// Local Variables:
// mode:C++
// End:

View File

@ -63,7 +63,3 @@
using std::multiset;
#endif /* _BACKWARD_MULTISET_H */
// Local Variables:
// mode:C++
// End:

View File

@ -32,7 +32,3 @@
#include "iostream.h"
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -64,7 +64,3 @@ using std::pair;
using std::make_pair;
#endif /* _BACKWARD_PAIR_H */
// Local Variables:
// mode:C++
// End:

View File

@ -35,7 +35,3 @@ using std::queue;
using std::priority_queue;
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -54,7 +54,3 @@ using __gnu_cxx::crope;
using __gnu_cxx::wrope;
#endif /* _BACKWARD_ROPE_H */
// Local Variables:
// mode:C++
// End:

View File

@ -63,7 +63,3 @@
using std::set;
#endif /* _BACKWARD_SET_H */
// Local Variables:
// mode:C++
// End:

View File

@ -50,7 +50,3 @@
using __gnu_cxx::slist;
#endif /* _BACKWARD_SLIST_H */
// Local Variables:
// mode:C++
// End:

View File

@ -66,7 +66,3 @@
using std::stack;
#endif /* _BACKWARD_STACK_H */
// Local Variables:
// mode:C++
// End:

View File

@ -32,7 +32,3 @@
#include "iostream.h"
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -34,7 +34,3 @@
using std::streambuf;
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -1,6 +1,6 @@
// Backward-compat support -*- C++ -*-
// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -55,8 +55,8 @@
#include <ostream>
#include <string>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Class strstreambuf, a streambuf class that manages an array of char.
// Note that this class is not a template.
class strstreambuf : public basic_streambuf<char, char_traits<char> >
@ -175,5 +175,7 @@ namespace std
private:
strstreambuf _M_buf;
};
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -72,7 +72,3 @@ using std::return_temporary_buffer;
using __gnu_cxx::temporary_buffer;
#endif /* _BACKWARD_TEMPBUF_H */
// Local Variables:
// mode:C++
// End:

View File

@ -50,6 +50,3 @@
using __gnu_cxx::rb_tree;
#endif
// Local Variables:
// mode:C++
// End:

View File

@ -64,7 +64,3 @@
using std::vector;
#endif /* _BACKWARD_VECTOR_H */
// Local Variables:
// mode:C++
// End:

View File

@ -51,8 +51,8 @@
// Define the base class to std::allocator.
#include <bits/c++allocator.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _Tp>
class allocator;
@ -127,6 +127,7 @@ namespace std
// Undefine.
#undef __glibcxx_base_allocator
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -1,6 +1,6 @@
// Low-level functions for atomic operations -*- C++ -*-
// Copyright (C) 2004 Free Software Foundation, Inc.
// Copyright (C) 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -35,10 +35,11 @@
#ifndef _GLIBCXX_ATOMICITY_H
#define _GLIBCXX_ATOMICITY_H 1
#include <bits/c++config.h>
#include <bits/atomic_word.h>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val);
@ -46,7 +47,8 @@ namespace __gnu_cxx
void
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val);
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE
/* Even if the CPU doesn't need a memory barrier, we need to ensure that
the compiler doesn't reorder memory accesses across the barriers. */

View File

@ -1,6 +1,6 @@
// Iostreams base classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2004
// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -43,8 +43,8 @@
#include <bits/locale_classes.h>
#include <bits/locale_facets.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// 27.4.5 Template class basic_ios
/**
* @brief Virtual base class for all stream classes.
@ -458,7 +458,8 @@ namespace std
void
_M_cache_locale(const locale& __loc);
};
} // namespace std
_GLIBCXX_END_NAMESPACE
#ifndef _GLIBCXX_EXPORT_TEMPLATE
#include <bits/basic_ios.tcc>

View File

@ -1,6 +1,7 @@
// basic_ios member functions -*- C++ -*-
// Copyright (C) 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
// Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -37,8 +38,8 @@
#pragma GCC system_header
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _CharT, typename _Traits>
void
basic_ios<_CharT, _Traits>::clear(iostate __state)
@ -195,6 +196,7 @@ namespace std
extern template class basic_ios<wchar_t>;
#endif
#endif
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -45,8 +45,8 @@
#include <bits/atomicity.h>
#include <debug/debug.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
/**
* @class basic_string basic_string.h <string>
* @brief Managing sequences of characters and character-like objects.
@ -2443,6 +2443,7 @@ namespace std
getline(basic_istream<wchar_t>& __in, basic_string<wchar_t>& __str,
wchar_t __delim);
#endif
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif /* _BASIC_STRING_H */

View File

@ -45,8 +45,8 @@
#pragma GCC system_header
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _Type>
inline bool
__is_null_pointer(_Type* __ptr)
@ -993,6 +993,7 @@ namespace std
getline(basic_istream<wchar_t>&, wstring&);
#endif
#endif
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -1,4 +1,6 @@
// Copyright (C) 2004 Free Software Foundation, Inc.
// -*- C++ -*-
// Copyright (C) 2004, 2005 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -48,8 +50,7 @@
#include <bits/stl_iterator_base_types.h> // for traits and tags
#include <utility> // for pair<>
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#define _IsUnused __attribute__ ((__unused__))
@ -923,7 +924,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
// HashedAssociativeContainer
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE
#undef _IsUnused

View File

@ -37,33 +37,98 @@
// Pick up any CPU-specific definitions.
#include <bits/cpu_defines.h>
// Debug mode support. Debug mode basic_string is not allowed to be
// associated with std, because of locale and exception link
// dependence.
namespace __gnu_debug_def { }
namespace __gnu_debug
{
using namespace __gnu_debug_def;
}
// The current version of the C++ library in compressed ISO date format.
#define __GLIBCXX__
// Macros for various namespace association schemes and modes.
#ifdef _GLIBCXX_DEBUG
# define _GLIBCXX_STD __gnu_norm
# define _GLIBCXX_EXTERN_TEMPLATE 0
namespace __gnu_norm
{
using namespace std;
}
# define _GLIBCXX_NAMESPACE_ASSOCIATION_DEBUG 1
#endif
#define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION
// Macros for namespaces.
// _GLIBCXX_BEGIN_NAMESPACE
// _GLIBCXX_END_NAMESPACE
// _GLIBCXX_BEGIN_NESTED_NAMESPACE
// _GLIBCXX_END_NESTED_NAMESPACE
#if _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION
# define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y) namespace X { namespace Y {
# define _GLIBCXX_END_NESTED_NAMESPACE } }
# define _GLIBCXX_BEGIN_NAMESPACE(X) _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, _6)
# define _GLIBCXX_END_NAMESPACE _GLIBCXX_END_NESTED_NAMESPACE
#else
# define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X {
# define _GLIBCXX_END_NAMESPACE }
# if _GLIBCXX_NAMESPACE_ASSOCIATION_DEBUG
# define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y) namespace X { namespace Y {
# define _GLIBCXX_END_NESTED_NAMESPACE } }
# else
# define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y) _GLIBCXX_BEGIN_NAMESPACE(X)
# define _GLIBCXX_END_NESTED_NAMESPACE _GLIBCXX_END_NAMESPACE
# endif
#endif
// Namespace associations for versioning mode.
#if _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION
namespace std
{
using namespace __gnu_debug_def __attribute__ ((strong));
namespace _6 { }
using namespace _6 __attribute__ ((strong));
}
// In addition, other supported namespace configurations.
namespace __gnu_cxx
{
namespace _6 { }
using namespace _6 __attribute__ ((strong));
}
namespace __gnu_ext
{
namespace _6 { }
using namespace _6 __attribute__ ((strong));
}
namespace std
{
namespace tr1
{
namespace _6 { }
using namespace _6 __attribute__ ((strong));
}
}
#endif
// Namespace associations for debug mode.
#if _GLIBCXX_NAMESPACE_ASSOCIATION_DEBUG
namespace std
{
namespace __gnu_norm { }
#if 1
namespace __gnu_debug_def { }
namespace __gnu_debug { using namespace __gnu_debug_def; }
using namespace __gnu_debug_def __attribute__ ((strong));
#else
namespace __gnu_debug { namespace detail { } }
using namespace __gnu_debug __attribute__ ((strong));
#endif
}
# define _GLIBCXX_STD __gnu_norm
# define _GLIBCXX_EXTERN_TEMPLATE 0
# if __NO_INLINE__ && !__GXX_WEAK__
# warning debug mode without inlining may fail due to lack of weak symbols
# endif
#else
#if _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION
# define _GLIBCXX_STD _6
#else
# define _GLIBCXX_STD std
#endif
#endif
// Allow use of "export template." This is currently not a feature
// that g++ supports.
@ -79,6 +144,7 @@ namespace std
# define _GLIBCXX_EXTERN_TEMPLATE 1
#endif
// Certain function definitions that are meant to be overridable from
// user code are decorated with this macro. For some targets, this
// macro causes these definitions to be weak.

View File

@ -46,8 +46,8 @@
#include <bits/stl_algobase.h>// For copy, lexicographical_compare, fill_n
#include <bits/postypes.h> // For streampos
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
/**
* @brief Mapping from character type to associated types.
*
@ -204,10 +204,11 @@ namespace __gnu_cxx
std::fill_n(__s, __n, __a);
return __s;
}
}
namespace std
{
_GLIBCXX_END_NAMESPACE
_GLIBCXX_BEGIN_NAMESPACE(std)
// 21.1
/**
* @brief Basis for explicit traits specializations.
@ -361,6 +362,6 @@ namespace std
};
#endif //_GLIBCXX_USE_WCHAR_T
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -1,6 +1,6 @@
// Support for concurrent programing -*- C++ -*-
// Copyright (C) 2003, 2004
// Copyright (C) 2003, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -72,8 +72,8 @@ __gthread_mutex_lock(&NAME)
#endif
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
typedef __glibcxx_mutex_type mutex_type;
/// @brief Scoped lock idiom.
@ -95,6 +95,7 @@ namespace __gnu_cxx
lock(const lock&);
lock& operator=(const lock&);
};
}
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -84,17 +84,18 @@ namespace __gnu_internal
} // namespace __gnu_internal
// Forward declaration hack, should really include this from somewhere.
namespace __gnu_cxx
{
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
template<typename _Iterator, typename _Container>
class __normal_iterator;
} // namespace __gnu_cxx
_GLIBCXX_END_NAMESPACE
struct __true_type { };
struct __false_type { };
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<bool>
struct __truth_type
{ typedef __false_type __type; };
@ -384,6 +385,6 @@ namespace std
};
};
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif //_CPP_TYPE_TRAITS_H

View File

@ -61,8 +61,8 @@
#ifndef _DEQUE_TCC
#define _DEQUE_TCC 1
namespace _GLIBCXX_STD
{
_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
template <typename _Tp, typename _Alloc>
deque<_Tp, _Alloc>&
deque<_Tp, _Alloc>::
@ -744,6 +744,7 @@ namespace _GLIBCXX_STD
this->_M_impl._M_start._M_set_node(__new_nstart);
this->_M_impl._M_finish._M_set_node(__new_nstart + __old_num_nodes - 1);
}
} // namespace std
_GLIBCXX_END_NESTED_NAMESPACE
#endif

View File

@ -42,8 +42,8 @@
#pragma GCC system_header
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _CharT, typename _Traits>
void
basic_filebuf<_CharT, _Traits>::
@ -899,6 +899,7 @@ namespace std
extern template class basic_fstream<wchar_t>;
#endif
#endif
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -38,10 +38,11 @@
#ifndef _FUNCTEXCEPT_H
#define _FUNCTEXCEPT_H 1
#include <bits/c++config.h>
#include <exception_defines.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// Helper for exception objects in <except>
void
__throw_bad_exception(void) __attribute__((__noreturn__));
@ -88,6 +89,7 @@ namespace std
// Helpers for exception objects in basic_ios
void
__throw_ios_failure(const char*) __attribute__((__noreturn__));
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

View File

@ -1,6 +1,6 @@
// The template and inlines for the -*- C++ -*- gslice class.
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -40,8 +40,8 @@
#pragma GCC system_header
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
/**
* @brief Class defining multi-dimensional subset of an array.
*
@ -165,10 +165,6 @@ namespace std
return *this;
}
} // std::
_GLIBCXX_END_NAMESPACE
#endif /* _GSLICE_H */
// Local Variables:
// mode:c++
// End:

View File

@ -1,6 +1,6 @@
// The template and inlines for the -*- C++ -*- gslice_array class.
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -40,8 +40,8 @@
#pragma GCC system_header
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
/**
* @brief Reference to multi-dimensional subset of an array.
*
@ -209,10 +209,6 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
#undef _DEFINE_VALARRAY_OPERATOR
} // std::
_GLIBCXX_END_NAMESPACE
#endif /* _GSLICE_ARRAY_H */
// Local Variables:
// mode:c++
// End:

View File

@ -1,6 +1,6 @@
// The template and inlines for the -*- C++ -*- indirect_array class.
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -40,8 +40,8 @@
#pragma GCC system_header
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
/**
* @brief Reference to arbitrary subset of an array.
*
@ -203,10 +203,6 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
#undef _DEFINE_VALARRAY_OPERATOR
} // std::
_GLIBCXX_END_NAMESPACE
#endif /* _INDIRECT_ARRAY_H */
// Local Variables:
// mode:c++
// End:

View File

@ -1,6 +1,6 @@
// Iostreams base classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@ -46,8 +46,8 @@
#include <bits/localefwd.h>
#include <bits/locale_classes.h>
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
// The following definitions of bitmask types are enums, not ints,
// as permitted (but not required) in the standard, in order to provide
// better type safety in iostream calls. A side effect is that
@ -961,7 +961,8 @@ namespace std
__base.setf(ios_base::scientific, ios_base::floatfield);
return __base;
}
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif /* _IOS_BASE_H */

View File

@ -45,8 +45,8 @@
#include <locale>
#include <ostream> // For flush()
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _CharT, typename _Traits>
basic_istream<_CharT, _Traits>::sentry::
sentry(basic_istream<_CharT, _Traits>& __in, bool __noskip) : _M_ok(false)
@ -1281,6 +1281,7 @@ namespace std
extern template class basic_iostream<wchar_t>;
#endif
#endif
} // namespace std
_GLIBCXX_END_NAMESPACE
#endif

Some files were not shown because too many files have changed in this diff Show More