]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
c++config: Add in revised namespace associations.
authorBenjamin Kosnik <bkoz@redhat.com>
Mon, 19 Dec 2005 00:56:05 +0000 (00:56 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Mon, 19 Dec 2005 00:56:05 +0000 (00:56 +0000)
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

312 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/Makefile.in
libstdc++-v3/acinclude.m4
libstdc++-v3/config.h.in
libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver [new file with mode: 0644]
libstdc++-v3/config/abi/pre/gnu.ver
libstdc++-v3/config/abi/pre/none.ver
libstdc++-v3/config/cpu/alpha/atomicity.h
libstdc++-v3/config/cpu/cris/atomicity.h
libstdc++-v3/config/cpu/generic/atomicity.h
libstdc++-v3/config/cpu/hppa/atomicity.h
libstdc++-v3/config/cpu/i386/atomicity.h
libstdc++-v3/config/cpu/i486/atomicity.h
libstdc++-v3/config/cpu/ia64/atomicity.h
libstdc++-v3/config/cpu/m68k/atomicity.h
libstdc++-v3/config/cpu/mips/atomicity.h
libstdc++-v3/config/cpu/powerpc/atomicity.h
libstdc++-v3/config/cpu/s390/atomicity.h
libstdc++-v3/config/cpu/sh/atomicity.h
libstdc++-v3/config/cpu/sparc/atomicity.h
libstdc++-v3/config/io/basic_file_stdio.cc
libstdc++-v3/config/io/basic_file_stdio.h
libstdc++-v3/config/io/c_io_stdio.h
libstdc++-v3/config/locale/generic/c_locale.cc
libstdc++-v3/config/locale/generic/c_locale.h
libstdc++-v3/config/locale/generic/codecvt_members.cc
libstdc++-v3/config/locale/generic/collate_members.cc
libstdc++-v3/config/locale/generic/ctype_members.cc
libstdc++-v3/config/locale/generic/messages_members.cc
libstdc++-v3/config/locale/generic/monetary_members.cc
libstdc++-v3/config/locale/generic/numeric_members.cc
libstdc++-v3/config/locale/generic/time_members.cc
libstdc++-v3/config/locale/gnu/c_locale.cc
libstdc++-v3/config/locale/gnu/c_locale.h
libstdc++-v3/config/locale/gnu/codecvt_members.cc
libstdc++-v3/config/locale/gnu/collate_members.cc
libstdc++-v3/config/locale/gnu/ctype_members.cc
libstdc++-v3/config/locale/gnu/messages_members.cc
libstdc++-v3/config/locale/gnu/monetary_members.cc
libstdc++-v3/config/locale/gnu/numeric_members.cc
libstdc++-v3/config/locale/gnu/time_members.cc
libstdc++-v3/config/locale/ieee_1003.1-2001/c_locale.h
libstdc++-v3/config/os/aix/atomicity.h
libstdc++-v3/config/os/irix/atomicity.h
libstdc++-v3/configure
libstdc++-v3/docs/html/configopts.html
libstdc++-v3/docs/html/debug.html
libstdc++-v3/docs/html/debug_mode.html
libstdc++-v3/include/Makefile.am
libstdc++-v3/include/Makefile.in
libstdc++-v3/include/backward/algo.h
libstdc++-v3/include/backward/algobase.h
libstdc++-v3/include/backward/bvector.h
libstdc++-v3/include/backward/complex.h
libstdc++-v3/include/backward/deque.h
libstdc++-v3/include/backward/fstream.h
libstdc++-v3/include/backward/function.h
libstdc++-v3/include/backward/hash_map.h
libstdc++-v3/include/backward/hashtable.h
libstdc++-v3/include/backward/heap.h
libstdc++-v3/include/backward/iomanip.h
libstdc++-v3/include/backward/iostream.h
libstdc++-v3/include/backward/istream.h
libstdc++-v3/include/backward/iterator.h
libstdc++-v3/include/backward/list.h
libstdc++-v3/include/backward/map.h
libstdc++-v3/include/backward/multimap.h
libstdc++-v3/include/backward/multiset.h
libstdc++-v3/include/backward/ostream.h
libstdc++-v3/include/backward/pair.h
libstdc++-v3/include/backward/queue.h
libstdc++-v3/include/backward/rope.h
libstdc++-v3/include/backward/set.h
libstdc++-v3/include/backward/slist.h
libstdc++-v3/include/backward/stack.h
libstdc++-v3/include/backward/stream.h
libstdc++-v3/include/backward/streambuf.h
libstdc++-v3/include/backward/strstream
libstdc++-v3/include/backward/tempbuf.h
libstdc++-v3/include/backward/tree.h
libstdc++-v3/include/backward/vector.h
libstdc++-v3/include/bits/allocator.h
libstdc++-v3/include/bits/atomicity.h
libstdc++-v3/include/bits/basic_ios.h
libstdc++-v3/include/bits/basic_ios.tcc
libstdc++-v3/include/bits/basic_string.h
libstdc++-v3/include/bits/basic_string.tcc
libstdc++-v3/include/bits/boost_concept_check.h
libstdc++-v3/include/bits/c++config
libstdc++-v3/include/bits/char_traits.h
libstdc++-v3/include/bits/concurrence.h
libstdc++-v3/include/bits/cpp_type_traits.h
libstdc++-v3/include/bits/deque.tcc
libstdc++-v3/include/bits/fstream.tcc
libstdc++-v3/include/bits/functexcept.h
libstdc++-v3/include/bits/gslice.h
libstdc++-v3/include/bits/gslice_array.h
libstdc++-v3/include/bits/indirect_array.h
libstdc++-v3/include/bits/ios_base.h
libstdc++-v3/include/bits/istream.tcc
libstdc++-v3/include/bits/list.tcc
libstdc++-v3/include/bits/locale_classes.h
libstdc++-v3/include/bits/locale_facets.h
libstdc++-v3/include/bits/locale_facets.tcc
libstdc++-v3/include/bits/localefwd.h
libstdc++-v3/include/bits/mask_array.h
libstdc++-v3/include/bits/ostream.tcc
libstdc++-v3/include/bits/postypes.h
libstdc++-v3/include/bits/slice_array.h
libstdc++-v3/include/bits/sstream.tcc
libstdc++-v3/include/bits/stl_algo.h
libstdc++-v3/include/bits/stl_algobase.h
libstdc++-v3/include/bits/stl_bvector.h
libstdc++-v3/include/bits/stl_construct.h
libstdc++-v3/include/bits/stl_deque.h
libstdc++-v3/include/bits/stl_function.h
libstdc++-v3/include/bits/stl_heap.h
libstdc++-v3/include/bits/stl_iterator.h
libstdc++-v3/include/bits/stl_iterator_base_funcs.h
libstdc++-v3/include/bits/stl_iterator_base_types.h
libstdc++-v3/include/bits/stl_list.h
libstdc++-v3/include/bits/stl_map.h
libstdc++-v3/include/bits/stl_multimap.h
libstdc++-v3/include/bits/stl_multiset.h
libstdc++-v3/include/bits/stl_numeric.h
libstdc++-v3/include/bits/stl_pair.h
libstdc++-v3/include/bits/stl_queue.h
libstdc++-v3/include/bits/stl_raw_storage_iter.h
libstdc++-v3/include/bits/stl_relops.h
libstdc++-v3/include/bits/stl_set.h
libstdc++-v3/include/bits/stl_stack.h
libstdc++-v3/include/bits/stl_tempbuf.h
libstdc++-v3/include/bits/stl_tree.h
libstdc++-v3/include/bits/stl_uninitialized.h
libstdc++-v3/include/bits/stl_vector.h
libstdc++-v3/include/bits/stream_iterator.h
libstdc++-v3/include/bits/streambuf.tcc
libstdc++-v3/include/bits/streambuf_iterator.h
libstdc++-v3/include/bits/stringfwd.h
libstdc++-v3/include/bits/valarray_after.h
libstdc++-v3/include/bits/valarray_array.h
libstdc++-v3/include/bits/valarray_array.tcc
libstdc++-v3/include/bits/valarray_before.h
libstdc++-v3/include/bits/vector.tcc
libstdc++-v3/include/c_std/std_cctype.h
libstdc++-v3/include/c_std/std_clocale.h
libstdc++-v3/include/c_std/std_cmath.h
libstdc++-v3/include/c_std/std_csetjmp.h
libstdc++-v3/include/c_std/std_csignal.h
libstdc++-v3/include/c_std/std_cstdarg.h
libstdc++-v3/include/c_std/std_cstddef.h
libstdc++-v3/include/c_std/std_cstdio.h
libstdc++-v3/include/c_std/std_cstdlib.h
libstdc++-v3/include/c_std/std_cstring.h
libstdc++-v3/include/c_std/std_ctime.h
libstdc++-v3/include/c_std/std_cwchar.h
libstdc++-v3/include/c_std/std_cwctype.h
libstdc++-v3/include/debug/bitset
libstdc++-v3/include/debug/debug.h
libstdc++-v3/include/debug/deque
libstdc++-v3/include/debug/formatter.h
libstdc++-v3/include/debug/functions.h
libstdc++-v3/include/debug/hash_map.h
libstdc++-v3/include/debug/hash_multimap.h
libstdc++-v3/include/debug/hash_multiset.h
libstdc++-v3/include/debug/hash_set.h
libstdc++-v3/include/debug/list
libstdc++-v3/include/debug/macros.h
libstdc++-v3/include/debug/map.h
libstdc++-v3/include/debug/multimap.h
libstdc++-v3/include/debug/multiset.h
libstdc++-v3/include/debug/safe_base.h
libstdc++-v3/include/debug/safe_iterator.h
libstdc++-v3/include/debug/safe_iterator.tcc
libstdc++-v3/include/debug/safe_sequence.h
libstdc++-v3/include/debug/set.h
libstdc++-v3/include/debug/string
libstdc++-v3/include/debug/vector
libstdc++-v3/include/ext/algorithm
libstdc++-v3/include/ext/array_allocator.h
libstdc++-v3/include/ext/bitmap_allocator.h
libstdc++-v3/include/ext/codecvt_specializations.h
libstdc++-v3/include/ext/debug_allocator.h
libstdc++-v3/include/ext/functional
libstdc++-v3/include/ext/hash_fun.h
libstdc++-v3/include/ext/hash_map
libstdc++-v3/include/ext/hash_set
libstdc++-v3/include/ext/hashtable.h
libstdc++-v3/include/ext/iterator
libstdc++-v3/include/ext/malloc_allocator.h
libstdc++-v3/include/ext/memory
libstdc++-v3/include/ext/mt_allocator.h
libstdc++-v3/include/ext/new_allocator.h
libstdc++-v3/include/ext/numeric
libstdc++-v3/include/ext/pod_char_traits.h
libstdc++-v3/include/ext/pool_allocator.h
libstdc++-v3/include/ext/rb_tree
libstdc++-v3/include/ext/rc_string_base.h
libstdc++-v3/include/ext/rope
libstdc++-v3/include/ext/ropeimpl.h
libstdc++-v3/include/ext/slist
libstdc++-v3/include/ext/sso_string_base.h
libstdc++-v3/include/ext/stdio_filebuf.h
libstdc++-v3/include/ext/stdio_sync_filebuf.h
libstdc++-v3/include/ext/typelist.h
libstdc++-v3/include/ext/vstring.h
libstdc++-v3/include/ext/vstring.tcc
libstdc++-v3/include/ext/vstring_fwd.h
libstdc++-v3/include/ext/vstring_util.h
libstdc++-v3/include/std/std_bitset.h
libstdc++-v3/include/std/std_complex.h
libstdc++-v3/include/std/std_fstream.h
libstdc++-v3/include/std/std_iomanip.h
libstdc++-v3/include/std/std_iosfwd.h
libstdc++-v3/include/std/std_iostream.h
libstdc++-v3/include/std/std_istream.h
libstdc++-v3/include/std/std_limits.h
libstdc++-v3/include/std/std_memory.h
libstdc++-v3/include/std/std_ostream.h
libstdc++-v3/include/std/std_sstream.h
libstdc++-v3/include/std/std_stdexcept.h
libstdc++-v3/include/std/std_streambuf.h
libstdc++-v3/include/std/std_valarray.h
libstdc++-v3/include/tr1/array
libstdc++-v3/include/tr1/boost_shared_ptr.h
libstdc++-v3/include/tr1/functional
libstdc++-v3/include/tr1/hashtable
libstdc++-v3/include/tr1/ref_fwd.h
libstdc++-v3/include/tr1/tuple
libstdc++-v3/include/tr1/type_traits
libstdc++-v3/include/tr1/type_traits_fwd.h
libstdc++-v3/include/tr1/unordered_map
libstdc++-v3/include/tr1/unordered_set
libstdc++-v3/include/tr1/utility
libstdc++-v3/libmath/Makefile.in
libstdc++-v3/libsupc++/Makefile.in
libstdc++-v3/libsupc++/eh_alloc.cc
libstdc++-v3/libsupc++/exception
libstdc++-v3/libsupc++/vterminate.cc
libstdc++-v3/po/Makefile.in
libstdc++-v3/src/Makefile.am
libstdc++-v3/src/Makefile.in
libstdc++-v3/src/allocator-inst.cc
libstdc++-v3/src/bitmap_allocator.cc
libstdc++-v3/src/codecvt.cc
libstdc++-v3/src/compatibility.cc
libstdc++-v3/src/complex_io.cc
libstdc++-v3/src/concept-inst.cc
libstdc++-v3/src/ctype.cc
libstdc++-v3/src/debug.cc
libstdc++-v3/src/ext-inst.cc
libstdc++-v3/src/fstream-inst.cc
libstdc++-v3/src/functexcept.cc
libstdc++-v3/src/globals_io.cc
libstdc++-v3/src/ios-inst.cc
libstdc++-v3/src/ios.cc
libstdc++-v3/src/ios_failure.cc
libstdc++-v3/src/ios_init.cc
libstdc++-v3/src/ios_locale.cc
libstdc++-v3/src/iostream-inst.cc
libstdc++-v3/src/istream-inst.cc
libstdc++-v3/src/istream.cc
libstdc++-v3/src/limits.cc
libstdc++-v3/src/list.cc
libstdc++-v3/src/locale-inst.cc
libstdc++-v3/src/locale-misc-inst.cc
libstdc++-v3/src/locale.cc
libstdc++-v3/src/locale_facets.cc
libstdc++-v3/src/locale_init.cc
libstdc++-v3/src/localename.cc
libstdc++-v3/src/misc-inst.cc
libstdc++-v3/src/mt_allocator.cc
libstdc++-v3/src/ostream-inst.cc
libstdc++-v3/src/pool_allocator.cc
libstdc++-v3/src/sstream-inst.cc
libstdc++-v3/src/stdexcept.cc
libstdc++-v3/src/streambuf-inst.cc
libstdc++-v3/src/streambuf.cc
libstdc++-v3/src/string-inst.cc
libstdc++-v3/src/strstream.cc
libstdc++-v3/src/tree.cc
libstdc++-v3/src/valarray-inst.cc
libstdc++-v3/testsuite/20_util/memory/auto_ptr/assign_neg.cc
libstdc++-v3/testsuite/21_strings/basic_string/2.cc
libstdc++-v3/testsuite/23_containers/bitset/cons/16020.cc
libstdc++-v3/testsuite/23_containers/bitset/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/bitset/operations/13838.cc
libstdc++-v3/testsuite/23_containers/deque/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/deque/invalidation/2.cc
libstdc++-v3/testsuite/23_containers/deque/invalidation/3.cc
libstdc++-v3/testsuite/23_containers/deque/invalidation/4.cc
libstdc++-v3/testsuite/23_containers/list/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/list/invalidation/2.cc
libstdc++-v3/testsuite/23_containers/list/invalidation/3.cc
libstdc++-v3/testsuite/23_containers/list/invalidation/4.cc
libstdc++-v3/testsuite/23_containers/map/insert/16813.cc
libstdc++-v3/testsuite/23_containers/map/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/map/invalidation/2.cc
libstdc++-v3/testsuite/23_containers/multimap/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/multimap/invalidation/2.cc
libstdc++-v3/testsuite/23_containers/multiset/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/multiset/invalidation/2.cc
libstdc++-v3/testsuite/23_containers/set/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/set/invalidation/2.cc
libstdc++-v3/testsuite/23_containers/vector/invalidation/1.cc
libstdc++-v3/testsuite/23_containers/vector/invalidation/2.cc
libstdc++-v3/testsuite/23_containers/vector/invalidation/3.cc
libstdc++-v3/testsuite/23_containers/vector/invalidation/4.cc
libstdc++-v3/testsuite/Makefile.in
libstdc++-v3/testsuite/ext/hash_map/1.cc
libstdc++-v3/testsuite/ext/hash_map/14648.cc
libstdc++-v3/testsuite/testsuite_character.h

index 0f9c90f70bc5d55ad5a94ca13e3134cf750ef32d..90bfc9f195ab5fdc5f6102c29895e1525ac1c7a6 100644 (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
index f7d0f70740ee353c5c10f21285b575d7f3314cf4..44686de2e474d6a05f3ad774626af6d524f791e5 100644 (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@
index d32c799644806765e776b5816c08c55420483256..716dab5579061c878fb638be92aaba11a1dc4251 100644 (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)
 
index 124ce6e2c8a3899b87c425c302e70facaa535910..0077a5983cb1ec4b80b1208b78789ee9f0bb2b25 100644 (file)
 /* 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
diff --git a/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver b/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
new file mode 100644 (file)
index 0000000..3b9b475
--- /dev/null
@@ -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:
+    *;
+};
index fa13a614e2e1bec7751639b69e33ac7e7efb0b5e..c76bdf94850e744347897adae3da4b9811e20099 100644 (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.
index 58e14135388e34b4300e53f5320c935de986553a..39cb10d4dbff36a2c4834d911a76dc899ae3547a 100644 (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).
index f45b92b91f9fa20d5a76320555563900d46f2cff..d288483621af9727a3d187e1eb0a6def873c2e1f 100644 (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
 
index f0d8f025df5080b956758bd2c4efcf810da0a4bf..0384b42a3d010735ec36c2b94110db5058aa8e0f 100644 (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
index ddeea4afb16c43fbddac9162a98f35390ac4d849..5ecb465e862740fe2cdd49e0f39ea00219724d0d 100644 (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
index 721dd03f68ea8bbab4d2ea427ee4c16d8497ee4e..1b1c883188fe6ba51228ecff9a71263880fdcd86 100644 (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
index b670509f2cb03b8103de5df29505dcd50140a191..1b31c2d73aed1965216268cd294b33478a869368 100644 (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
index 977070d32d9aa85f59ef6a9dc65a9e2923cfae4f..c2cf509ab551313476f6d558b62234938cc6ade8 100644 (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
 
index 0fd9b3b5a6ac1642070e299b99f21f89a49c72eb..baabeddadedd344d4ebe83e970d07f7a6e547f10 100644 (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
index 880a3711478efbd83241b79990cff450ffa33a3c..370d77f925e043dfc66395381008308958beae28 100644 (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
index 561cd35f41b2c4805d594c57168b2c56bb2a128a..aae70dfccf3de89f210664222036a756bc5d86fd 100644 (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
index 49ad718882212fbdac0bb730351c8201aac48012..dbd859208a36c575cd92efcc0754e7cee66e942a 100644 (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
index 1332012d3d46a3d8408f57ec1c343a9d2f413f64..631795eb23af7ba55f71d1118f7a14c6d597bb68 100644 (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
index 8760c8b39b300e3330ecc3c7abe396a0e6850925..7a15beb69d5e959934c5f4c41937b0aab0525347 100644 (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__ */
 
index e49db77eb309879619cb429d0f727353ff776f35..ad43760dffadfec18c41c8901a6ee5de644312f7 100644 (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
index 071d0b3171faa75b7deb543787fe642651772917..3f4914b29cd091f4463ac4298137b336ab92589d 100644 (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
+
index 7264f0386ede22325a93887c76e40a5c88ae746c..75468e0937153eeaa63268b0596143c8b1b19fe6 100644 (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 
index b756ebda2e3674e97ac9c8a31a75542be90b5197..a1ed94a9c54308c353ad0b38f45c71843ed4c6d1 100644 (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
index d6f67eeae6f2f4a0c9ce309e224a45ec6c4b369f..68c3e7670c8d03d36fd4d58093a60735a546394f 100644 (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
index cf636ae4f3f8baf57276f96bc210419b67627d5d..d6e2f65e06ec76d296209f1790208954a931ff4f 100644 (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
index 3cd35ace879ae4eeaa12b98a30933554b2fdef60..555c3b3cf3698df2375aa41845098511dfc16938 100644 (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
index d94599ec29526c49b3dead5b9fe4966368d38b22..f614037a23882ca7945a34de11dd4319b3abacd9 100644 (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
index 246861707e3d7744410d580a5b97f5a50aab0194..3af4440da8f69f4403c4abef224b1f5690382003 100644 (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
index 96e55c192229e74c9f4213f34a6762484b85cecb..2980ed92fc93f6e7a944362dd74424befa5300f6 100644 (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
index 3a98458679663094186184590dd885ce77e7ddb6..3abcf338c1009706eb6112324fedab2ab2819b34 100644 (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
index cc2fc788bc00d35d90b455b8396fcc319cdbdbbb..ce4f6487e77d0e724ede9ba0526713b8937311e6 100644 (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
+
index f13ea19e4c6bc64c3de3e78ad6fdb75eaa1a7d0a..dbb12ae6848bcfbd2a6e4606848e34321256fed2 100644 (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
index 7a45a6e9fdabeb97e684f1db78378b65fcd94147..4025fb18b87bbb9bfaa80013ec326d168e4c810b 100644 (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
index d28caf8a4c99f968e7b858481d5c9ea5fbf27fd9..55e160e1b9beac8b3f3a8c96e417263e3dd682a5 100644 (file)
 #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
index ae2bc77f3b8d817d805e6e69b3eb88111e84d6dd..bc454228d672cff2942590e155a21758b1d8d2a2 100644 (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
index a0a08772c7cad10814623897651cd1f830683d38..6f6b758128218a4bf3be817c9d2085525a0a4750 100644 (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
index 3082b41f80d2050a27c159785aa2914ea973d39c..cb2887d9b98c92839ee5d04343926040d9fec2c4 100644 (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
index c3fc4b5208c789e78b82cb6134f2d75e55b24db3..f206e44a636b34eb857fb33e845a6c93e82e1a30 100644 (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
index ba7e242f93278e0df85a76740c2355b1faee0e93..b3cd05d8305be65411d1be75654f867f70b3e5a7 100644 (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
index 8e580f50a34f8b7e5901e3c5f1f643a7fb258977..7a0400b46cae6bef5c9513ad29f50203c96afda4 100644 (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
index bd91dc4dcf2d9038647d58ace02733e68ea7a893..10faa8fe47022e1621e4d2452589b2fc270f691a 100644 (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
index 1be2d0ab04b0de6ab084db9c840d9dc57b409954..af5dc31729e123f55fa5dba3778818670fab41d3 100644 (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
+
index 123766cc8a5446fe299a5fd28aeaed43136fcad6..b44e630486b1774f93fa52dcf78491befeebd401 100644 (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
index 24b17c9948429dcb44063d7c482055098c1b5885..9261d26fdbee988e3be096c98d5c074be3437ba1 100644 (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
index 246e520da1b38c2b85c0851b232693313844a1a1..b5fbb5bbc7684f213d1f680352d36d2e5de773da 100755 (executable)
@@ -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;}
 
 
 
 
+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
index b396a2d18220a948eea75e4ba964a054ea136ebe..a027c658c37cc71a337f63c5c023adcdd785064f 100644 (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>
index 0242d4363e35c3c6b6737f5bd0aeb29d3acaa669..6bea7f41e7a3e80e4c165c9eed0ef566173374c6 100644 (file)
   <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>
   <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>
 
 
index b62ad8f5572672ba7195637be1107dce839ac6b7..e531fd3fa26b9609c37d37a968da4b6746c04a19 100644 (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>
index 0120543646bf3f0e184bb63ae6466a578f442e4a..e71b76a0ec1f7dc4635a3c370e9cbd6b492c8f34 100644 (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_]
index 590a1076934d3762f75f6474d7b8744ec734152f..6c97c63c2499d35e9f758ec2c03b630ae2c11f6b 100644 (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' \
index aaa8cdd3bdbb7e48b79d956fa35c27d499506c84..247460105a4e7f217205c8f06d5a1aa08374e7b7 100644 (file)
@@ -143,7 +143,3 @@ using __gnu_cxx::power;
 using __gnu_cxx::iota;
 
 #endif /* _BACKWARD_ALGO_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 19bdcadf6728b31c1a5145b50636891d6e40cafd..289e9886d1c2ecf513cb6a423fe123a97e6aee77 100644 (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:
index 10bafc8436c6bf42d6c39733772f9b19e4d01522..9a2c44da144174b18b8eee8005ca5d5d4d4337fc 100644 (file)
@@ -62,7 +62,3 @@
 typedef std::vector<bool, std::allocator<bool> > bit_vector;
 
 #endif /* _BACKWARD_BVECTOR_H */
-
-// Local Variables:
-// mode:C++
-// End:
index b03072e475c09f2bf9750ee3bcc08a64c0968c5d..7972cf7303f2c5ccca788ed6be296d5b273cd5e5 100644 (file)
@@ -37,7 +37,3 @@ typedef complex<double>               double_complex;
 typedef complex<long double>   long_double_complex;
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index 54b65ecce606f05b588666bd61a6203147dcbe24..a4a6b41811766f9c648151841b7bad91a17edcec 100644 (file)
@@ -64,7 +64,3 @@
 using std::deque;
 
 #endif /* _BACKWARD_DEQUE_H */
-
-// Local Variables:
-// mode:C++
-// End:
index c721ca5f312653411283a21cd15b1c0cf331484a..92835f9b84485dd91a2195deb2b82b5b26a1393a 100644 (file)
@@ -46,7 +46,3 @@ using std::wstreampos;
 #endif
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index e7f29a636a8b359b4232de1d11fdd3c594bc2813..b5be371d8cd97f0c1fd7c468e7e52d43bf3730d0 100644 (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:
index cbeed9947cbb48db7234d95351ecc23b80af13fc..aa1452200a3e60fee8545ef9b723cfd8c9e5282c 100644 (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:
index 72fd281ba6e4a3d574bd74d718051e820ee2d45a..7b7511b832cb203bc8caa54738a98758fb02718c 100644 (file)
@@ -70,7 +70,3 @@ using __gnu_cxx::hash;
 using __gnu_cxx::hashtable;
 
 #endif /* _BACKWARD_HASHTABLE_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 6e02c355b3cd46afe3145f1ecab2002bebd15419..ef2e68475aa16f887825a7243a159d3dad3bb508 100644 (file)
@@ -65,7 +65,3 @@ using std::make_heap;
 using std::sort_heap;
 
 #endif /* _BACKWARD_HEAP_H */
-
-// Local Variables:
-// mode:C++
-// End:
index aeb7b1f6c340d83c2b7153e5a609acc5fa83c6a5..a4099a7bec429766910c355c4a35715c52e1b96e 100644 (file)
@@ -64,7 +64,3 @@ using std::setprecision;
 using std::setw;
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index e22d11311514df63100099c0056cccdf97d5d7d4..ed275ffa98dd29cac4a2ee11162ab907612225f9 100644 (file)
@@ -54,7 +54,3 @@ using std::ends;
 using std::flush;
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index 7db8f41a79b1ac64344b03925bdb4a58c2d0db49..b1c55d189913a3464e71e036e7ad8b38dbb36a5b 100644 (file)
 #include "iostream.h"
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
-
-
-
-
-
index 815bd151066113109ac1a7211c79c450edcdbb1a..89496fb8fff4ea9efb44a41e7993374db518eb35 100644 (file)
@@ -185,7 +185,3 @@ template <class _ForwardIterator>
 using std::raw_storage_iterator;
 
 #endif /* _BACKWARD_ITERATOR_H */
-
-// Local Variables:
-// mode:C++
-// End:
index f8f85e1211d1f188d37a4863fffb1bae17658c87..d70a6e4ae7d4f1d6f4d4e67a872be11dfdbc63ac 100644 (file)
@@ -64,7 +64,3 @@
 using std::list;
 
 #endif /* _BACKWARD_LIST_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 0b5051dce53fd8400a6d06ef0f16ddce76b8c603..2ff3cec667e7da822aefbdb389884844abd69be7 100644 (file)
@@ -63,7 +63,3 @@
 using std::map;
 
 #endif /* _BACKWARD_MAP_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 534d1c9e5e0e6c8142ef554da56fe67a7ff17590..515d2995049bb0ee90aa56a0cc3efc9d127e56ef 100644 (file)
@@ -63,7 +63,3 @@
 using std::multimap;
 
 #endif /* _BACKWARD_MULTIMAP_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 47af8153b612519064b4bb2a10b6b9c08cedd8fe..1f857ae6eb067f1fb8fde914f5fd70132154fe6b 100644 (file)
@@ -63,7 +63,3 @@
 using std::multiset;
 
 #endif /* _BACKWARD_MULTISET_H */
-
-// Local Variables:
-// mode:C++
-// End:
index f30ebe4dd89c7601a80ef6516222b232641c7e90..07ef9b0f2b37f8a742249e471866933815785414 100644 (file)
@@ -32,7 +32,3 @@
 #include "iostream.h"
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index fa89efe055536cdd852e724692fd058cee2c3a12..4985bcbfdd2af82f8993c2c853ecbd5bbe913296 100644 (file)
@@ -64,7 +64,3 @@ using std::pair;
 using std::make_pair;
 
 #endif /* _BACKWARD_PAIR_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 1da475c03c1ed4f79b7a380916799bfbd93e0795..da7505c28d1a9c33f33527967a95a438ac10ba0d 100644 (file)
@@ -35,7 +35,3 @@ using std::queue;
 using std::priority_queue;
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index 6745c487c3a2f922429ca8cf399b7815045dd90b..71e8815326786395c9099922c78e8864a75d7937 100644 (file)
@@ -54,7 +54,3 @@ using __gnu_cxx::crope;
 using __gnu_cxx::wrope;
 
 #endif /* _BACKWARD_ROPE_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 004349425e5f95dfdd840ebebd18661df2fe3e38..3c6a390cf49d68f1c96a0e87ca81f8c2175e3200 100644 (file)
@@ -63,7 +63,3 @@
 using std::set;
 
 #endif /* _BACKWARD_SET_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 3764a77b8ad8987f2f53088318ac54c6a33ed2c9..9b9a43d3f0d7050d5996e1f135649fe75b53352c 100644 (file)
@@ -50,7 +50,3 @@
 using __gnu_cxx::slist;
 
 #endif /* _BACKWARD_SLIST_H */
-
-// Local Variables:
-// mode:C++
-// End:
index a4c586aecf8ac6d48373f14ae7b1e13322f13cff..07df41769e00f299570d54a58d481f08299caafe 100644 (file)
@@ -66,7 +66,3 @@
 using std::stack;
 
 #endif /* _BACKWARD_STACK_H */
-
-// Local Variables:
-// mode:C++
-// End:
index ab27241fb2e511a90ea553c53ccc9c01a6e2466c..c137601e67690518ed79e08109d271b36d6f9629 100644 (file)
@@ -32,7 +32,3 @@
 #include "iostream.h"
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index 86730ecbe12609c40d816bfb7cc09b56a5c65d36..bac24495a0567e10c1207e4775a67164c26eabba 100644 (file)
@@ -34,7 +34,3 @@
 using std::streambuf;
 
 #endif
-
-// Local Variables:
-// mode:C++
-// End:
index a8d94f400241484da8baf0506fb85a8bae7ec28c..d0d5a13863f79d4077a97a419969d98b6823e602 100644 (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
index c42db0365aef77ab268e8a4b038dd0c591bfe992..af6e57daa3b032d1a47b7b4f43596275313201eb 100644 (file)
@@ -72,7 +72,3 @@ using std::return_temporary_buffer;
 using __gnu_cxx::temporary_buffer;
 
 #endif /* _BACKWARD_TEMPBUF_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 25e49561e185a2d24b88680b84b41edcdd0590ff..88a2f1d7c824f28911bc91d22995361318456bb6 100644 (file)
@@ -50,6 +50,3 @@
 using __gnu_cxx::rb_tree;
 
 #endif
-// Local Variables:
-// mode:C++
-// End:
index f4ab069d228bf28abcf4fc2e62de4b2f65fcc94b..8cd8dd0f360818191d46048491aa4f209956ae29 100644 (file)
@@ -64,7 +64,3 @@
 using std::vector;
 
 #endif /* _BACKWARD_VECTOR_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 5bba2a95e73ec5d37cfe04048def088ff0e14b96..18bfd5f60eb2f4b1cf415cba408b7438ee792468 100644 (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
index aa73736ab623313fcb3a944ab39f7da78b632de5..f436e0bdc0035106bb22d856dc2a07e3bb9d8cc2 100644 (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
 #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.  */
index 90886712bc5f922e000b75f48e031252afee79be..d078431b9fd0994d9931638ac9ce05333d4a5948 100644 (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>
index b536a0daeba00a36273662e53f7ba0a0043fe08c..e8434a5bdf085122834c434423c5b7690397128f 100644 (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
index 0ff2e54e8d3a17a3dffec04dfc6c6becd86d3cd1..acd2f144e818a61786d9bd7e1af8b4cdb595948b 100644 (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 */
index f8f9f3ef2f48fbb96d3651b7f8457d95015cc7f7..6b21d8307428db06f2d1d8620794d5e092036a73 100644 (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
index 24160ed4e9ea708040f70c2d7b4b9b11ddac1858..38380b7ee23a45cc80a2ae242c3bc671912614f7 100644 (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
 
index eb8dc798f0b4727eb273215b8d00372252ab5135..31a60a7e7b20a1081b9c5a3ea616c5b39f5d2ef5 100644 (file)
 // 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 { }
+// The current version of the C++ library in compressed ISO date format.
+#define __GLIBCXX__ 
 
-namespace __gnu_debug 
+// Macros for various namespace association schemes and modes.
+#ifdef _GLIBCXX_DEBUG
+# 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
+{
+  namespace _6 { }
+  using namespace _6 __attribute__ ((strong));
+}
+
+// In addition, other supported namespace configurations.
+namespace __gnu_cxx 
 { 
-  using namespace __gnu_debug_def;
+  namespace _6 { }
+  using namespace _6 __attribute__ ((strong));
 }
 
-#ifdef _GLIBCXX_DEBUG
-# define _GLIBCXX_STD __gnu_norm
-# define _GLIBCXX_EXTERN_TEMPLATE 0
-namespace __gnu_norm 
+namespace __gnu_ext
 { 
-  using namespace std; 
+  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.
index 6b4c916b7758c6325c873514f87cd47bd6dc43ca..410e01b238d624fb2d1d2c3f6e016f16f267928d 100644 (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
index 5f1b682cbd492598a2cef47cbd7208b699e78025..81bf2a6215a64d169e6602ea417d686d151d7898 100644 (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
index 5ac9c98e704dda399d45570f1a99b548f517793f..e75bf47f08b6ad8486c95b5efece21e340d2e911 100644 (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
index d8f5ef6f0d29eb42992adf0ab0612f15a355b672..2f455930de02d10b35429cd872330a911dd53f35 100644 (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
index 652c54d87866fae147696ee142fe3e25bf8b1afb..08fcdbe5ec96b19a83932889c79e2002df105ebd 100644 (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
index 3e2ce2c5581bfc6a4f5691b4072f18aba808a9f2..59358c4060efc673d351cbcba09499416ecb6be7 100644 (file)
 #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
index 31cb1029fdc73aca0eece4a2541c34bb7fa8d371..560aeb5e8c9faf348723d57edb0e2625b51c351d 100644 (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:
index 2904efec7fbe42c82c5aa293c357bdf790fe1fe3..0b12207d0397edaf970c0645220188a8f12d4255 100644 (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:
index aca2fe38ea9849d43fc49a71e80ebf53e6759b2e..c6038e3511e4e768d3ffcc1c9bb73cb0460c7b5a 100644 (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:
index 644c65550754984f13d047bd726f346c6dfce550..cc88f40f861d12851c22ce9ea8c146149785f937 100644 (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 */
 
index 21299e60b62d438f14c76d7835885d0e15bc9e5e..541e75afb8016ab0f3455d1241f1b92fff7a38e1 100644 (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
index ece04300f31933e8ca10af888177cc1c46a83a4a..355ec75ba953f5465b918bdade3032e897c64722 100644 (file)
@@ -61,8 +61,8 @@
 #ifndef _LIST_TCC
 #define _LIST_TCC 1
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   template<typename _Tp, typename _Alloc>
     void
     _List_base<_Tp, _Alloc>::
@@ -373,7 +373,8 @@ namespace _GLIBCXX_STD
            swap(*(__fill - 1));
          }
       }
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _LIST_TCC */
 
index aed938d0c108753c2cea81a6fde429706b123610..3abe415046529f065a85f50ec2608b1ae45f3146 100644 (file)
@@ -1,6 +1,6 @@
 // Locale support -*- 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
@@ -48,8 +48,8 @@
 #include <bits/atomicity.h>
 #include <bits/gthr.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // 22.1.1 Class locale
   /**
    *  @brief  Container class for localization functionality.
@@ -577,6 +577,7 @@ namespace std
       delete [] _M_impl->_M_names[0];
       _M_impl->_M_names[0] = 0;   // Unnamed.
     }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index b4cd513b93e817f9fc937c92c54047e878cb1fa0..339bb5339b27e594109b16312dea54e1e5a9a5a3 100644 (file)
@@ -48,8 +48,8 @@
 #include <bits/ios_base.h>  // For ios_base, ios_base::iostate
 #include <streambuf>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // NB: Don't instantiate required wchar_t facets if no wchar_t support.
 #ifdef _GLIBCXX_USE_WCHAR_T
 # define  _GLIBCXX_NUM_FACETS 28
@@ -4573,6 +4573,7 @@ namespace std
     inline _CharT
     tolower(_CharT __c, const locale& __loc)
     { return use_facet<ctype<_CharT> >(__loc).tolower(__c); }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index eb4a3527c5c872739450b25cd6c611e767cabd63..9d337e9defa6a50cefcccf60f9a5493f15463ae1 100644 (file)
@@ -42,8 +42,8 @@
 #include <typeinfo>            // For bad_cast.
 #include <bits/streambuf_iterator.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _Facet>
     locale
     locale::combine(const locale& __other) const
@@ -2761,6 +2761,7 @@ namespace std
     has_facet<messages<wchar_t> >(const locale&);
 #endif
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 258fcc13ae2be2877fa1447bc955c91a3a851093..94cafb2e3872c9ab035c253a6e39ff6add28f0de 100644 (file)
@@ -1,6 +1,6 @@
 // Locale support -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -47,8 +47,8 @@
 #include <iosfwd>              // For ostreambuf_iterator, istreambuf_iterator
 #include <bits/functexcept.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // 22.1.1 Locale
   class locale;
 
@@ -187,6 +187,7 @@ namespace std
        __throw_bad_cast();
       return *__f;
     }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 592aad7dcf5791fd8681725a82b6533cc1bfa1a2..f2c6661268b7378e85d80a60dc81ab43db37e036 100644 (file)
@@ -1,6 +1,6 @@
 // The template and inlines for the -*- C++ -*- mask_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 selected subset of an array.
    *
@@ -199,10 +199,6 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
 
 #undef _DEFINE_VALARRAY_OPERATOR
 
-} // std::
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _MASK_ARRAY_H */
-
-// Local Variables:
-// mode:c++
-// End:
index e26ad50d6b8ce3c00b8de52be7c976906bc609db..1642583845fa2ca47e609f74fc9a67cc4d37bce6 100644 (file)
@@ -44,8 +44,8 @@
 
 #include <locale>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _CharT, typename _Traits>
     basic_ostream<_CharT, _Traits>::sentry::
     sentry(basic_ostream<_CharT, _Traits>& __os)
@@ -818,6 +818,7 @@ namespace std
   extern template wostream& operator<<(wostream&, const char*);
 #endif
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 6df0ef93412e2ad88a3b459b2dfc596ab3c71886..97ab8d1e08993809ab4af0e01b0dd3625c125b30 100644 (file)
@@ -1,6 +1,6 @@
 // Position types -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -49,8 +49,8 @@
 #include <stdint.h> // For int64_t
 #endif
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // The types streamoff, streampos and wstreampos and the class
   // template fpos<> are described in clauses 21.1.2, 21.1.3, 27.1.2,
   // 27.2, 27.4.1, 27.4.3 and D.6. Despite all this verbage, the
@@ -210,6 +210,7 @@ namespace std
   typedef fpos<mbstate_t> streampos;
   /// File position for wchar_t streams.
   typedef fpos<mbstate_t> wstreampos;
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index bde07d5e7e08dfe37e3b82308335ef8b921abb7c..41debfe55397b7679d6538cf8bd7cdad38d96a6b 100644 (file)
@@ -1,6 +1,6 @@
 // The template and inlines for the -*- C++ -*- slice_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  Class defining one-dimensional subset of an array.
    *
@@ -264,10 +264,6 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
 
 #undef _DEFINE_VALARRAY_OPERATOR
 
-} // std::
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _SLICE_ARRAY_H */
-
-// Local Variables:
-// mode:c++
-// End:
index 28fb1959e9a455b916c79adc46cd1c21be205a34..eb12ca45891abc090eb8ddef3c5452c74201c8c9 100644 (file)
@@ -1,6 +1,6 @@
 // String based streams -*- 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
@@ -44,8 +44,8 @@
 
 #include <sstream>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template <class _CharT, class _Traits, class _Alloc>
     typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
     basic_stringbuf<_CharT, _Traits, _Alloc>::
@@ -233,6 +233,7 @@ namespace std
   extern template class basic_stringstream<wchar_t>;
 #endif
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 6cb9c0b7d7a2005ea8f4ccdf82d07564391febd0..355d859a901b18fff0973686948f2c8bacbec161 100644 (file)
@@ -67,8 +67,8 @@
 
 // See concept_check.h for the __glibcxx_*_requires macros.
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  @brief Find the median of three values.
    *  @param  a  A value.
@@ -5337,6 +5337,6 @@ namespace std
                             __comp);
     }
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _ALGO_H */
index c3398327346cdf4dca8ea4ccdc541ae3ef08dce0..730699648e1802f38a9fda549e18d818d5ad3013 100644 (file)
@@ -75,8 +75,7 @@
 #include <bits/concept_check.h>
 #include <debug/debug.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
   /**
    *  @brief Swaps two values.
@@ -909,6 +908,6 @@ namespace std
 #endif /* CHAR_MAX == SCHAR_MAX */
   }
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 05c7e09adfb89f6a4252fa0a7c4876f9d9878213..0779ea692d6c179286af3d39a64f6596b622df1d 100644 (file)
@@ -61,8 +61,8 @@
 #ifndef _BVECTOR_H
 #define _BVECTOR_H 1
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   typedef unsigned long _Bit_type;
   enum { _S_word_bit = int(CHAR_BIT * sizeof(_Bit_type)) };
 
@@ -397,13 +397,14 @@ namespace _GLIBCXX_STD
                             _M_impl._M_end_of_storage - _M_impl._M_start._M_p);
       }
     };
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 // Declare a partial specialization of vector<T, Alloc>.
 #include <bits/stl_vector.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   /**
    *  @brief  A specialization of vector for booleans which offers fixed time
    *  access to individual elements in any order.
@@ -953,6 +954,7 @@ template<typename _Alloc>
     clear()
     { erase(begin(), end()); }
   };
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif
index 8f78d8c30b9145cab2d330638c99632ae1b91769..0a03fb72d3f0803cd14fc713ffdaede9d4e8cddd 100644 (file)
@@ -64,8 +64,8 @@
 #include <bits/cpp_type_traits.h>
 #include <new>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    * @if maint
    * Constructs an object in existing memory by invoking an allocated
@@ -181,9 +181,8 @@ namespace std
     {
       _Destroy(__first, __last);
     }
-   
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _STL_CONSTRUCT_H */
 
index 15401ba6865478fda4f7106414756a0c8f9a35b9..107bbfe69a1ccbd7c0239faa8204db756bca5eac 100644 (file)
@@ -65,8 +65,8 @@
 #include <bits/stl_iterator_base_types.h>
 #include <bits/stl_iterator_base_funcs.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   /**
    *  @if maint
    *  @brief This function controls the size of memory nodes.
@@ -1580,6 +1580,7 @@ namespace _GLIBCXX_STD
     inline void
     swap(deque<_Tp,_Alloc>& __x, deque<_Tp,_Alloc>& __y)
     { __x.swap(__y); }
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _DEQUE_H */
index dac19c8e5250425bb8e78372c6b6db739e441d05..db213dc0a925996e28dea009909d357554230f48 100644 (file)
@@ -61,8 +61,8 @@
 #ifndef _FUNCTION_H
 #define _FUNCTION_H 1
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // 20.3.1 base classes
   /** @defgroup s20_3_1_base Functor Base Classes
    *  Function objects, or @e functors, are objects with an @c operator()
@@ -750,10 +750,6 @@ namespace std
 
   /** @}  */
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _FUNCTION_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 3dd0001e7f18dd7e79e413ef1962cf7783270a6f..f9e337f31be8e597760bbebdae789449d1c65e00 100644 (file)
@@ -1,6 +1,6 @@
 // Heap implementation -*- 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
@@ -62,8 +62,8 @@
 
 #include <debug/debug.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // is_heap, a predicate testing whether or not a range is
   // a heap.  This function is an extension, not part of the C++
   // standard.
@@ -458,10 +458,6 @@ namespace std
        std::pop_heap(__first, __last--, __comp);
     }
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _STL_HEAP_H */
-
-// Local Variables:
-// mode:C++
-// End:
index 12b2e9c6f9a4c91f4d80ae359c6dc47e851c7fca..7746aa2b9508692754c6d2e9cd67509c41134c00 100644 (file)
@@ -67,8 +67,8 @@
 
 #include <bits/cpp_type_traits.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // 24.4.1 Reverse iterators
   /**
    *  "Bidirectional and random access iterators have corresponding reverse
@@ -616,10 +616,11 @@ namespace std
       return insert_iterator<_Container>(__x,
                                         typename _Container::iterator(__i));
     }
-} // namespace std
 
-namespace __gnu_cxx
-{
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   // This iterator adapter is 'normal' in the sense that it does not
   // change the semantics of any of the operators of its iterator
   // parameter.  Its primary purpose is to convert an iterator that is
@@ -819,10 +820,7 @@ namespace __gnu_cxx
     operator+(typename __normal_iterator<_Iterator, _Container>::difference_type
              __n, const __normal_iterator<_Iterator, _Container>& __i)
     { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); }
-} // namespace __gnu_cxx
 
-#endif
+_GLIBCXX_END_NAMESPACE
 
-// Local Variables:
-// mode:C++
-// End:
+#endif
index 6e550fadf5bdbf5df3a49693b7f1b624999d79b0..82bf040afb221b4f9dd77b5830b34bef988379ae 100644 (file)
@@ -1,6 +1,6 @@
 // Functions used by iterators -*- 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
@@ -67,8 +67,8 @@
 #pragma GCC system_header
 #include <bits/concept_check.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _InputIterator>
     inline typename iterator_traits<_InputIterator>::difference_type
     __distance(_InputIterator __first, _InputIterator __last,
@@ -174,6 +174,7 @@ namespace std
       // concept requirements -- taken care of in __advance
       std::__advance(__i, __n, std::__iterator_category(__i));
     }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _ITERATOR_BASE_FUNCS_H */
index 2161f2a8136650d34aca910109eaf5b3f7e0d14c..c02cd261d8d1e5864ae8cd9a029cafa915855289 100644 (file)
@@ -1,6 +1,6 @@
 // Types used in iterator implementation -*- 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
@@ -66,8 +66,8 @@
 
 #pragma GCC system_header
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   //@{
   /**
    *  @defgroup iterator_tags Iterator Tags
@@ -164,7 +164,7 @@ namespace std
     __iterator_category(const _Iter&)
     { return typename iterator_traits<_Iter>::iterator_category(); }
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _ITERATOR_BASE_TYPES_H */
 
index f93a03224ccbde8bbb7d78416e6478e548819a93..03b70a39fb03e6574d91f8b9359427d534fc98be 100644 (file)
@@ -63,8 +63,8 @@
 
 #include <bits/concept_check.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   // Supporting structures are split into common and templated types; the
   // latter publicly inherits from the former in an effort to reduce code
   // duplication.  This results in some "needless" static_cast'ing later on,
@@ -1221,7 +1221,8 @@ namespace _GLIBCXX_STD
     inline void
     swap(list<_Tp, _Alloc>& __x, list<_Tp, _Alloc>& __y)
     { __x.swap(__y); }
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _LIST_H */
 
index 4d4dd7edf6d19ac83fbc0e34d6f7bce6a2e69a7a..a1cfafb850a74595ee074e5473ba7d23e4c3e473 100644 (file)
@@ -64,8 +64,8 @@
 #include <bits/functexcept.h>
 #include <bits/concept_check.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   /**
    *  @brief A standard container made up of (key,value) pairs, which can be
    *  retrieved based on a key, in logarithmic time.
@@ -726,6 +726,7 @@ namespace _GLIBCXX_STD
     swap(map<_Key, _Tp, _Compare, _Alloc>& __x,
         map<_Key, _Tp, _Compare, _Alloc>& __y)
     { __x.swap(__y); }
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _MAP_H */
index 5c6622751307e7d29cbb446656ab3d9fc9e17fb4..4adf65ba836049b451aad96abcde22e7f463082c 100644 (file)
@@ -63,8 +63,8 @@
 
 #include <bits/concept_check.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   // Forward declaration of operators < and ==, needed for friend declaration.
 
   template <typename _Key, typename _Tp,
@@ -679,6 +679,7 @@ namespace _GLIBCXX_STD
     swap(multimap<_Key, _Tp, _Compare, _Alloc>& __x,
          multimap<_Key, _Tp, _Compare, _Alloc>& __y)
     { __x.swap(__y); }
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _MULTIMAP_H */
index 185f51ce989ffb2b7d2eccea265bb06ae581d1f0..f685b4f6e636ceeaf21d5f155386a53d68cd52f4 100644 (file)
@@ -63,8 +63,7 @@
 
 #include <bits/concept_check.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
 
   // Forward declaration of operators < and ==, needed for friend declaration.
   template <class _Key, class _Compare = std::less<_Key>,
@@ -575,6 +574,6 @@ namespace _GLIBCXX_STD
         multiset<_Key, _Compare, _Alloc>& __y)
     { __x.swap(__y); }
 
-} // namespace std
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _MULTISET_H */
index 79706806d50b26e722d043d2e32bc269ecc3384d..82bee216d102d137fe5ea0d606fd97bfa53d4027 100644 (file)
@@ -1,6 +1,6 @@
 // Numeric functions implementation -*- 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
@@ -63,8 +63,7 @@
 
 #include <debug/debug.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
   /**
    *  @brief  Accumulate values in a range.
@@ -335,6 +334,6 @@ namespace std
       return ++__result;
     }
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _STL_NUMERIC_H */
index b97de332729ee52b6da57a60c2d0403fa32878f0..b4bb00c26e10fc92fe3807325a0a6b43709f50e3 100644 (file)
@@ -1,6 +1,6 @@
 // Pair implementation -*- 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
@@ -61,8 +61,8 @@
 #ifndef _PAIR_H
 #define _PAIR_H 1
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /// pair holds two objects of arbitrary type.
   template<class _T1, class _T2>
     struct pair
@@ -143,6 +143,7 @@ namespace std
     inline pair<_T1, _T2>
     make_pair(_T1 __x, _T2 __y)
     { return pair<_T1, _T2>(__x, __y); }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _PAIR_H */
index b7d03b8ab2c6638711a727ababa6c2448ddd0c70..e0da22fb21355935ecd375a441689d6531caaf9e 100644 (file)
@@ -1,6 +1,7 @@
 // Queue implementation -*- 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
@@ -64,8 +65,8 @@
 #include <bits/concept_check.h>
 #include <debug/debug.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Forward declarations of operators < and ==, needed for friend declaration.
   template<typename _Tp, typename _Sequence = deque<_Tp> >
     class queue;
@@ -465,6 +466,7 @@ namespace std
     };
 
   // No equality/comparison operators are provided for priority_queue.
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _QUEUE_H */
index 40577655b98f1161696df3d21f25d929a713bde8..615da28524e008a14bdf0baa8642a63362d0503b 100644 (file)
@@ -1,6 +1,6 @@
 // -*- 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
@@ -61,8 +61,8 @@
 #ifndef _STL_RAW_STORAGE_ITERATOR_H
 #define _STL_RAW_STORAGE_ITERATOR_H 1
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  This iterator class lets algorithms store their results into
    *  uninitialized memory.
@@ -104,10 +104,7 @@ namespace std
        return __tmp;
       }
     };
-} // namespace std
 
-#endif
+_GLIBCXX_END_NAMESPACE
 
-// Local Variables:
-// mode:C++
-// End:
+#endif
index 1395472d038b104ab59caf62f1ba563d57a1ae89..11fc30dedd8e1dbafd0eba812e36882619726aa0 100644 (file)
@@ -1,6 +1,6 @@
 // std::rel_ops implementation -*- 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
@@ -71,8 +71,8 @@
 #ifndef _STL_RELOPS_H
 #define _STL_RELOPS_H 1
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   namespace rel_ops
   {
     /** @namespace std::rel_ops
@@ -132,6 +132,7 @@ namespace std
       { return !(__x < __y); }
 
   } // namespace rel_ops
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _STL_RELOPS_H */
index 1172e509311eece15698cf96aa3d21c792818d3d..042e95fc20fa9d0e071cfc7f6d963d59393f3efd 100644 (file)
@@ -63,8 +63,8 @@
 
 #include <bits/concept_check.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   // Forward declarations of operators < and ==, needed for friend declaration.
   template<class _Key, class _Compare = std::less<_Key>,
           class _Alloc = std::allocator<_Key> >
@@ -587,6 +587,6 @@ namespace _GLIBCXX_STD
     swap(set<_Key, _Compare, _Alloc>& __x, set<_Key, _Compare, _Alloc>& __y)
     { __x.swap(__y); }
 
-} // namespace std
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _SET_H */
index c3a527543e4ef7a2ab3eba76765d4d6f2f81e0d3..22e566038934eb40b25714e330118932cc6afda9 100644 (file)
@@ -1,6 +1,6 @@
 // Stack implementation -*- 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
@@ -64,8 +64,8 @@
 #include <bits/concept_check.h>
 #include <debug/debug.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Forward declarations of operators == and <, needed for friend
   // declaration.
   template<typename _Tp, typename _Sequence = deque<_Tp> >
@@ -267,6 +267,7 @@ namespace std
     inline bool
     operator>=(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
     { return !(__x < __y); }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _STACK_H */
index 7263099d7ecef327781db4ba6a21e2f7abef1201..970af452de7229fc330509a3f105df6c3e117921 100644 (file)
@@ -63,8 +63,8 @@
 
 #include <memory>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  @if maint
    *  This class is used in two places: stl_algo.h and ext/memory,
@@ -164,7 +164,8 @@ namespace std
          __throw_exception_again;
        }
     }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _TEMPBUF_H */
 
index 13088ca75550d298c9d2992af533fb307b8a867b..ad0e68df9c1625c393e6ff76943e7acded69ddad 100644 (file)
@@ -69,8 +69,8 @@
 #include <bits/stl_function.h>
 #include <bits/cpp_type_traits.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Red-black tree class, designed for use in implementing STL
   // associative containers (set, multiset, map, and multimap). The
   // insertion and deletion algorithms are based on those in Cormen,
@@ -1492,6 +1492,7 @@ namespace std
        return false;
       return true;
     }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 6b06ad064d8750541720675f48a9b496c806b170..c5748fc284d67bb532288656c35e8d8a418594bb 100644 (file)
@@ -63,8 +63,8 @@
 
 #include <cstring>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // uninitialized_copy
   template<typename _InputIterator, typename _ForwardIterator>
     inline _ForwardIterator
@@ -392,6 +392,6 @@ namespace std
        }
     }
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _STL_UNINITIALIZED_H */
index 731806b0a9482f119d5a678b9c11b6881766995f..c4107fa6e778ddf1c093ad2d73cbd40950dfdb62 100644 (file)
@@ -65,8 +65,8 @@
 #include <bits/functexcept.h>
 #include <bits/concept_check.h>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   /**
    *  @if maint
    *  See bits/stl_deque.h's _Deque_base for an explanation.
@@ -985,6 +985,7 @@ namespace _GLIBCXX_STD
     inline void
     swap(vector<_Tp, _Alloc>& __x, vector<_Tp, _Alloc>& __y)
     { __x.swap(__y); }
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _VECTOR_H */
index c247868fa77adac1a5cabf3e0689fec5bd0d1afd..dabb9ce46a23523debe5512fb06a5f1931e0262f 100644 (file)
@@ -1,6 +1,6 @@
 // Stream iterators
 
-// 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
@@ -39,8 +39,8 @@
 
 #include <debug/debug.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /// Provides input iterator semantics for streams.
   template<typename _Tp, typename _CharT = char,
            typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
@@ -210,5 +210,7 @@ namespace std
       operator++(int)
       { return *this; }
     };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
+
 #endif
index e6c54ed088957c279ec0b2d6cb22feab0032fc1e..b1a4876fded89c00f7ff9c6536fc5ddcd77c5bc9 100644 (file)
@@ -42,8 +42,8 @@
 
 #pragma GCC system_header
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _CharT, typename _Traits>
     streamsize
     basic_streambuf<_CharT, _Traits>::
@@ -149,6 +149,7 @@ namespace std
     __copy_streambufs(basic_streambuf<wchar_t>*, basic_streambuf<wchar_t>*);
 #endif
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 0de592202eb373f01add985e0f10568355644830..e3b5a3b4c3a55452f216d467360be4b4bfb3af14 100644 (file)
@@ -1,6 +1,6 @@
 // Streambuf iterators
 
-// 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
@@ -43,8 +43,8 @@
 
 // NB: Should specialize copy, find algorithms for streambuf iterators.
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // 24.5.3 Template class istreambuf_iterator
   /// Provides input iterator semantics for streambufs.
   template<typename _CharT, typename _Traits>
@@ -254,5 +254,7 @@ namespace std
        return *this;
       }
     };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
+
 #endif
index 8bb59d96c00f4f222c50f4d80d499d54e9dc44ec..8158e8572e6a18b509e74a6cea310a9ddd4b8674 100644 (file)
@@ -1,6 +1,6 @@
 // String support -*- 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
@@ -43,8 +43,8 @@
 
 #include <bits/c++config.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _Alloc>
     class allocator;
 
@@ -64,6 +64,7 @@ namespace std
 
   typedef basic_string<wchar_t> wstring;
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif // _STRINGFWD_H
index 8d73d42f27c7f226e549389409ed95b0efbfe6f9..62d9853c5a880c1fb16862faf767e954ef79a565 100644 (file)
@@ -1,6 +1,6 @@
 // The template and inlines for the -*- C++ -*- internal _Meta class.
 
-// 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
@@ -40,8 +40,8 @@
 
 #pragma GCC system_header
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   //
   // gslice_array closure.
   //
@@ -549,10 +549,6 @@ _DEFINE_EXPR_BINARY_FUNCTION(pow)
 
 #undef _DEFINE_EXPR_BINARY_FUNCTION
 
-} // std::
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _CPP_VALARRAY_AFTER_H */
-
-// Local Variables:
-// mode:c++
-// End:
index 940d886c4be4fa093e54e0e638773243727bb5d6..490384fdcc4743f2c508e1134bfcc99d08ff75d6 100644 (file)
@@ -46,8 +46,8 @@
 #include <cstring>
 #include <new>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   //
   // Helper functions on raw pointers
   //
@@ -682,7 +682,8 @@ namespace std
    _DEFINE_ARRAY_FUNCTION(>>, __shift_right)
 
 #undef _DEFINE_VALARRAY_FUNCTION
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 # include <bits/valarray_array.tcc>
index b4be2c7d018c2fb47aea23648977b15cdd8f63d2..f00ffb4dc8bd8eb48e03d5f98fffeb6df6c76d4b 100644 (file)
@@ -1,6 +1,6 @@
 // The template and inlines for the -*- C++ -*- internal _Array helper class.
 
-// Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1997, 1998, 1999, 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
@@ -37,8 +37,8 @@
 #ifndef _VALARRAY_ARRAY_TCC
 #define _VALARRAY_ARRAY_TCC 1
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _Tp>
     void
     __valarray_fill(_Array<_Tp> __a, size_t __n, _Array<bool> __m,
@@ -240,6 +240,7 @@ namespace std
          new (__q) _Tp(*__p);
        }
     }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _VALARRAY_ARRAY_TCC */
index 2f1a64f82ab8f53784c09ddca463640e38cc9331..5a294af893d43eddeb08cac30875fe8fdf80aed5 100644 (file)
@@ -1,6 +1,6 @@
 // The template and inlines for the -*- C++ -*- internal _Meta class.
 
-// 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
@@ -42,8 +42,8 @@
 
 #include <bits/slice_array.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   //
   // Implementing a loosened valarray return value is tricky.
   // First we need to meet 26.3.1/3: we should not add more than
@@ -730,10 +730,6 @@ namespace std
       _SClos (_Array<_Tp> __a, const slice& __s) : _Base (__a, __s) {}
     };
 
-} // std::
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _CPP_VALARRAY_BEFORE_H */
-
-// Local Variables:
-// mode:c++
-// End:
index 9213057a2abcd026075e5bb21b43e1f98697125d..f476c460d33e6eacc7c9793642039a6b6ad9f56e 100644 (file)
@@ -61,8 +61,8 @@
 #ifndef _VECTOR_TCC
 #define _VECTOR_TCC 1
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   template<typename _Tp, typename _Alloc>
     void
     vector<_Tp, _Alloc>::
@@ -490,6 +490,7 @@ namespace _GLIBCXX_STD
              }
          }
       }
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #endif /* _VECTOR_TCC */
index 008f7069f41c16b8e8dd5d8514ad51e4848fbc28..92473981df8c2129d559f2915da7f544c8d2b1e0 100644 (file)
@@ -65,8 +65,8 @@
 #undef tolower
 #undef toupper
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::isalnum;
   using ::isalpha;
   using ::iscntrl;
@@ -80,6 +80,7 @@ namespace std
   using ::isxdigit;
   using ::tolower;
   using ::toupper;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 9a3e516e7c1758fcd5a5356c089009b50f8b6ee4..2ec904c6cd89c1ec3614740a8c7b8398d787a62d 100644 (file)
 
 #pragma GCC system_header
 
+#include <bits/c++config.h>
 #include <locale.h>
 
 // Get rid of those macros defined in <locale.h> in lieu of real functions.
 #undef setlocale
 #undef localeconv
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::lconv;
   using ::setlocale;
   using ::localeconv;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 115fe47106419698b2ce851ff1d2aa5d16d316e4..7728faf176fcd048d5ea280b83c63ab50bc1182c 100644 (file)
@@ -78,9 +78,8 @@
 #undef tan
 #undef tanh
 
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
-namespace std
-{
   // Forward declaration of a helper function.  This really should be
   // an `exported' forward declaration.
   template<typename _Tp> _Tp __cmath_power(_Tp, unsigned int);
@@ -435,15 +434,17 @@ namespace std
     inline typename __enable_if<double, __is_integer<_Tp>::__value>::__type
     tanh(_Tp __x)
     { return __builtin_tanh(__x); }
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #if _GLIBCXX_USE_C99_MATH
 #if !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC
 // These are possible macros imported from C99-land. For strict
 // conformance, remove possible C99-injected names from the global
 // namespace, and sequester them in the __gnu_cxx extension namespace.
-namespace __gnu_cxx
-{
+
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   template<typename _Tp>
     inline int
     __capture_fpclassify(_Tp __f) { return fpclassify(__f); }
@@ -496,7 +497,8 @@ namespace __gnu_cxx
     inline int
     __capture_isunordered(_Tp __f1, _Tp __f2)
     { return isunordered(__f1, __f2); }
-}
+
+_GLIBCXX_END_NAMESPACE
 
 // Only undefine the C99 FP macros, if actually captured for namespace movement
 #undef fpclassify
@@ -512,62 +514,64 @@ namespace __gnu_cxx
 #undef islessgreater
 #undef isunordered
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _Tp>
     inline int
-    fpclassify(_Tp __f) { return __gnu_cxx::__capture_fpclassify(__f); }
+    fpclassify(_Tp __f) { return ::__gnu_cxx::__capture_fpclassify(__f); }
 
   template<typename _Tp>
     inline int
-    isfinite(_Tp __f) { return __gnu_cxx::__capture_isfinite(__f); }
+    isfinite(_Tp __f) { return ::__gnu_cxx::__capture_isfinite(__f); }
 
   template<typename _Tp>
     inline int
-    isinf(_Tp __f) { return __gnu_cxx::__capture_isinf(__f); }
+    isinf(_Tp __f) { return ::__gnu_cxx::__capture_isinf(__f); }
 
   template<typename _Tp>
     inline int
-    isnan(_Tp __f) { return __gnu_cxx::__capture_isnan(__f); }
+    isnan(_Tp __f) { return ::__gnu_cxx::__capture_isnan(__f); }
 
   template<typename _Tp>
     inline int
-    isnormal(_Tp __f) { return __gnu_cxx::__capture_isnormal(__f); }
+    isnormal(_Tp __f) { return ::__gnu_cxx::__capture_isnormal(__f); }
 
   template<typename _Tp>
     inline int
-    signbit(_Tp __f) { return __gnu_cxx::__capture_signbit(__f); }
+    signbit(_Tp __f) { return ::__gnu_cxx::__capture_signbit(__f); }
 
   template<typename _Tp>
     inline int
     isgreater(_Tp __f1, _Tp __f2)
-    { return __gnu_cxx::__capture_isgreater(__f1, __f2); }
+    { return ::__gnu_cxx::__capture_isgreater(__f1, __f2); }
 
   template<typename _Tp>
     inline int
     isgreaterequal(_Tp __f1, _Tp __f2)
-    { return __gnu_cxx::__capture_isgreaterequal(__f1, __f2); }
+    { return ::__gnu_cxx::__capture_isgreaterequal(__f1, __f2); }
 
   template<typename _Tp>
     inline int
     isless(_Tp __f1, _Tp __f2)
-    { return __gnu_cxx::__capture_isless(__f1, __f2); }
+    { return ::__gnu_cxx::__capture_isless(__f1, __f2); }
 
   template<typename _Tp>
     inline int
     islessequal(_Tp __f1, _Tp __f2)
-    { return __gnu_cxx::__capture_islessequal(__f1, __f2); }
+    { return ::__gnu_cxx::__capture_islessequal(__f1, __f2); }
 
   template<typename _Tp>
     inline int
     islessgreater(_Tp __f1, _Tp __f2)
-    { return __gnu_cxx::__capture_islessgreater(__f1, __f2); }
+    { return ::__gnu_cxx::__capture_islessgreater(__f1, __f2); }
 
   template<typename _Tp>
     inline int
     isunordered(_Tp __f1, _Tp __f2)
-    { return __gnu_cxx::__capture_isunordered(__f1, __f2); }
-}
+    { return ::__gnu_cxx::__capture_isunordered(__f1, __f2); }
+
+_GLIBCXX_END_NAMESPACE
+
 #endif /* _GLIBCXX_USE_C99_FP_MACROS_DYNAMIC */
 #endif
 
index 290f2e9e675887840b661528b8edf6d61c7ce114..5d664ebd8d9596776f0d540fd225953c88142fcd 100644 (file)
@@ -47,6 +47,7 @@
 
 #pragma GCC system_header
 
+#include <bits/c++config.h>
 #include <setjmp.h>
 
 // Get rid of those macros defined in <setjmp.h> in lieu of real functions.
 #define setjmp(env) setjmp (env)
 #endif
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::jmp_buf;
   using ::longjmp;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 0db1c11abe3b482eda4fe59174f4e0c7d7caa089..4202b77c58602055f1aadd59f72ae0bb690a35aa 100644 (file)
 
 #pragma GCC system_header
 
+#include <bits/c++config.h>
 #include <signal.h>
 
 // Get rid of those macros defined in <signal.h> in lieu of real functions.
 #undef raise
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::sig_atomic_t;
   using ::signal;
   using ::raise;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index c98b5dbf88fcc15d1744e30b291dbd25e9d7c2de..bbc3b338e865a403d6ad7f6e279d4bcc2680d0f5 100644 (file)
@@ -47,6 +47,7 @@
 
 #pragma GCC system_header
 
+#include <bits/c++config.h>
 #include <stdarg.h>
 
 // Adhere to section 17.4.1.2 clause 5 of ISO 14882:1998
 #define va_end(ap) va_end (ap)
 #endif
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::va_list;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index f1860a76143db15ce7c684b32510dba23206a4e8..ad529d530da184cf4ae57a7b767d7575294a3da5 100644 (file)
 
 #pragma GCC system_header
 
+#include <bits/c++config.h>
 #include <stddef.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::ptrdiff_t;
   using ::size_t;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 9f5f7dd3ac1381625680165716406ae1a600207c..c8109c0409bc3de624f2f82f071d3f50c26697b0 100644 (file)
@@ -95,8 +95,8 @@
 #undef vprintf
 #undef vsprintf
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::FILE;
   using ::fpos_t;
 
@@ -141,7 +141,8 @@ namespace std
   using ::vfprintf;
   using ::vprintf;
   using ::vsprintf;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #if _GLIBCXX_USE_C99
 
@@ -151,8 +152,8 @@ namespace std
 #undef vsnprintf
 #undef vsscanf
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
 #if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
   extern "C" int
   (snprintf)(char * restrict, size_t, const char * restrict, ...);
@@ -172,16 +173,19 @@ namespace __gnu_cxx
   using ::vsnprintf;
   using ::vsscanf;
 #endif
-}
-
-namespace std
-{
-  using __gnu_cxx::snprintf;
-  using __gnu_cxx::vfscanf;
-  using __gnu_cxx::vscanf;
-  using __gnu_cxx::vsnprintf;
-  using __gnu_cxx::vsscanf;
-}
+
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
+  using ::__gnu_cxx::snprintf;
+  using ::__gnu_cxx::vfscanf;
+  using ::__gnu_cxx::vscanf;
+  using ::__gnu_cxx::vsnprintf;
+  using ::__gnu_cxx::vsscanf;
+
+_GLIBCXX_END_NAMESPACE
+
 #endif
 
 #endif
index 2139092f57d6d600e661238d36645f2c2c81c90b..cc2a8cfbee9a75f225eb3da020b57155f389ae45 100644 (file)
 #define EXIT_SUCCESS 0
 #define EXIT_FAILURE 1
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   extern "C" void abort(void);
   extern "C" int atexit(void (*)());
   extern "C" void exit(int);
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #else
 
@@ -100,8 +101,8 @@ namespace std
 #undef wcstombs
 #undef wctomb
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::div_t;
   using ::ldiv_t;
 
@@ -143,7 +144,8 @@ namespace std
 
   inline ldiv_t
   div(long __i, long __j) { return ldiv(__i, __j); }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #if _GLIBCXX_USE_C99
 
@@ -156,8 +158,8 @@ namespace std
 #undef strtof
 #undef strtold
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
 #if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
   using ::lldiv_t;
 #endif
@@ -195,10 +197,11 @@ namespace __gnu_cxx
 #endif
   using ::strtof;
   using ::strtold;
-}
 
-namespace std
-{
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
 #if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
   using ::__gnu_cxx::lldiv_t;
 #endif
@@ -214,7 +217,8 @@ namespace std
   using ::__gnu_cxx::strtoll;
   using ::__gnu_cxx::strtoull;
   using ::__gnu_cxx::strtold;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif // _GLIBCXX_USE_C99
 
index 7efbf8f326295a6d0ec5dc2c1f15400536dc6f76..a77e7c28a800ccd30384c4e6626d96a530088168 100644 (file)
@@ -47,8 +47,8 @@
 
 #pragma GCC system_header
 
+#include <bits/c++config.h>
 #include <cstddef>
-
 #include <string.h>
 
 // Get rid of those macros defined in <string.h> in lieu of real functions.
@@ -75,8 +75,8 @@
 #undef strerror
 #undef strlen
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::memcpy;
   using ::memmove;
   using ::strcpy;
@@ -124,6 +124,7 @@ namespace std
   inline char*
   strstr(char* __s1, const char* __s2)
   { return __builtin_strstr(const_cast<const char*>(__s1), __s2); }
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index ef3307e1e3cfe72104f2d6b6539d53547052ffbd..05295cf0f437727211d6af3dea01a0288aa7a02e 100644 (file)
@@ -48,7 +48,6 @@
 #pragma GCC system_header
 
 #include <cstddef>
-
 #include <time.h>
 
 // Get rid of those macros defined in <time.h> in lieu of real functions.
@@ -62,8 +61,8 @@
 #undef localtime
 #undef strftime
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::clock_t;
   using ::time_t;
   using ::tm;
@@ -77,6 +76,7 @@ namespace std
   using ::gmtime;
   using ::localtime;
   using ::strftime;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 5e3ab9099d7e2c097022a1093269972e707d4233..8f03a416ad0a5af160a757a75e784feafbe025b5 100644 (file)
@@ -67,10 +67,11 @@ extern "C"
 }
 #endif
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::mbstate_t;
-}
+
+_GLIBCXX_END_NAMESPACE
 
 // Get rid of those macros defined in <wchar.h> in lieu of real functions.
 #undef btowc
@@ -139,8 +140,9 @@ namespace std
 #undef wscanf
 
 #if _GLIBCXX_USE_WCHAR_T
-namespace std
-{
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::wint_t;
 
   using ::btowc;
@@ -232,7 +234,8 @@ namespace std
   inline wchar_t*
   wmemchr(wchar_t* __p, wchar_t __c, size_t __n)
   { return wmemchr(const_cast<const wchar_t*>(__p), __c, __n); }
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #if _GLIBCXX_USE_C99
 
@@ -240,8 +243,8 @@ namespace std
 #undef wcstoll
 #undef wcstoull
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
 #if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
   extern "C" long double
     (wcstold)(const wchar_t * restrict, wchar_t ** restrict);
@@ -259,14 +262,17 @@ namespace __gnu_cxx
   using ::wcstoll;
   using ::wcstoull;
 #endif
-}
 
-namespace std
-{
-  using __gnu_cxx::wcstold;
-  using __gnu_cxx::wcstoll;
-  using __gnu_cxx::wcstoull;
-}
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
+  using ::__gnu_cxx::wcstold;
+  using ::__gnu_cxx::wcstoll;
+  using ::__gnu_cxx::wcstoull;
+
+_GLIBCXX_END_NAMESPACE
+
 #endif
 
 #endif //_GLIBCXX_USE_WCHAR_T
index 9f297c42eed342704252ceb45d1716ea278fa95d..ba699b75df0c739c879507bdc250d5b628c83966 100644 (file)
@@ -76,8 +76,9 @@
 #undef wctype
 
 #if _GLIBCXX_USE_WCHAR_T
-namespace std
-{
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using ::wint_t;        // cwchar
 
   using ::wctype_t;
@@ -103,7 +104,9 @@ namespace std
   using ::towupper;
   using ::wctrans;
   using ::wctype;
-}
+
+_GLIBCXX_END_NAMESPACE
+
 #endif //_GLIBCXX_USE_WCHAR_T
 
 #endif
index 2bdca187b5c14b08817e9f4e814bcc07d826940e..11970c6748f357250855980c9ae21a7c5b466eee 100644 (file)
@@ -35,6 +35,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<size_t _Nb>
@@ -68,7 +70,7 @@ namespace __gnu_debug_def
        operator=(bool __x)
        {
          _GLIBCXX_DEBUG_VERIFY(! this->_M_singular(),
-                             _M_message(::__gnu_debug::__msg_bad_bitset_write)
+                             _M_message(__gnu_debug::__msg_bad_bitset_write)
                                ._M_iterator(*this));
          *static_cast<_Base_ref*>(this) = __x;
          return *this;
@@ -78,10 +80,10 @@ namespace __gnu_debug_def
        operator=(const reference& __x)
        {
          _GLIBCXX_DEBUG_VERIFY(! __x._M_singular(),
-                              _M_message(::__gnu_debug::__msg_bad_bitset_read)
+                              _M_message(__gnu_debug::__msg_bad_bitset_read)
                                ._M_iterator(__x));
          _GLIBCXX_DEBUG_VERIFY(! this->_M_singular(),
-                             _M_message(::__gnu_debug::__msg_bad_bitset_write)
+                             _M_message(__gnu_debug::__msg_bad_bitset_write)
                                ._M_iterator(*this));
          *static_cast<_Base_ref*>(this) = __x;
          return *this;
@@ -91,7 +93,7 @@ namespace __gnu_debug_def
        operator~() const
        {
          _GLIBCXX_DEBUG_VERIFY(! this->_M_singular(),
-                              _M_message(::__gnu_debug::__msg_bad_bitset_read)
+                              _M_message(__gnu_debug::__msg_bad_bitset_read)
                                ._M_iterator(*this));
          return ~(*static_cast<const _Base_ref*>(this));
        }
@@ -99,7 +101,7 @@ namespace __gnu_debug_def
        operator bool() const
        {
          _GLIBCXX_DEBUG_VERIFY(! this->_M_singular(),
-                             _M_message(::__gnu_debug::__msg_bad_bitset_read)
+                             _M_message(__gnu_debug::__msg_bad_bitset_read)
                                ._M_iterator(*this));
          return *static_cast<const _Base_ref*>(this);
        }
@@ -108,7 +110,7 @@ namespace __gnu_debug_def
        flip()
        {
          _GLIBCXX_DEBUG_VERIFY(! this->_M_singular(),
-                             _M_message(::__gnu_debug::__msg_bad_bitset_flip)
+                             _M_message(__gnu_debug::__msg_bad_bitset_flip)
                                ._M_iterator(*this));
          _Base_ref::flip();
          return *this;
@@ -317,5 +319,6 @@ namespace __gnu_debug_def
               const bitset<_Nb>& __x)
     { return __os << __x._M_base(); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index c29109681764817cab8a0f3408fe60898fdc7b2c..4eff05bdab6a267c8d221007db090601783b2216 100644 (file)
  *  standard library algorithms.
 */
 
+
+namespace std 
+{ 
+  namespace __gnu_debug_def { } 
+  namespace __gnu_debug { using namespace __gnu_debug_def; } 
+}
+
+namespace debug = std::__gnu_debug;
+
 #ifdef _GLIBCXX_DEBUG
 
-# include <debug/macros.h>
 # include <cstdlib>
 # include <cstdio>
+# include <debug/macros.h>
 
-// Avoid the use of assert, because we're trying to keep the <cassert>
-// include out of the mix.
+namespace std
+{
 namespace __gnu_debug
 { 
+  // Avoid the use of assert, because we're trying to keep the <cassert>
+  // include out of the mix.
   inline void
   __replacement_assert(const char* __file, int __line, const char* __function,
                       const char* __condition)
@@ -57,12 +68,13 @@ namespace __gnu_debug
                __function, __condition);
     std::abort();
   }
-}
+} // namespace __gnu_debug
+} // namespace std
 
 #define _GLIBCXX_DEBUG_ASSERT(_Condition)                               \
   do {                                                                  \
     if (! (_Condition))                                                 \
-      ::__gnu_debug::__replacement_assert(__FILE__, __LINE__,           \
+      std::__gnu_debug::__replacement_assert(__FILE__, __LINE__,           \
                                   __PRETTY_FUNCTION__,                 \
                                   #_Condition);                        \
   } while (false)
index a69ce621979add2ef4f7394094b2a45089a0c5f5..48cbe1a5b50dd126191668f8aad8693664ab1b49 100644 (file)
@@ -35,6 +35,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
@@ -382,5 +384,6 @@ namespace __gnu_debug_def
     swap(deque<_Tp, _Alloc>& __lhs, deque<_Tp, _Alloc>& __rhs)
     { __lhs.swap(__rhs); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index 2c2035ea880c6353c4a9c9e594cf6874906576c3..b37ee8cf276edc514de5146d9cf108d1d294478c 100644 (file)
 #include <typeinfo>
 #include <debug/debug.h>
 
+namespace std
+{
 namespace __gnu_debug
 {
-  using std::type_info;
-
   /** Determine if the two types are the same. */
   template<typename _Type1, typename _Type2>
     struct __is_same
@@ -386,5 +386,6 @@ namespace __gnu_debug
     { return _Error_formatter(__file, __line); }
   };
 } // namespace __gnu_debug
+} // namespace std
 
 #endif
index 744071120cc17689596fceb3b72e7740089cad65..1abe16300cdefdeeef529fe720da4d9814401182 100644 (file)
 #ifndef _GLIBCXX_DEBUG_FUNCTIONS_H
 #define _GLIBCXX_DEBUG_FUNCTIONS_H 1
 
+#include <bits/c++config.h>
 #include <stddef.h>                       // for ptrdiff_t
 #include <bits/stl_iterator_base_types.h> // for iterator_traits, categories
 #include <bits/cpp_type_traits.h>         // for __is_integer
 
+namespace std
+{
 namespace __gnu_debug
 {
   template<typename _Iterator, typename _Sequence>
@@ -49,7 +52,7 @@ namespace __gnu_debug
   template<typename _Iterator>
     inline bool
     __check_singular(_Iterator& __x)
-    { return __gnu_debug::__check_singular_aux(&__x); }
+    { return __check_singular_aux(&__x); }
 
   /** Non-NULL pointers are nonsingular. */
   template<typename _Tp>
@@ -121,7 +124,7 @@ namespace __gnu_debug
   {
     typedef typename std::iterator_traits<_InputIterator>::iterator_category
       _Category;
-    return __gnu_debug::__valid_range_aux2(__first, __last, _Category());
+    return __valid_range_aux2(__first, __last, _Category());
   }
 
   /** Don't know what these iterators are, or if they are even
@@ -134,7 +137,7 @@ namespace __gnu_debug
     __valid_range(const _InputIterator& __first, const _InputIterator& __last)
     {
       typedef typename std::__is_integer<_InputIterator>::__type _Integral;
-      return __gnu_debug::__valid_range_aux(__first, __last, _Integral());
+      return __valid_range_aux(__first, __last, _Integral());
     }
 
   /** Safe iterators know how to check if they form a valid range. */
@@ -153,7 +156,7 @@ namespace __gnu_debug
     __check_valid_range(const _InputIterator& __first,
                        const _InputIterator& __last)
     {
-      _GLIBCXX_DEBUG_ASSERT(__gnu_debug::__valid_range(__first, __last));
+      _GLIBCXX_DEBUG_ASSERT(__valid_range(__first, __last));
       return __first;
     }
 
@@ -240,7 +243,7 @@ namespace __gnu_debug
     {
       typedef typename std::iterator_traits<_InputIterator>::iterator_category
         _Category;
-      return __gnu_debug::__check_sorted_aux(__first, __last, _Category());
+      return __check_sorted_aux(__first, __last, _Category());
     }
 
   template<typename _InputIterator, typename _Predicate>
@@ -250,7 +253,7 @@ namespace __gnu_debug
     {
       typedef typename std::iterator_traits<_InputIterator>::iterator_category
         _Category;
-      return __gnu_debug::__check_sorted_aux(__first, __last, __pred,
+      return __check_sorted_aux(__first, __last, __pred,
                                             _Category());
     }
 
@@ -282,5 +285,6 @@ namespace __gnu_debug
       return __first == __last;
     }
 } // namespace __gnu_debug
+} // namespace std
 
 #endif
index a6900b5f3c29cf716f5d845660b5817805a93dbf..e02b747a04dbc134b1fbb85ae6f2f1104df24eae 100644 (file)
@@ -1,6 +1,6 @@
 // Debugging hash_map implementation -*- C++ -*-
 
-// Copyright (C) 2003
+// Copyright (C) 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -34,6 +34,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Value, typename _Tp,
@@ -266,5 +268,6 @@ namespace __gnu_debug_def
         hash_map<_Value, _Tp, _HashFcn, _EqualKey, _Alloc>& __y)
     { __x.swap(__y); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index a6db0f2f2d5a5bc477f162f4ea0d636625dd7dd0..5cce135aa43831768a763d7f20620d31c7e147d4 100644 (file)
@@ -1,6 +1,6 @@
 // Debugging hash_multimap implementation -*- C++ -*-
 
-// Copyright (C) 2003
+// Copyright (C) 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -34,6 +34,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Value, typename _Tp,
@@ -257,5 +259,6 @@ namespace __gnu_debug_def
         hash_multimap<_Value, _Tp, _HashFcn, _EqualKey, _Alloc>& __y)
     { __x.swap(__y); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index a1ad151afb05080980f005800083c63702fc060a..83d5619b9cd357c4ed5671fd6ea5dcc8cb10598f 100644 (file)
@@ -1,6 +1,6 @@
 // Debugging hash_multiset implementation -*- C++ -*-
 
-// Copyright (C) 2003
+// Copyright (C) 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -34,6 +34,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Value,
@@ -232,5 +234,6 @@ template<typename _Value, typename _HashFcn, typename _EqualKey, typename _Alloc
        hash_multiset<_Value, _HashFcn, _EqualKey, _Alloc>& __y)
   { __x.swap(__y); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index aa62a2ea7e3714c06b71058d560ff4038cf1b18b..e1dd83bc646066867b43e020ad582015ece29690 100644 (file)
@@ -1,6 +1,6 @@
 // Debugging hash_set implementation -*- C++ -*-
 
-// Copyright (C) 2003
+// Copyright (C) 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -34,6 +34,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Value,
@@ -241,5 +243,6 @@ namespace __gnu_debug_def
         hash_set<_Value, _HashFcn, _EqualKey, _Alloc>& __y)
     { __x.swap(__y); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index 2e6d0fa51031a36b158bb246ce3a21f582ec26ad..43dc137d1d519cdd41a402edd455a0f56bef3f6f 100644 (file)
@@ -36,6 +36,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
@@ -296,7 +298,7 @@ namespace __gnu_debug_def
       splice(iterator __position, list& __x)
       {
        _GLIBCXX_DEBUG_VERIFY(&__x != this,
-                             _M_message(::__gnu_debug::__msg_self_splice)
+                             _M_message(__gnu_debug::__msg_self_splice)
                              ._M_sequence(*this, "this"));
        this->splice(__position, __x, __x.begin(), __x.end());
       }
@@ -306,13 +308,13 @@ namespace __gnu_debug_def
       {
        __glibcxx_check_insert(__position);
        _GLIBCXX_DEBUG_VERIFY(__x.get_allocator() == this->get_allocator(),
-                             _M_message(::__gnu_debug::__msg_splice_alloc)
+                             _M_message(__gnu_debug::__msg_splice_alloc)
                            ._M_sequence(*this)._M_sequence(__x, "__x"));
        _GLIBCXX_DEBUG_VERIFY(__i._M_dereferenceable(),
-                             _M_message(::__gnu_debug::__msg_splice_bad)
+                             _M_message(__gnu_debug::__msg_splice_bad)
                              ._M_iterator(__i, "__i"));
        _GLIBCXX_DEBUG_VERIFY(__i._M_attached_to(&__x),
-                             _M_message(::__gnu_debug::__msg_splice_other)
+                             _M_message(__gnu_debug::__msg_splice_other)
                             ._M_iterator(__i, "__i")._M_sequence(__x, "__x"));
 
        // _GLIBCXX_RESOLVE_LIB_DEFECTS
@@ -327,17 +329,17 @@ namespace __gnu_debug_def
        __glibcxx_check_insert(__position);
        __glibcxx_check_valid_range(__first, __last);
        _GLIBCXX_DEBUG_VERIFY(__first._M_attached_to(&__x),
-                             _M_message(::__gnu_debug::__msg_splice_other)
+                             _M_message(__gnu_debug::__msg_splice_other)
                              ._M_sequence(__x, "x")
                              ._M_iterator(__first, "first"));
        _GLIBCXX_DEBUG_VERIFY(__x.get_allocator() == this->get_allocator(),
-                             _M_message(::__gnu_debug::__msg_splice_alloc)
+                             _M_message(__gnu_debug::__msg_splice_alloc)
                              ._M_sequence(*this)._M_sequence(__x));
 
        for (iterator __tmp = __first; __tmp != __last; )
          {
            _GLIBCXX_DEBUG_VERIFY(&__x != this || __tmp != __position,
-                               _M_message(::__gnu_debug::__msg_splice_overlap)
+                               _M_message(__gnu_debug::__msg_splice_overlap)
                                  ._M_iterator(__tmp, "position")
                                  ._M_iterator(__first, "first")
                                  ._M_iterator(__last, "last"));
@@ -501,5 +503,6 @@ namespace __gnu_debug_def
     swap(list<_Tp, _Alloc>& __lhs, list<_Tp, _Alloc>& __rhs)
     { __lhs.swap(__rhs); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index 9b279cbf36a3f71025df741aef35f8d1589fa06b..3e24d99cd6ffc22e99ec1c04631b38a276c1729c 100644 (file)
 #define _GLIBCXX_DEBUG_VERIFY(_Condition,_ErrorMessage)                        \
   do {                                                                 \
     if (! (_Condition))                                                        \
-      ::__gnu_debug::_Error_formatter::_M_at(__FILE__, __LINE__)       \
+      std::__gnu_debug::_Error_formatter::_M_at(__FILE__, __LINE__)    \
          ._ErrorMessage._M_error();                                    \
   } while (false)
 
 // Verify that [_First, _Last) forms a valid iterator range.
 #define __glibcxx_check_valid_range(_First,_Last)                      \
-_GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__valid_range(_First, _Last),     \
-                     _M_message(::__gnu_debug::__msg_valid_range)      \
+_GLIBCXX_DEBUG_VERIFY(std::__gnu_debug::__valid_range(_First, _Last),  \
+                     _M_message(std::__gnu_debug::__msg_valid_range)   \
                      ._M_iterator(_First, #_First)                     \
                      ._M_iterator(_Last, #_Last))
 
@@ -63,11 +63,11 @@ _GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__valid_range(_First, _Last),  \
 */
 #define __glibcxx_check_insert(_Position)                              \
 _GLIBCXX_DEBUG_VERIFY(!_Position._M_singular(),                                \
-                     _M_message(::__gnu_debug::__msg_insert_singular) \
+                     _M_message(std::__gnu_debug::__msg_insert_singular) \
                      ._M_sequence(*this, "this")                       \
                      ._M_iterator(_Position, #_Position));             \
 _GLIBCXX_DEBUG_VERIFY(_Position._M_attached_to(this),                  \
-                     _M_message(::__gnu_debug::__msg_insert_different) \
+                     _M_message(std::__gnu_debug::__msg_insert_different) \
                      ._M_sequence(*this, "this")                       \
                      ._M_iterator(_Position, #_Position))
 
@@ -87,11 +87,11 @@ _GLIBCXX_DEBUG_VERIFY(_Position._M_attached_to(this),                       \
 #define __glibcxx_check_insert_range(_Position,_First,_Last)           \
 __glibcxx_check_valid_range(_First,_Last);                             \
 _GLIBCXX_DEBUG_VERIFY(!_Position._M_singular(),                                \
-                     _M_message(::__gnu_debug::__msg_insert_singular) \
+                     _M_message(std::__gnu_debug::__msg_insert_singular) \
                       ._M_sequence(*this, "this")                      \
                      ._M_iterator(_Position, #_Position));             \
 _GLIBCXX_DEBUG_VERIFY(_Position._M_attached_to(this),                  \
-                     _M_message(::__gnu_debug::__msg_insert_different) \
+                     _M_message(std::__gnu_debug::__msg_insert_different) \
                      ._M_sequence(*this, "this")                       \
                      ._M_iterator(_Position, #_Position))
 
@@ -101,11 +101,11 @@ _GLIBCXX_DEBUG_VERIFY(_Position._M_attached_to(this),                     \
 */
 #define __glibcxx_check_erase(_Position)                               \
 _GLIBCXX_DEBUG_VERIFY(_Position._M_dereferenceable(),                  \
-                     _M_message(::__gnu_debug::__msg_erase_bad)        \
+                     _M_message(std::__gnu_debug::__msg_erase_bad)     \
                       ._M_sequence(*this, "this")                      \
                      ._M_iterator(_Position, #_Position));             \
 _GLIBCXX_DEBUG_VERIFY(_Position._M_attached_to(this),                  \
-                     _M_message(::__gnu_debug::__msg_erase_different) \
+                     _M_message(std::__gnu_debug::__msg_erase_different) \
                      ._M_sequence(*this, "this")                       \
                      ._M_iterator(_Position, #_Position))
 
@@ -116,7 +116,7 @@ _GLIBCXX_DEBUG_VERIFY(_Position._M_attached_to(this),                       \
 #define __glibcxx_check_erase_range(_First,_Last)                      \
 __glibcxx_check_valid_range(_First,_Last);                             \
 _GLIBCXX_DEBUG_VERIFY(_First._M_attached_to(this),                     \
-                     _M_message(::__gnu_debug::__msg_erase_different) \
+                     _M_message(std::__gnu_debug::__msg_erase_different) \
                       ._M_sequence(*this, "this")                      \
                      ._M_iterator(_First, #_First)                     \
                      ._M_iterator(_Last, #_Last))
@@ -124,7 +124,7 @@ _GLIBCXX_DEBUG_VERIFY(_First._M_attached_to(this),                  \
 // Verify that the subscript _N is less than the container's size.
 #define __glibcxx_check_subscript(_N)                                  \
 _GLIBCXX_DEBUG_VERIFY(_N < this->size(),                               \
-                     _M_message(::__gnu_debug::__msg_subscript_oob) \
+                     _M_message(std::__gnu_debug::__msg_subscript_oob) \
                       ._M_sequence(*this, "this")                      \
                      ._M_integer(_N, #_N)                              \
                      ._M_integer(this->size(), "size"))
@@ -132,7 +132,7 @@ _GLIBCXX_DEBUG_VERIFY(_N < this->size(),                            \
 // Verify that the container is nonempty
 #define __glibcxx_check_nonempty()                                     \
 _GLIBCXX_DEBUG_VERIFY(! this->empty(),                                 \
-                     _M_message(::__gnu_debug::__msg_empty)    \
+                     _M_message(std::__gnu_debug::__msg_empty) \
                       ._M_sequence(*this, "this"))
 
 // Verify that the < operator for elements in the sequence is a
@@ -150,8 +150,8 @@ _GLIBCXX_DEBUG_ASSERT(_First == _Last || !_Pred(*_First, *_First))
 #define __glibcxx_check_sorted(_First,_Last)                           \
 __glibcxx_check_valid_range(_First,_Last);                             \
 __glibcxx_check_strict_weak_ordering(_First,_Last);                    \
-_GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_sorted(_First, _Last),    \
-                     _M_message(::__gnu_debug::__msg_unsorted) \
+_GLIBCXX_DEBUG_VERIFY(std::__gnu_debug::__check_sorted(_First, _Last), \
+                     _M_message(std::__gnu_debug::__msg_unsorted)      \
                       ._M_iterator(_First, #_First)                    \
                      ._M_iterator(_Last, #_Last))
 
@@ -160,8 +160,8 @@ _GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_sorted(_First, _Last), \
 #define __glibcxx_check_sorted_pred(_First,_Last,_Pred)                        \
 __glibcxx_check_valid_range(_First,_Last);                             \
 __glibcxx_check_strict_weak_ordering_pred(_First,_Last,_Pred);         \
-_GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_sorted(_First, _Last, _Pred), \
-                     _M_message(::__gnu_debug::__msg_unsorted_pred) \
+_GLIBCXX_DEBUG_VERIFY(std::__gnu_debug::__check_sorted(_First, _Last, _Pred), \
+                     _M_message(std::__gnu_debug::__msg_unsorted_pred) \
                       ._M_iterator(_First, #_First)                    \
                      ._M_iterator(_Last, #_Last)                       \
                      ._M_string(#_Pred))
@@ -170,9 +170,9 @@ _GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_sorted(_First, _Last, _Pred), \
     w.r.t. the value _Value. */
 #define __glibcxx_check_partitioned(_First,_Last,_Value)               \
 __glibcxx_check_valid_range(_First,_Last);                             \
-_GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_partitioned(_First, _Last,        \
-                                                        _Value),       \
-                     _M_message(::__gnu_debug::__msg_unpartitioned) \
+_GLIBCXX_DEBUG_VERIFY(std::__gnu_debug::__check_partitioned(_First, _Last, \
+                                                           _Value),    \
+                     _M_message(std::__gnu_debug::__msg_unpartitioned) \
                      ._M_iterator(_First, #_First)                     \
                      ._M_iterator(_Last, #_Last)                       \
                      ._M_string(#_Value))
@@ -181,9 +181,9 @@ _GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_partitioned(_First, _Last,     \
     w.r.t. the value _Value and predicate _Pred. */
 #define __glibcxx_check_partitioned_pred(_First,_Last,_Value,_Pred)    \
 __glibcxx_check_valid_range(_First,_Last);                             \
-_GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_partitioned(_First, _Last,        \
+_GLIBCXX_DEBUG_VERIFY(std::__gnu_debug::__check_partitioned(_First, _Last, \
                                                         _Value, _Pred), \
-                     _M_message(::__gnu_debug::__msg_unpartitioned_pred) \
+                     _M_message(std::__gnu_debug::__msg_unpartitioned_pred) \
                      ._M_iterator(_First, #_First)                     \
                      ._M_iterator(_Last, #_Last)                       \
                      ._M_string(#_Pred)                                \
@@ -192,8 +192,8 @@ _GLIBCXX_DEBUG_VERIFY(::__gnu_debug::__check_partitioned(_First, _Last,     \
 // Verify that the iterator range [_First, _Last) is a heap
 #define __glibcxx_check_heap(_First,_Last)                             \
 __glibcxx_check_valid_range(_First,_Last);                             \
-_GLIBCXX_DEBUG_VERIFY(::std::__is_heap(_First, _Last),         \
-                     _M_message(::__gnu_debug::__msg_not_heap) \
+_GLIBCXX_DEBUG_VERIFY(std::__is_heap(_First, _Last),           \
+                     _M_message(std::__gnu_debug::__msg_not_heap)      \
                      ._M_iterator(_First, #_First)                     \
                      ._M_iterator(_Last, #_Last))
 
@@ -201,8 +201,8 @@ _GLIBCXX_DEBUG_VERIFY(::std::__is_heap(_First, _Last),              \
     w.r.t. the predicate _Pred. */
 #define __glibcxx_check_heap_pred(_First,_Last,_Pred)                  \
 __glibcxx_check_valid_range(_First,_Last);                             \
-_GLIBCXX_DEBUG_VERIFY(::std::__is_heap(_First, _Last, _Pred),          \
-                     _M_message(::__gnu_debug::__msg_not_heap_pred) \
+_GLIBCXX_DEBUG_VERIFY(std::__is_heap(_First, _Last, _Pred),            \
+                     _M_message(std::__gnu_debug::__msg_not_heap_pred) \
                       ._M_iterator(_First, #_First)                    \
                      ._M_iterator(_Last, #_Last)                       \
                      ._M_string(#_Pred))
index e0722db6c4f4b37a629c22568fc978fe20ba1013..75dd340b56f27861d473c7c186e21f71f87038ac 100644 (file)
@@ -35,6 +35,8 @@
 #include <debug/safe_iterator.h>
 #include <utility>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Key, typename _Tp, typename _Compare = std::less<_Key>,
@@ -323,5 +325,6 @@ namespace __gnu_debug_def
         map<_Key,_Tp,_Compare,_Allocator>& __rhs)
     { __lhs.swap(__rhs); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index 89f5e87ad34154bbd99de80c755b8f77cc2253fb..24f10f5828f0e57771104d64d9fb3a808630a331 100644 (file)
@@ -35,6 +35,8 @@
 #include <debug/safe_iterator.h>
 #include <utility>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Key, typename _Tp, typename _Compare = std::less<_Key>,
@@ -310,5 +312,6 @@ namespace __gnu_debug_def
         multimap<_Key,_Tp,_Compare,_Allocator>& __rhs)
     { __lhs.swap(__rhs); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index 7353be94dfad7d1241309703feab788cd5c7d556..32ea0b9eb4704f4d3765603a5994eb17d74c2f04 100644 (file)
@@ -35,6 +35,8 @@
 #include <debug/safe_iterator.h>
 #include <utility>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Key, typename _Compare = std::less<_Key>,
@@ -316,5 +318,6 @@ namespace __gnu_debug_def
         multiset<_Key,_Compare,_Allocator>& __y)
     { return __x.swap(__y); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index b42a6c9c9924f2216cbd439341019a340c95c78c..41ab648f5b95eb7e59e276cbdc37e4b5946d12be 100644 (file)
@@ -1,6 +1,6 @@
 // Safe sequence/iterator base implementation  -*- 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
@@ -31,6 +31,8 @@
 #ifndef _GLIBCXX_DEBUG_SAFE_BASE_H
 #define _GLIBCXX_DEBUG_SAFE_BASE_H 1
 
+namespace std
+{
 namespace __gnu_debug
 {
   class _Safe_sequence_base;
@@ -203,5 +205,6 @@ namespace __gnu_debug
     { if (++_M_version == 0) _M_version = 1; }
   };
 } // namespace __gnu_debug
+} // namespace std
 
 #endif
index c497c113c888e190e78ce4f381df981df3a4d6e9..bcd7324cf816827028f2d7d5f0a9e12d477f2ded 100644 (file)
 #include <bits/stl_pair.h>
 #include <bits/cpp_type_traits.h>
 
+namespace std
+{
 namespace __gnu_debug
 {
-  using std::iterator_traits;
-  using std::pair;
-
   /** Iterators that derive from _Safe_iterator_base but that aren't
    *  _Safe_iterators can be determined singular or non-singular via
    *  _Safe_iterator_base.
@@ -629,6 +628,7 @@ namespace __gnu_debug
              const _Safe_iterator<_Iterator, _Sequence>& __i)
     { return __i + __n; }
 } // namespace __gnu_debug
+} // namespace std
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 #  include <debug/safe_iterator.tcc>
index da4d413b7e3d01c7a8ce4a663645c6e2d810c1c5..c5d49e0f2997a8247bf3f900346f820a464ae377 100644 (file)
@@ -1,6 +1,6 @@
 // Debugging iterator implementation (out of line) -*- 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
@@ -36,6 +36,8 @@
 #ifndef _GLIBCXX_DEBUG_SAFE_ITERATOR_TCC
 #define _GLIBCXX_DEBUG_SAFE_ITERATOR_TCC 1
 
+namespace std
+{
 namespace __gnu_debug
 {
   template<typename _Iterator, typename _Sequence>
@@ -135,6 +137,7 @@ namespace __gnu_debug
        }
     }
 } // namespace __gnu_debug
+} // namespace std
 
 #endif
 
index 82c5ae0047fb9b2761dba2b51870243451bc0394..23eff2c4bef527b3365cbd256f20b3fa32aa7839 100644 (file)
@@ -36,6 +36,8 @@
 #include <debug/functions.h>
 #include <debug/safe_base.h>
 
+namespace std
+{
 namespace __gnu_debug
 {
   template<typename _Iterator, typename _Sequence>
@@ -178,5 +180,6 @@ namespace __gnu_debug
         }
       }
 } // namespace __gnu_debug
+} // namespace std
 
 #endif
index d89a165ee4e588128e894c77f32b586282a73ba4..f9a21c6b5a1beb141858784a5bf5e2c8c25c8fdd 100644 (file)
@@ -35,6 +35,8 @@
 #include <debug/safe_iterator.h>
 #include <utility>
 
+namespace std 
+{
 namespace __gnu_debug_def
 {
   template<typename _Key, typename _Compare = std::less<_Key>,
@@ -321,5 +323,6 @@ namespace __gnu_debug_def
         set<_Key,_Compare,_Allocator>& __y)
     { return __x.swap(__y); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index 18f90d068bdd9dad626244420066bdef472f4e37..e098d7a0b29351cf98b5d9aaa2e8d2959411788c 100644 (file)
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug
 {
-template<typename _CharT, typename _Traits = std::char_traits<_CharT>,
+  template<typename _CharT, typename _Traits = std::char_traits<_CharT>,
             typename _Allocator = std::allocator<_CharT> >
     class basic_string
     : public std::basic_string<_CharT, _Traits, _Allocator>,
@@ -204,7 +206,7 @@ template<typename _CharT, typename _Traits = std::char_traits<_CharT>,
     operator[](size_type __pos) const
     {
       _GLIBCXX_DEBUG_VERIFY(__pos <= this->size(),
-                           _M_message(::__gnu_debug::__msg_subscript_oob)
+                           _M_message(__gnu_debug::__msg_subscript_oob)
                            ._M_sequence(*this, "this")
                            ._M_integer(__pos, "__pos")
                            ._M_integer(this->size(), "size"));
@@ -219,7 +221,7 @@ template<typename _CharT, typename _Traits = std::char_traits<_CharT>,
 #else
       // as an extension v3 allows s[s.size()] when s is non-const.
       _GLIBCXX_DEBUG_VERIFY(__pos <= this->size(),
-                           _M_message(::__gnu_debug::__msg_subscript_oob)
+                           _M_message(__gnu_debug::__msg_subscript_oob)
                            ._M_sequence(*this, "this")
                            ._M_integer(__pos, "__pos")
                            ._M_integer(this->size(), "size"));
@@ -1014,5 +1016,6 @@ template<typename _CharT, typename _Traits = std::char_traits<_CharT>,
 #endif
 
 } // namespace __gnu_debug
+} // namespace std
 
 #endif
index f2b36182423f009d43310a57acb7f5d32858e1bf..5a1fc92348b392724827c2dd0fd65494e11b03e7 100644 (file)
@@ -36,6 +36,8 @@
 #include <debug/safe_sequence.h>
 #include <debug/safe_iterator.h>
 
+namespace std
+{
 namespace __gnu_debug_def
 {
   template<typename _Tp,
@@ -412,5 +414,6 @@ namespace __gnu_debug_def
     swap(vector<_Tp, _Alloc>& __lhs, vector<_Tp, _Alloc>& __rhs)
     { __lhs.swap(__rhs); }
 } // namespace __gnu_debug_def
+} // namespace std
 
 #endif
index 44026209544bf53c067ffcbe849aa13e4b902961..712a4edc7fdfd25a7b39d1e0ccdfefb42e736b08 100644 (file)
@@ -1,6 +1,6 @@
 // Algorithm extensions -*- 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
@@ -65,8 +65,8 @@
 
 #include <algorithm>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::ptrdiff_t;
   using std::min;
   using std::pair;
@@ -521,6 +521,7 @@ namespace __gnu_cxx
          return false;
       return true;
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _EXT_ALGORITHM */
index 77f5b5cc87260a8b40db81de03f0d6bf154ad3c8..02af57893fce68d5c7107ad91b9a0598f3df5970 100644 (file)
@@ -39,8 +39,8 @@
 #include <bits/functexcept.h>
 #include <tr1/array>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /// @brief  Base class.
  template<typename _Tp>
     class array_allocator_base
@@ -140,6 +140,7 @@ namespace __gnu_cxx
     operator!=(const array_allocator<_Tp, _Array>&, 
               const array_allocator<_Tp, _Array>&)
     { return false; }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 7860b6dbf97129035b639d8b3dda99dd2719ca99..6d80c99e509864961c0deb791ed9bcab1d4d678a 100644 (file)
@@ -69,8 +69,8 @@
 #endif
 
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
 #if defined __GTHREADS
   namespace
   {
@@ -1286,8 +1286,7 @@ namespace __gnu_cxx
     bitmap_allocator<_Tp>::_S_mut;
 #endif
 
-
-}
+_GLIBCXX_END_NAMESPACE
 
 #endif 
 
index 82a5a7b08704917f4294cd1b1419aa86d45cd040..a83b747000c8966bd665f3f62dc14422e8971bc2 100644 (file)
@@ -42,8 +42,8 @@
   // Define this here so codecvt.cc can have _S_max_size definition.
 #define _GLIBCXX_USE_ENCODING_STATE 1
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /// @brief  Extension to use icov for dealing with character encodings.
   // This includes conversions and comparisons between various character
   // sets.  This object encapsulates data that may need to be shared between
@@ -213,10 +213,12 @@ namespace __gnu_cxx
       typedef encoding_state                           state_type;
       typedef typename std::fpos<state_type>           pos_type;
     };
-} // namespace __gnu_cxx
 
-namespace std
-{
+_GLIBCXX_END_NAMESPACE
+
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using __gnu_cxx::encoding_state;
 
   /// @brief  codecvt<InternT, _ExternT, encoding_state> specialization.
@@ -501,5 +503,6 @@ namespace std
     codecvt<_InternT, _ExternT, encoding_state>::
     do_max_length() const throw()
     { return 1; }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
index a0187a0030534d9d26872709465c5f309601ad82..aa96507472294387b8eb77667e668ece29375019 100644 (file)
@@ -1,6 +1,6 @@
 // Allocators -*- 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
@@ -50,8 +50,8 @@
 
 #include <stdexcept>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /**
    *  @brief  A meta-allocator with debugging bits, as per [20.4].
    *
@@ -120,6 +120,7 @@ namespace __gnu_cxx
          throw std::runtime_error("debug_allocator::deallocate null pointer");
       }
     };
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 18132c371d119c54a6d275133d8362a51f80d424..c100f59cbd6448a8b9f8bbe9e2c7afadb148506f 100644 (file)
@@ -1,6 +1,6 @@
 // Functional extensions -*- 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
@@ -65,8 +65,8 @@
 
 #include <functional>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::unary_function;
   using std::binary_function;
   using std::mem_fun1_t;
@@ -74,11 +74,11 @@ namespace __gnu_cxx
   using std::mem_fun1_ref_t;
   using std::const_mem_fun1_ref_t;
 
-  /** The @c identity_element functions are not part of the C++ standard; SGI
-   *  provided them as an extension.  Its argument is an operation, and its
-   *  return value is the identity element for that operation.  It is overloaded
-   *  for addition and multiplication, and you can overload it for your own
-   *  nefarious operations.
+  /** The @c identity_element functions are not part of the C++
+   *  standard; SGI provided them as an extension.  Its argument is an
+   *  operation, and its return value is the identity element for that
+   *  operation.  It is overloaded for addition and multiplication,
+   *  and you can overload it for your own nefarious operations.
    *
    *  @addtogroup SGIextensions
    *  @{
@@ -420,6 +420,8 @@ namespace __gnu_cxx
     inline const_mem_fun1_ref_t<_Ret, _Tp, _Arg>
     mem_fun1_ref(_Ret (_Tp::*__f)(_Arg) const)
     { return const_mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
+
 #endif
 
index 6933fea64f936d11307b7b1b6341bd85d73acd0e..16c045807547427f9678ce88c2157582c1d6d31f 100644 (file)
@@ -1,6 +1,6 @@
 // 'struct hash' from SGI -*- 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
@@ -63,8 +63,8 @@
 
 #include <cstddef>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::size_t;
 
   template<class _Key>
@@ -166,6 +166,7 @@ namespace __gnu_cxx
       operator()(unsigned long __x) const
       { return __x; }
     };
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 3340cc36a71af8a2ac2de6005e50a38da56623bc..6e2b5b83081fb112c497ae512be49370debf71aa 100644 (file)
@@ -64,8 +64,8 @@
 #include <ext/hashtable.h>
 #include <bits/concept_check.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::equal_to;
   using std::allocator;
   using std::pair;
@@ -438,7 +438,7 @@ namespace __gnu_cxx
       end() const
       { return _M_ht.end(); }
 
-public:
+    public:
       iterator
       insert(const value_type& __obj)
       { return _M_ht.insert_equal(__obj); }
@@ -504,7 +504,7 @@ public:
       size_type
       elems_in_bucket(size_type __n) const
       { return _M_ht.elems_in_bucket(__n); }
-};
+    };
 
   template <class _Key, class _Tp, class _HF, class _EqKey, class _Alloc>
     inline bool
@@ -524,13 +524,12 @@ public:
         hash_multimap<_Key, _Tp, _HashFcn, _EqlKey, _Alloc>& __hm2)
     { __hm1.swap(__hm2); }
 
-} // namespace __gnu_cxx
+_GLIBCXX_END_NAMESPACE
 
-namespace std
-{
-// Specialization of insert_iterator so that it will work for hash_map
-// and hash_multimap.
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
+  // Specialization of insert_iterator so that it will work for hash_map
+  // and hash_multimap.
   template <class _Key, class _Tp, class _HashFn,  class _EqKey, class _Alloc>
     class insert_iterator<__gnu_cxx::hash_map<_Key, _Tp, _HashFn,
                                              _EqKey, _Alloc> >
@@ -616,7 +615,8 @@ namespace std
       operator++(int)
       { return *this; }
     };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #ifdef _GLIBCXX_DEBUG
 # include <debug/hash_map>
index 1179e885aab2621c3732f3333c718914de208cd1..178fb85ab40122aba58f5c5710f5bbe6cea894f3 100644 (file)
@@ -64,8 +64,8 @@
 #include <ext/hashtable.h>
 #include <bits/concept_check.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::equal_to;
   using std::allocator;
   using std::pair;
@@ -490,10 +490,10 @@ public:
         hash_multiset<_Val, _HashFcn, _EqualKey, _Alloc>& __hs2)
     { __hs1.swap(__hs2); }
 
-} // namespace __gnu_cxx
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
-namespace std
-{
   // Specialization of insert_iterator so that it will work for hash_set
   // and hash_multiset.
 
@@ -582,7 +582,8 @@ namespace std
       insert_iterator<_Container>&
       operator++(int) { return *this; }
     };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #ifdef _GLIBCXX_DEBUG
 # include <debug/hash_set>
index f6e3fd66c9625e109362258711b42e0d937a31d4..3706f80fc5235433b96973bf8d6a93b3252727d3 100644 (file)
@@ -1,6 +1,6 @@
 // Hashtable implementation used by containers -*- 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
@@ -70,8 +70,8 @@
 #include <bits/stl_function.h>
 #include <ext/hash_fun.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::size_t;
   using std::ptrdiff_t;
   using std::forward_iterator_tag;
@@ -1125,6 +1125,7 @@ namespace __gnu_cxx
          __throw_exception_again;
        }
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index e6334ad0fa2c7bb0a8c4715acd3724a4a139e279..b59e5ca3449017812c614c23b629368579a91680 100644 (file)
@@ -1,6 +1,6 @@
 // HP/SGI iterator extensions -*- 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
@@ -66,8 +66,8 @@
 #include <bits/concept_check.h>
 #include <iterator>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   // There are two signatures for distance.  In addition to the one
   // taking two iterators and returning a result, there is another
   // taking two iterators and a reference-to-result variable, and
@@ -111,7 +111,8 @@ namespace __gnu_cxx
       // concept requirements -- taken care of in __distance
       __distance(__first, __last, __n, std::__iterator_category(__first));
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
 
index 6d66c26d850d98509292c6dbf1e9840ef51d4955..8143539778875a429935bbff3e119593f9bdf4b3 100644 (file)
@@ -1,6 +1,6 @@
 // Allocator that wraps "C" malloc -*- 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
@@ -38,8 +38,8 @@
 #include <new>
 #include <bits/functexcept.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /**
    *  @brief  An allocator that uses malloc.
    *
@@ -120,6 +120,7 @@ namespace __gnu_cxx
     inline bool
     operator!=(const malloc_allocator<_Tp>&, const malloc_allocator<_Tp>&)
     { return false; }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index deb77f84ece893a37b534a9b96e7067e72dcc4d6..0755d897507ff0a11ff391c0911ce0b87d1c9453 100644 (file)
@@ -1,6 +1,6 @@
 // Memory extensions -*- 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
@@ -66,8 +66,8 @@
 #include <memory>
 #include <bits/stl_tempbuf.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::ptrdiff_t;
   using std::pair;
   using std::__iterator_category;
@@ -192,7 +192,8 @@ namespace __gnu_cxx
       /// Destroys objects and frees storage.
       ~temporary_buffer() { }
     };
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
 
index 014e62a57c19072d870a0374eede842bfe7fc6bc..1b189c37ca6fec3e90831c5fd538e79e3837f6f6 100644 (file)
@@ -40,8 +40,8 @@
 #include <bits/gthr.h>
 #include <bits/atomicity.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   typedef void (*__destroy_handler)(void*);
 
   /// @brief  Base class for pool object.
@@ -729,6 +729,7 @@ namespace __gnu_cxx
     { return false; }
 
 #undef __thread_default
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 40122c22054efbb37c16901d138c8370f1cae02f..b761b0041c6a26d4687d548e7d1120c2361215bc 100644 (file)
@@ -1,6 +1,6 @@
 // Allocator that wraps operator new -*- 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 <new>
 #include <bits/functexcept.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /**
    *  @brief  An allocator that uses global new, as per [20.4].
    *
@@ -116,6 +116,7 @@ namespace __gnu_cxx
     inline bool
     operator!=(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
     { return false; }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 0f112c2d6e1eaebebfd2d2cabd3e260453f800a0..290d032836a7d2458fde7cc3086718c700f61b46 100644 (file)
@@ -1,6 +1,6 @@
 // Numeric extensions -*- 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
@@ -68,8 +68,8 @@
 
 #include <ext/functional> // For identity_element
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   // Returns __x ** __n, where __n >= 0.  _Note that "multiplication"
   // is required to be associative, but not necessarily commutative.
   template<typename _Tp, typename _Integer, typename _MonoidOperation>
@@ -144,7 +144,8 @@ namespace __gnu_cxx
       while (__first != __last)
        *__first++ = __value++;
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
 
index 8b9a5688a599f643300b08e9980af920be6b4506..236e349cd44e69795f02cd04b28b7bdfaf21a05c 100644 (file)
@@ -39,8 +39,8 @@
 
 #include <string>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   // POD character abstraction.
   // NB: The char_type parameter is a subset of int_type, as to allow
   // int_type to properly hold the full range of char_type values as
@@ -83,10 +83,11 @@ namespace __gnu_cxx
     inline bool
     operator<(const character<V, I, S>& lhs, const character<V, I, S>& rhs)
     { return lhs.value < rhs.value; }
-} // namespace __gnu_cxx
 
-namespace std
-{
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /// char_traits<__gnu_cxx::character> specialization.
   template<typename V, typename I, typename S>
     struct char_traits<__gnu_cxx::character<V, I, S> >
@@ -180,6 +181,7 @@ namespace std
       not_eof(const int_type& __c)
       { return eq_int_type(__c, eof()) ? int_type() : __c; }
     };
-}
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index d8bca1cbb5b7d95e8188c1cf8e8a3d94c3b7d039..e11c1663d585730ba685c483539bf2db3d571ba8 100644 (file)
@@ -1,6 +1,6 @@
 // Allocators -*- 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
@@ -54,8 +54,8 @@
 #include <bits/atomicity.h>
 #include <bits/concurrence.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /**
    *  @brief  Base class for __pool_alloc.
    *
@@ -250,6 +250,7 @@ namespace __gnu_cxx
            }
        }
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 31c84315a7b3db56dbff584e3fba4ed567b22d5b..22dd7cd01992ce6421924371441816df43ee1711 100644 (file)
@@ -1,6 +1,6 @@
 // rb_tree extension -*- C++ -*-
 
-// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+// Copyright (C) 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
@@ -65,8 +65,8 @@
 
 #include <bits/stl_tree.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::_Rb_tree;
   using std::allocator;
 
@@ -92,6 +92,7 @@ namespace __gnu_cxx
 
       ~rb_tree() { }
     };
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 43a69c2c1b68f059f3570ca5f1e511eaf1b0b7d1..a264c1ef0ece4831cfff8795b7be3dbd61d1e203 100644 (file)
@@ -38,8 +38,8 @@
 
 #include <bits/atomicity.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /**
    *  @if maint
    *  Documentation?  What's that?
@@ -696,6 +696,7 @@ namespace __gnu_cxx
        return true;
       return false;
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _RC_STRING_BASE_H */
index e4ad50de62f6b726462cd197e5f02620522584e8..35be37687a54ecbc76e01e0bcd063ddc030fef55 100644 (file)
@@ -66,8 +66,8 @@
 
 #include <ext/memory> // For uninitialized_copy_n
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::size_t;
   using std::ptrdiff_t;
   using std::allocator;
@@ -2894,7 +2894,7 @@ protected:
       }
     };
 
-} // namespace __gnu_cxx
+_GLIBCXX_END_NAMESPACE
 
 # include <ext/ropeimpl.h>
 
index c4b2eedf1228185fba98336e6a183bc3d5750f6b..9371dbbac83389043df96ab9e5ff6f9def649cbf 100644 (file)
@@ -1,6 +1,6 @@
 // SGI's rope class implementation -*- 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
@@ -53,8 +53,8 @@
 #include <ext/memory> // For uninitialized_copy_n
 #include <ext/numeric> // For power
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::size_t;
   using std::printf;
   using std::basic_ostream;
@@ -1699,8 +1699,4 @@ namespace __gnu_cxx
   { _Rope_rotate(__first, __middle, __last); }
 # endif
 
-} // namespace __gnu_cxx
-
-// Local Variables:
-// mode:C++
-// End:
+_GLIBCXX_END_NAMESPACE
index 49ce77ea6ea8d7fc7b674e65f5853ad1f33a8143..06bf7b1cb09738773e9c854961c5df2a38b38079 100644 (file)
@@ -55,8 +55,8 @@
 #include <bits/stl_uninitialized.h>
 #include <bits/concept_check.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using std::size_t;
   using std::ptrdiff_t;
   using std::_Construct;
@@ -1023,13 +1023,12 @@ namespace __gnu_cxx
          }
       }
 
-} // namespace __gnu_cxx
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
-namespace std
-{
   // Specialization of insert_iterator so that insertions will be constant
   // time rather than linear time.
-
   template <class _Tp, class _Alloc>
     class insert_iterator<__gnu_cxx::slist<_Tp, _Alloc> >
     {
@@ -1073,7 +1072,8 @@ namespace std
       insert_iterator<_Container>&
       operator++(int)
       { return *this; }
-};
+    };
+
+_GLIBCXX_END_NAMESPACE
 
-} // namespace std
 #endif
index bb0d746eca511b40eca82706f93bb7c21f84e960..c21dbbd3ab4cf1d04781f2010f0c2054cedbd846 100644 (file)
@@ -36,8 +36,8 @@
 #ifndef _SSO_STRING_BASE_H
 #define _SSO_STRING_BASE_H 1
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   template<typename _CharT, typename _Traits, typename _Alloc>
     class __sso_string_base
     : protected __vstring_utility<_CharT, _Traits, _Alloc>
@@ -567,6 +567,7 @@ namespace __gnu_cxx
        return true;
       return false;
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _SSO_STRING_BASE_H */
index 5a6d22a4ad68562f55444f28c1859d5d8d5e703a..312a2177111044342876818779139542d74b64be 100644 (file)
@@ -1,6 +1,6 @@
 // File descriptor layer for filebuf -*- C++ -*-
 
-// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+// Copyright (C) 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
@@ -38,8 +38,8 @@
 
 #include <fstream>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /**
    *  @brief Provides a layer of compatibility for C/POSIX.
    *
@@ -156,6 +156,7 @@ namespace __gnu_cxx
          this->_M_set_buffer(-1);
        }
     }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index c51c6781a55e497617b87d165251a6de4394d947..f0ec12c3a695aaf66eeca6c121468dd56810c57c 100644 (file)
@@ -1,6 +1,6 @@
 // Iostreams wrapper for stdio FILE* -*- 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
@@ -44,8 +44,8 @@
 #include <cwchar>
 #endif
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /// @brief  class stdio_sync_filebuf.
   template<typename _CharT, typename _Traits = std::char_traits<_CharT> >
     class stdio_sync_filebuf : public std::basic_streambuf<_CharT, _Traits>
@@ -277,6 +277,7 @@ namespace __gnu_cxx
   extern template class stdio_sync_filebuf<wchar_t>;
 #endif
 #endif
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif
index 5bd7c9db699936af22c795326de1b45eb5fc1cb3..143efc02cdf4b77011b0bc2388ec763f2416f854 100644 (file)
@@ -46,8 +46,8 @@
 #ifndef TYPELIST_HPP
 #define TYPELIST_HPP
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   // XXX namespace typelist
   // struct typelist -> struct node 
 
@@ -87,11 +87,12 @@ namespace __gnu_cxx
 
   template<typename Typelist, template<typename T> class Transform>
     struct transform;
-}
 
+_GLIBCXX_END_NAMESPACE
+
+
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
 
-namespace __gnu_cxx
-{
 namespace detail
 {
   // #include <ext/detail/type_utils.h>
@@ -264,11 +265,12 @@ namespace detail
       typedef typename append<Hd, typelist<rest> >::type::root type;
     };
 } // namespace detail
-}
 
+_GLIBCXX_END_NAMESPACE
+
+
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
 
-namespace __gnu_cxx
-{
   template<typename Fn, typename Typelist>
     struct apply
     {
@@ -345,7 +347,8 @@ namespace __gnu_cxx
     public:
       typedef typelist<typename transform_type::type>          type;
     };
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 
 #define _GLIBCXX_TYPELIST_CHAIN1(X0) __gnu_cxx::chain<X0, __gnu_cxx::null_type>
index 1c59e717915f46530136dcf5a900db60dbd391bb..6b04761888eab7cf552006b941a09b0a2b6065a6 100644 (file)
@@ -40,8 +40,8 @@
 #include <ext/rc_string_base.h>
 #include <ext/sso_string_base.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /**
    *  @class __versa_string vstring.h
    *  @brief  Managing sequences of characters and character-like objects.
@@ -2106,10 +2106,10 @@ namespace __gnu_cxx
         __versa_string<_CharT, _Traits, _Alloc, _Base>& __rhs)
     { __lhs.swap(__rhs); }
 
-} // namespace __gnu_cxx
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
-namespace std
-{
   /**
    *  @brief  Read stream into a string.
    *  @param is  Input stream.
@@ -2183,7 +2183,7 @@ namespace std
            __gnu_cxx::__versa_string<_CharT, _Traits, _Alloc, _Base>& __str)
     { return getline(__is, __str, __is.widen('\n')); }      
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 # include "vstring.tcc" 
index 2fed7e2e14dc26fc2d588cc17348ff74b2629d42..3ce552abbf6a541002ae4d35ef4412501dd63730 100644 (file)
@@ -38,8 +38,8 @@
 
 #pragma GCC system_header
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   template<typename _CharT, typename _Traits, typename _Alloc,
           template <typename, typename, typename> class _Base>
     const typename __versa_string<_CharT, _Traits, _Alloc, _Base>::size_type
@@ -536,10 +536,10 @@ namespace __gnu_cxx
       return __r;
     }
 
-} // namespace __gnu_cxx
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
-namespace std
-{
   template<typename _CharT, typename _Traits, typename _Alloc,
            template <typename, typename, typename> class _Base>
     basic_istream<_CharT, _Traits>&
@@ -714,6 +714,6 @@ namespace std
       return __in;
     }      
   
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif // _VSTRING_TCC
index 08ec94a00d5c28368160ff5a240f947a797570f3..953700676466e0bba8e088d8e70548a402aee40e 100644 (file)
@@ -42,8 +42,8 @@
 #include <bits/char_traits.h>
 #include <memory>      // For allocator.
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   template<typename _CharT, typename _Traits, typename _Alloc>
     class __sso_string_base;
 
@@ -69,6 +69,7 @@ namespace __gnu_cxx
   __versa_string<wchar_t, std::char_traits<wchar_t>,
                 std::allocator<wchar_t>, __rc_string_base> __wrc_string;
 #endif  
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _VSTRING_FWD_H */
index 2a8c45c9cf647b598093511c41b8e379f768d311..30ec39ba85187c7a36c2c6986e5cc762c0c19d8f 100644 (file)
@@ -45,8 +45,8 @@
 #include <locale>
 #include <algorithm> // For std::distance, srd::search.
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   template<typename _CharT, typename _Traits, typename _Alloc>
     struct __vstring_utility
     {
@@ -194,6 +194,7 @@ namespace __gnu_cxx
       _S_copy_chars(_CharT* __p, const _CharT* __k1, const _CharT* __k2)
       { _S_copy(__p, __k1, __k2 - __k1); }
     };
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _VSTRING_UTIL_H */
index a32af6b65b6b75eefb63f4892f3055dfe0ebc95b..c1cfadad7bd8918e2e0bf7fdc4aa09eab3ca49ce 100644 (file)
@@ -63,8 +63,8 @@
  ((__n) < 1 ? 0 : ((__n) + _GLIBCXX_BITSET_BITS_PER_WORD - 1) \
                   / _GLIBCXX_BITSET_BITS_PER_WORD)
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   /**
    *  @if maint
    *  Base class, general case.  It is a class inveriant that _Nw will be
@@ -1291,7 +1291,8 @@ namespace _GLIBCXX_STD
       return __os << __tmp;
     }
   //@}
-} // namespace std
+
+_GLIBCXX_END_NESTED_NAMESPACE
 
 #undef _GLIBCXX_BITSET_WORDS
 #undef _GLIBCXX_BITSET_BITS_PER_WORD
index c7aab0e6e68981b177ec86787ebf19988bfa26f8..dc0f373c2502068421a0b300413df0464d1e8724 100644 (file)
@@ -49,8 +49,8 @@
 #include <cmath>
 #include <sstream>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Forward declarations.
   template<typename _Tp> class complex;
   template<> class complex<float>;
@@ -1483,6 +1483,7 @@ namespace std
   inline
   complex<long double>::complex(const complex<double>& __z)
   : _M_value(__z.__rep()) { }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _GLIBCXX_COMPLEX */
index a93f9a43e0567aaf7361d444e8a7ecf72b2f480b..1ae98c0bece13b3bea7c4ca80bbe882a2f3256ca 100644 (file)
@@ -48,8 +48,8 @@
 #include <bits/basic_file.h>
 #include <bits/gthr.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // [27.8.1.1] template class basic_filebuf
   /**
    *  @brief  The actual work of input and output (for files).
@@ -776,7 +776,8 @@ namespace std
          this->setstate(ios_base::failbit);
       }
     };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 # include <bits/fstream.tcc>
index 6363df61110d51f08f9cfd89b38599dad0c7e907..a10a1b89a51621d3d28f64db2316db69d407332e 100644 (file)
@@ -1,6 +1,6 @@
 // Standard stream manipulators -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -45,8 +45,8 @@
 #include <istream>
 #include <functional>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // [27.6.3] standard manipulators
   // Also see DR 183.
 
@@ -294,6 +294,7 @@ namespace std
   extern template wistream& operator>>(wistream&, _Setw);
 #endif
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _GLIBCXX_IOMANIP */
index 5dfd641c4588e0b7703c08d21de129495ffbcee9..669706dfdf3af1084898b7edbf28532e0387f307 100644 (file)
@@ -1,6 +1,6 @@
 // Forwarding declarations -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -49,8 +49,8 @@
 #include <bits/postypes.h>
 #include <bits/functexcept.h>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _CharT, typename _Traits = char_traits<_CharT> >
     class basic_ios;
 
@@ -162,6 +162,7 @@ namespace std
   typedef basic_fstream<wchar_t>       wfstream;       ///< @isiosfwd
 #endif
   /** @}  */
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _GLIBCXX_IOSFWD */
index 33ed4cf3ca97f6a1507c82a58fa556d28aa6af68..e0c28e16a0511deb6cf72ad022ceb08770d29060 100644 (file)
@@ -1,6 +1,7 @@
 // Standard iostream objects -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 1997, 1998, 1999, 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
@@ -44,8 +45,8 @@
 #include <ostream>
 #include <istream>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  @name Standard Stream Objects
    *
@@ -74,6 +75,7 @@ namespace std
 
   // For construction of filebuffers for cout, cin, cerr, clog et. al.
   static ios_base::Init __ioinit;
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _GLIBCXX_IOSTREAM */
index dd1189ec12646b01c01dd095b551ece93df5e666..2c5c572286a3c78bce1496e2c7ca5bc2c98f8505 100644 (file)
@@ -44,8 +44,8 @@
 #include <ios>
 #include <limits> // For numeric_limits
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // [27.6.1.1] Template class basic_istream
   /**
    *  @brief  Controlling input.
@@ -813,7 +813,8 @@ namespace std
   template<typename _CharT, typename _Traits>
     basic_istream<_CharT, _Traits>& 
     ws(basic_istream<_CharT, _Traits>& __is);
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 # include <bits/istream.tcc>
index 7643dcfe230ca54eb955ba73a25bbc0bbf7e05bc..d1211fdb59eb5b22aa6bb90afa5a4081bd4fc13b 100644 (file)
@@ -1,4 +1,4 @@
-// The template and inlines for the -*- C++ -*- numeric_limits classes.
+// The template and inlines for the numeric_limits classes. -*- C++ -*- 
 
 // Copyright (C) 1999, 2000, 2001, 2002, 2003, 2005 
 // Free Software Foundation, Inc.
   (__glibcxx_digits (T) * 643 / 2136)
 
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  @brief Describes the rounding style for floating-point types.
    *
@@ -1149,7 +1149,7 @@ namespace std
 #undef __glibcxx_long_double_traps
 #undef __glibcxx_long_double_tinyness_before
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #undef __glibcxx_signed
 #undef __glibcxx_min
index 006912d558b82c2970228779e5562225c2ea30c1..6b1996b3b60b1fafed72fc9e44e8556c29c270cd 100644 (file)
@@ -1,6 +1,6 @@
 // <memory> -*- 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
@@ -59,8 +59,8 @@
 #include <debug/debug.h>
 #include <limits>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  @if maint
    *  This is a helper function.  The unused second parameter exists to
@@ -368,6 +368,7 @@ namespace std
         operator auto_ptr<_Tp1>() throw()
         { return auto_ptr<_Tp1>(this->release()); }
   };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _GLIBCXX_MEMORY */
index ffc1a2817304dee2a47f3a3725451623218598c2..8d4228238e7a38ff965ddc8c516df3d5eab3ef8b 100644 (file)
@@ -1,6 +1,6 @@
 // Output streams -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -43,8 +43,8 @@
 
 #include <ios>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // [27.6.2.1] Template class basic_ostream
   /**
    *  @brief  Controlling output.
@@ -519,7 +519,7 @@ namespace std
     flush(basic_ostream<_CharT, _Traits>& __os)
     { return __os.flush(); }
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 # include <bits/ostream.tcc>
index 3970b3d449c969214c4a1c7885bdda536c725368..162c2a6cc7dbb54b33b622eed71db6bbf7d47ea9 100644 (file)
@@ -44,8 +44,8 @@
 #include <istream>
 #include <ostream>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // [27.7.1] template class basic_stringbuf
   /**
    *  @brief  The actual work of input and output (for std::string).
@@ -608,7 +608,8 @@ namespace std
       str(const __string_type& __s)
       { _M_stringbuf.str(__s); }
     };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 # include <bits/sstream.tcc>
index 4ecc53e45bc19ced39192a9d886734983c301ca2..0104e54464ea9c224b8c7ca044a2622b9c347972 100644 (file)
@@ -1,6 +1,6 @@
 // Standard exception classes  -*- 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
@@ -43,8 +43,8 @@
 #include <exception>
 #include <string>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /** Logic errors represent problems in the internal logic of a program;
    *  in theory, these are preventable, and even detectable before the
    *  program runs (e.g., violations of class invariants).
@@ -142,6 +142,7 @@ namespace std
   public:
     explicit underflow_error(const string&  __arg);
   };
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _GLIBCXX_STDEXCEPT */
index b20bd639802c27ff50a5eb51fdc604c57749f3b7..f59e7deb9a245e95648b92373431f513eff6fed6 100644 (file)
@@ -46,8 +46,8 @@
 #include <bits/localefwd.h>
 #include <bits/ios_base.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  @if maint
    *  Does stuff.
@@ -800,7 +800,8 @@ namespace std
     __copy_streambufs(basic_streambuf<wchar_t>* __sbin,
                      basic_streambuf<wchar_t>* __sbout);
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
 # include <bits/streambuf.tcc>
index 512f5333d432d38dbe32b91f886277f6fab3e4e4..82b2fb891a7e895aee42c6918257dfcf0227a670 100644 (file)
@@ -1,6 +1,6 @@
 // The template and inlines for the -*- C++ -*- valarray 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
@@ -47,8 +47,8 @@
 #include <algorithm>
 #include <debug/debug.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<class _Clos, typename _Tp> 
     class _Expr;
 
@@ -87,13 +87,13 @@ namespace std
   template<class _Tp> class mask_array;     // masked array
   template<class _Tp> class indirect_array; // indirected array
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #include <bits/valarray_array.h>
 #include <bits/valarray_before.h>
   
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   /**
    *  @brief  Smart array designed to support numeric processing.
    *
@@ -535,18 +535,17 @@ namespace std
       return _M_data[__i];
     }
 
-} // std::
+_GLIBCXX_END_NAMESPACE
 
 #include <bits/valarray_after.h>
-
 #include <bits/slice_array.h>
 #include <bits/gslice.h>
 #include <bits/gslice_array.h>
 #include <bits/mask_array.h>
 #include <bits/indirect_array.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<typename _Tp>
     inline
     valarray<_Tp>::valarray() : _M_size(0), _M_data(0) {}
@@ -1005,6 +1004,6 @@ _DEFINE_BINARY_OPERATOR(>, __greater)
 _DEFINE_BINARY_OPERATOR(<=, __less_equal)
 _DEFINE_BINARY_OPERATOR(>=, __greater_equal)
 
-} // namespace std
+_GLIBCXX_END_NAMESPACE
 
 #endif /* _GLIBCXX_VALARRAY */
index 096df4f48acec4ab845026afd7baaa9c752c6759..bdef568f0cda3c01fa145913b750629e74843dc1 100644 (file)
@@ -43,8 +43,8 @@
 //namespace std::tr1
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
   /// @brief  struct array [6.2.2].
   /// NB: Requires complete type _Tp.
   template<typename _Tp, std::size_t _Nm = 1>
@@ -228,7 +228,8 @@ namespace tr1
     const _Tp&
     get(const array<_Tp, _Nm>& __arr)
     { return __arr[_Int]; }
-} // namespace std::tr1
+
+_GLIBCXX_END_NAMESPACE
 }
 
 #endif
index cb19019152115f9d2884058e848c20677a4a5386..e47c570c8817d9efe893e52f9014681cd0f36bb1 100644 (file)
@@ -57,8 +57,7 @@
 // namespace std::tr1
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
 
 class bad_weak_ptr : public std::exception
 {
@@ -977,7 +976,7 @@ template<typename _Tp>
     mutable weak_ptr<_Tp> _M_weak_this;
   };
 
-} // namespace tr1
+_GLIBCXX_END_NAMESPACE
 } // namespace std
 
 #endif
index 9672da8fe7cf9deba16f19d41b82abf51f8d423f..ae31faef758a03342f8d8075afc6e5299a9f1538 100644 (file)
@@ -47,8 +47,8 @@
 
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
   template<typename _MemberPointer>
     class _Mem_fn;
 
@@ -1274,7 +1274,8 @@ namespace tr1
        return result;
       }
     };
-}
+
+_GLIBCXX_END_NAMESPACE
 }
 
 #endif
index 0add0e3a96639c8e15f2cf448e091ade6d1fc651..70616146540fde4fd678f4f58ec03ce43ce92a3d 100644 (file)
@@ -879,8 +879,8 @@ namespace Internal
 
 namespace std
 { 
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
   //----------------------------------------------------------------------
   // Class template hashtable, class definition.
   
@@ -1853,7 +1853,8 @@ namespace tr1
          __throw_exception_again;
        }
     }
-}
+
+_GLIBCXX_END_NAMESPACE
 }                              // Namespace std::tr1
 
 #endif /* GNU_LIBSTDCXX_TR1_HASHTABLE_ */
index 9d7538f1196d9a5f2473bf393a8014ca52e41bff..18f5d4d070fc7545d6e542cb2d7c069c048b5cfb 100644 (file)
@@ -40,8 +40,7 @@
 
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
 
 template<typename _Tp>
   class reference_wrapper;
@@ -54,6 +53,7 @@ template<typename _Tp>
 template<typename _Tp>
   reference_wrapper<const _Tp>
   cref(const _Tp& __t);
-}
+
+_GLIBCXX_END_NAMESPACE
 }
 #endif
index ea7bb23854c0369590eba30bf8dc91e903fc9335..15c944f9eec029a4edfc5b5280e565089651ffbe 100644 (file)
@@ -41,8 +41,8 @@
 
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
  // An implementation specific class which is used in the tuple class
  // when the tuple is not maximum possible size.
  struct _NullClass { };
@@ -267,7 +267,8 @@ namespace tr1
 #include <tr1/repeat.h>
 #undef _GLIBCXX_REPEAT_HEADER
 #undef _SHORT_REPEAT
-}
+
+_GLIBCXX_END_NAMESPACE
 }
 
 #include <tr1/functional>
index 70f3316a7bc4d09fb7fd2ab0ece8cc31515591f7..f4a183847baa49313a794dadaaf83ef7593ae2d9 100644 (file)
@@ -40,8 +40,8 @@
 // namespace std::tr1
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
   // For use in __in_array and elsewhere.
   struct __sfinae_types
   {
@@ -687,7 +687,7 @@ namespace tr1
 #undef _DEFINE_SPEC
 #undef _DEFINE_SPEC_BODY
 
-}
+_GLIBCXX_END_NAMESPACE
 }
 
 #endif
index a03f4fa9e033d8ffabf5f391053d1f07d7147821..fded5492ca4f3fa6784fbd5e4c8d7a2d2005c3de 100644 (file)
@@ -40,8 +40,8 @@
 // namespace std::tr1
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
   /// @brief  helper classes [4.3].
   template<typename _Tp, _Tp __v>
     struct integral_constant;
@@ -219,7 +219,8 @@ namespace tr1
   /// @brief  other transformations [4.8].
   template<std::size_t _Len, std::size_t _Align>
     struct aligned_storage;
-}
+
+_GLIBCXX_END_NAMESPACE
 }
 
 #endif
index 2f789c80e8f5eda05e0df598792ae9968d27a211..2f1a239c7c9bfd030a4336eaa078886ae7902f06 100644 (file)
@@ -42,8 +42,8 @@
 
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
   // XXX When we get typedef templates these class definitions
   // will be unnecessary.
 
@@ -164,7 +164,7 @@ namespace tr1
         unordered_multimap<Key, T, Hash, Pred, Alloc, cache_hash_code>& y)
     { x.swap(y); }
 
-}
+_GLIBCXX_END_NAMESPACE
 }
 
 #endif /* GNU_LIBSTDCXX_TR1_UNORDERED_MAP_ */
index 6a4881a3d1d98838ee1934226ba31ad5ce5033eb..c3c16ddc6d798de329a558e3dca648d436a50a07 100644 (file)
@@ -40,8 +40,7 @@
 
 namespace std
 { 
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
 
   // XXX When we get typedef templates these class definitions
   // will be unnecessary.
@@ -159,7 +158,7 @@ namespace tr1
         unordered_multiset<Value, Hash, Pred, Alloc, cache_hash_code>& y)
    { x.swap(y); }
 
-}
+_GLIBCXX_END_NAMESPACE
 }
 
 #endif /* GNU_LIBSTDCXX_TR1_UNORDERED_SET_ */
index 246a6fa650e867e1df0687c9849fb5d1631fddd4..db140b29a66477f1f415a9ce54acd204c60f0e45 100644 (file)
@@ -38,8 +38,8 @@
 
 namespace std
 {
-namespace tr1
-{
+_GLIBCXX_BEGIN_NAMESPACE(tr1)
+
   template<class _Tp> class tuple_size;
   template<int _Int, class _Tp> class tuple_element;
 
@@ -92,7 +92,8 @@ namespace tr1
      const typename tuple_element<_Int, std::pair<_Tp1, _Tp2> >::type&
      get(const pair<_Tp1, _Tp2>& __in)
      { return __pair_get<_Int>::__const_get(__in); }
-}
+
+_GLIBCXX_END_NAMESPACE
 } 
 
 #endif
index 84469b0036576591ce6a37df8f2f64aa99c4e422..74aeac507fd699a0bdcccf5c201f5a07ecff2a8b 100644 (file)
@@ -118,6 +118,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@
index 2a1d52f0954607cc9f2207480708a4ffbc96c4dc..c787f170612a8aeed5c1c345e0addcbfd9b4bb7e 100644 (file)
@@ -159,6 +159,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@
index 5a0d50c80587e3357696c76df3fc117ab4a1a351..b9097812a756d1de049aae72f7fff72f54f69979 100644 (file)
@@ -45,8 +45,8 @@ using std::free;
 using std::malloc;
 using std::memcpy;
 #else
-// In a freestanding environment, these functions may not be
-// available -- but for now, we assume that they are.
+// In a freestanding environment, these functions may not be available
+// -- but for now, we assume that they are.
 extern "C" void *malloc (std::size_t);
 extern "C" void free(void *);
 extern "C" int memset (void *, int, std::size_t);
index 657cbf7791b7df5a57ac28be1df54936deec57c7..cfaf5b1e74c68bf98f4f3101c4e70ec40b2beb38 100644 (file)
@@ -1,6 +1,6 @@
 // Exception Handling support header for -*- C++ -*-
 
-// Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002
+// Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2005
 // Free Software Foundation
 //
 // This file is part of GCC.
@@ -39,6 +39,8 @@
 
 #pragma GCC visibility push(default)
 
+#include <bits/c++config.h>
+
 extern "C++" {
 
 namespace std 
@@ -102,8 +104,8 @@ namespace std
   bool uncaught_exception() throw();
 } // namespace std
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   /** A replacement for the standard terminate_handler which prints more
       information about the terminating exception (if any) on stderr.  Call
       @code
@@ -115,7 +117,8 @@ namespace __gnu_cxx
       In 3.4 and later, this is on by default.
   */
   void __verbose_terminate_handler ();
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
   
 } // extern "C++"
 
index 88156aa579ff5501ec328814bd88f41d1dca6299..dd3b657c0e62bedd0b6fc5a43ecee6c36175853a 100644 (file)
@@ -1,6 +1,6 @@
 // Verbose terminate_handler -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2004 Free Software Foundation
+// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation
 //
 // 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
@@ -28,6 +28,7 @@
 // the GNU General Public License.
 
 #include <bits/c++config.h>
+
 #if _GLIBCXX_HOSTED
 #include <cstdlib>
 #include <exception>
@@ -38,8 +39,8 @@
 using namespace std;
 using namespace abi;
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   // A replacement for the standard terminate_handler which prints
   // more information about the terminating exception (if any) on
   // stderr.
@@ -96,5 +97,7 @@ namespace __gnu_cxx
     
     abort();
   }
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
+
 #endif
index b953b568bc6f1e62d29ddb366f57d0e96a3a12e7..053229cd2b1ce2c9e7b0e9076e2e9d76a4efd506 100644 (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@
index 4d51036fe6b58046cbb38bcb5180c88b7e5097b7..0855c591e27578fdf09ff74b05bce7d3cdf37433 100644 (file)
@@ -43,6 +43,10 @@ if ENABLE_SYMVERS_GNU
 version_arg = -Wl,--version-script=libstdc++-symbols.ver
 version_dep = libstdc++-symbols.ver
 endif
+if ENABLE_SYMVERS_GNU_NAMESPACE
+version_arg = -Wl,--version-script=libstdc++-symbols.ver
+version_dep = libstdc++-symbols.ver
+endif
 if ENABLE_SYMVERS_DARWIN
 version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist
 version_dep = libstdc++-symbols.explist
index f751600fcc306a1dec1f429810d59142020b2292..f78e7353f862391a8a9e4bbedfef3786072595d3 100644 (file)
@@ -137,6 +137,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@
@@ -279,9 +281,11 @@ AM_CPPFLAGS = $(GLIBCXX_INCLUDES)
 toolexeclib_LTLIBRARIES = libstdc++.la
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist
 @ENABLE_SYMVERS_FALSE@version_arg = 
+@ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,--version-script=libstdc++-symbols.ver
 @ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,--version-script=libstdc++-symbols.ver
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.explist
 @ENABLE_SYMVERS_FALSE@version_dep = 
+@ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.ver
 @ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.ver
 
 # Source files linked in via configuration/make substitution for a
index 0258b2f81db4341497a21feae0c7cce86de590e7..aca019ca4962bfbbd74c8a852ad624d5a044a116 100644 (file)
@@ -1,6 +1,7 @@
 // Explicit instantiation file.
 
-// 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
@@ -33,8 +34,9 @@
 
 #include <memory>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template class allocator<char>;
   template class allocator<wchar_t>;
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index da2597b7e96b8b0906abeae91a058d9c6526cff8..761ec6136239841b3f101c5ebe307c94d2a423c9 100644 (file)
@@ -29,8 +29,8 @@
 
 #include <ext/bitmap_allocator.h>
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   namespace balloc
   {
     template class __mini_vector<std::pair
@@ -124,4 +124,5 @@ namespace __gnu_cxx
   // Instantiations.
   template class bitmap_allocator<char>;
   template class bitmap_allocator<wchar_t>;
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
index ea7cdd25374b21c8b26e75d470c9dc7c8e4b3cc1..e602c75c00bd8d368d8dfbd9be243a69ee7588f3 100644 (file)
@@ -29,8 +29,8 @@
 
 #include <locale>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Definitions for locale::id of standard facets that are specialized.
  locale::id codecvt<char, char, mbstate_t>::id;
 
@@ -149,4 +149,5 @@ namespace std
   do_always_noconv() const throw()
   { return false; }
 #endif //  _GLIBCXX_USE_WCHAR_T
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 2261ad57b240da0e6bdbbbebebc34bcacdacffab..ce661600507da35f7c369f3642070c9472b5ec66 100644 (file)
@@ -43,6 +43,8 @@
 #define _M_set_length_and_sharable(a) _M_set_length_and_sharableXX(a)
 #define ignore ignoreXX
 #define eq eqXX
+#define _List_node_base _List_node_baseXX
+#define __gnu_debug __gnu_debugXX
 #endif
 
 #include <string>
 #include <fstream>
 #include <sstream>
 
-namespace std
-{
-  // std::istream ignore explicit specializations.
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
+  // std::istream ignore explicit specializations.
   template<>
     basic_istream<char>&
     basic_istream<char>::
@@ -82,7 +83,7 @@ namespace std
                    {
                      streamsize __size = std::min(streamsize(__sb->egptr()
                                                              - __sb->gptr()),
-                                                  streamsize(__n - _M_gcount));
+                                                 streamsize(__n - _M_gcount));
                      if (__size > 1)
                        {
                          __sb->gbump(__size);
@@ -147,7 +148,7 @@ namespace std
                    {
                      streamsize __size = std::min(streamsize(__sb->egptr()
                                                              - __sb->gptr()),
-                                                  streamsize(__n - _M_gcount));
+                                                 streamsize(__n - _M_gcount));
                      if (__size > 1)
                        {
                          __sb->gbump(__size);
@@ -184,7 +185,9 @@ namespace std
       return *this;
     }
 #endif
-}
+
+_GLIBCXX_END_NAMESPACE
+
 
 // NB: These symbols renames should go into the shared library only,
 // and only those shared libraries that support versioning.
@@ -194,8 +197,9 @@ namespace std
 _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv
 _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv
  */
-namespace std
-{
+
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template
     istreambuf_iterator<char>&
     istreambuf_iterator<char>::operator++();
@@ -205,7 +209,9 @@ namespace std
     istreambuf_iterator<wchar_t>&
     istreambuf_iterator<wchar_t>::operator++();
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
+
 
 /* gcc-4.0.0
 _ZNSs4_Rep26_M_set_length_and_sharableEj
@@ -236,8 +242,8 @@ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv
 _ZNSt11char_traitsIcE2eqERKcS2_
 _ZNSt11char_traitsIwE2eqERKwS2_
  */
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // std::char_traits is explicitly specialized
   bool (* __p1)(const char&, const char&) = &char_traits<char>::eq;
 
@@ -329,7 +335,8 @@ namespace std
     bool
     basic_ofstream<wchar_t>::is_open() const;
 #endif
-}
+
+_GLIBCXX_END_NAMESPACE
 
 // The rename syntax for default exported names is
 //   asm (".symver name1,exportedname@GLIBCXX_3.4")
@@ -360,6 +367,107 @@ namespace std
 #include <bits/compatibility.h>
 #undef _GLIBCXX_APPLY_SYMVER
 
+/* gcc-3.4.0
+_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;
+*/
+#include "debug_list.cc"
+#include "debug.cc"
+
+_GLIBCXX_ASM_SYMVER(_ZNSt17_List_node_baseXX4hookEPS_, \
+_ZN10__gnu_norm15_List_node_base4hookEPS0_, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt17_List_node_baseXX4swapERS_S0_, \
+_ZN10__gnu_norm15_List_node_base4swapERS0_S1_, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt17_List_node_baseXX6unhookEv, \
+_ZN10__gnu_norm15_List_node_base6unhookEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt17_List_node_baseXX7reverseEv, \
+_ZN10__gnu_norm15_List_node_base7reverseEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt17_List_node_baseXX8transferEPS_S0_, \
+_ZN10__gnu_norm15_List_node_base8transferEPS0_S1_, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt13__gnu_debugXX19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb, \
+_ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb, \
+                   GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt13__gnu_debugXX19_Safe_iterator_base9_M_detachEv, \
+_ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX19_Safe_iterator_base11_M_singularEv,\
+_ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX19_Safe_iterator_base14_M_can_compareERKS0_, \
+_ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt13__gnu_debugXX19_Safe_sequence_base13_M_detach_allEv, \
+_ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt13__gnu_debugXX19_Safe_sequence_base18_M_detach_singularEv, \
+_ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt13__gnu_debugXX19_Safe_sequence_base22_M_revalidate_singularEv, \
+_ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNSt13__gnu_debugXX19_Safe_sequence_base7_M_swapERS0_, \
+_ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX16_Error_formatter8_M_errorEv, \
+_ZNK11__gnu_debug16_Error_formatter8_M_errorEv, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX16_Error_formatter10_M_messageENS_13_Debug_msg_idE, \
+_ZNK11__gnu_debug16_Error_formatter10_M_messageENS_13_Debug_msg_idE, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX16_Error_formatter10_Parameter14_M_print_fieldEPKS0_PKc, \
+_ZNK11__gnu_debug16_Error_formatter10_Parameter14_M_print_fieldEPKS0_PKc, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX16_Error_formatter10_Parameter20_M_print_descriptionEPKS0_, \
+_ZNK11__gnu_debug16_Error_formatter10_Parameter20_M_print_descriptionEPKS0_, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX16_Error_formatter13_M_print_wordEPKc, \
+_ZNK11__gnu_debug16_Error_formatter13_M_print_wordEPKc, \
+GLIBCXX_3.4)
+
+_GLIBCXX_ASM_SYMVER(_ZNKSt13__gnu_debugXX16_Error_formatter15_M_print_stringEPKc, \
+_ZNK11__gnu_debug16_Error_formatter15_M_print_stringEPKc, \
+GLIBCXX_3.4)
+
+
 #endif
 
 #ifdef _GLIBCXX_SYMVER_DARWIN
@@ -377,12 +485,12 @@ namespace std
 using namespace std;
 
 extern "C" void
-__eprintf (const char *string, const char *expression,
-          unsigned int line, const char *filename)
+__eprintf(const char *string, const char *expression,
+         unsigned int line, const char *filename)
 {
-  fprintf (stderr, string, expression, line, filename);
-  fflush (stderr);
-  abort ();
+  fprintf(stderr, string, expression, line, filename);
+  fflush(stderr);
+  abort();
 }
 #endif
 #endif
index ba67d5e001a2619e7e530d16814f2891522e0550..103795888b0fe7c18729a7e6636bdf8bd2cff42c 100644 (file)
@@ -1,6 +1,6 @@
 // The template and inlines for the -*- C++ -*- complex number classes.
 
-// Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+// Copyright (C) 2000, 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
@@ -29,8 +29,8 @@
 
 #include <complex>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template
     basic_istream<char, char_traits<char> >&
     operator>>(basic_istream<char, char_traits<char> >&, complex<float>&);
@@ -90,4 +90,5 @@ namespace std
     operator<<(basic_ostream<wchar_t, char_traits<wchar_t> >&,
                const complex<long double>&);
 #endif //_GLIBCXX_USE_WCHAR_T
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 9824da1192b22a3227ae421fd7e79a498bf96c65..904f72becd68b53f62f6ec09b01f42998094fab2 100644 (file)
@@ -44,8 +44,8 @@
 
 #define _Instantiate(...) template void __function_requires< __VA_ARGS__ > ()
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   template void __aux_require_boolean_expr<bool>(bool const&);
 
   _Instantiate(_ConvertibleConcept<unsigned, unsigned> );
@@ -105,7 +105,8 @@ namespace __gnu_cxx
 
   _Instantiate(_RandomAccessIteratorConcept<wchar_t const*> );
 #endif
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 #undef _Instantiate
 
index f97801516e46587b4c4357957915b144d9063b1b..634c135b2f9b16378941f24878f527a9e622272f 100644 (file)
@@ -1,4 +1,4 @@
-// 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
@@ -28,8 +28,8 @@
 
 #include <locale>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Definitions for static const data members of ctype_base.
   const ctype_base::mask ctype_base::space;
   const ctype_base::mask ctype_base::print;
@@ -110,5 +110,5 @@ namespace std
        }
     }
 #endif
-} // namespace std
 
+_GLIBCXX_END_NAMESPACE
index 6f32fde5e65145321464f0f7d68e60c5c9878292..9dc73ae67bc98a80092a9e2544043ed008fc28c9 100644 (file)
@@ -44,6 +44,8 @@ namespace __gnu_internal
   static __glibcxx_mutex_define_initialized(iterator_base_mutex);
 } // namespace __gnu_internal
 
+namespace std
+{
 namespace __gnu_debug
 {
   const char* _S_debug_messages[] = 
@@ -247,8 +249,8 @@ namespace __gnu_debug
   _Safe_iterator_base::
   _M_can_compare(const _Safe_iterator_base& __x) const
   {
-    return (!_M_singular() && !__x._M_singular() 
-           && _M_sequence == __x._M_sequence);
+    return (!_M_singular() 
+           && !__x._M_singular() && _M_sequence == __x._M_sequence);
   }
 
   void
@@ -668,3 +670,4 @@ namespace __gnu_debug
     _Error_formatter::_M_format_word(char*, int, const char*, 
                                     const char*) const;
 } // namespace __gnu_debug
+} // namespace std
index 2ce337bed081a4d302891cc36ae50088af410623..0396ba45439d9e725018a862a7926b4dd4aa8173 100644 (file)
@@ -39,8 +39,8 @@ namespace __gnu_internal
   const int min_len = __gnu_cxx::_Rope_constants::_S_max_rope_depth + 1;
 }
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   using namespace __gnu_internal;
 
   template
@@ -66,4 +66,5 @@ namespace __gnu_cxx
 
   template class stdio_filebuf<wchar_t>;
 #endif
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
index 152c145c066e5bfecbde12ee75bb3747a0e86983..762ccb8a9d60e33b14a3932094da73ceb6ac3480 100644 (file)
@@ -1,6 +1,6 @@
 // Explicit instantiation file.
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 
 #include <fstream>
 
-namespace std
-{
-  // filebuf
-  template class basic_filebuf<char, char_traits<char> >;
-#ifdef _GLIBCXX_USE_WCHAR_T
-  template class basic_filebuf<wchar_t, char_traits<wchar_t> >;
-#endif
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
-  // ifstream
+  template class basic_filebuf<char, char_traits<char> >;
   template class basic_ifstream<char>;
-#ifdef _GLIBCXX_USE_WCHAR_T
-  template class basic_ifstream<wchar_t>;
-#endif
-
-  // ofstream
   template class basic_ofstream<char>;
-#ifdef _GLIBCXX_USE_WCHAR_T
-  template class basic_ofstream<wchar_t>;
-#endif
-
-  // fstream
   template class basic_fstream<char>;
+
 #ifdef _GLIBCXX_USE_WCHAR_T
+  template class basic_filebuf<wchar_t, char_traits<wchar_t> >;
+  template class basic_ifstream<wchar_t>;
+  template class basic_ofstream<wchar_t>;
   template class basic_fstream<wchar_t>;
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 2dde0c5c12e058165086a54b0547f9436051eabd..80a2d9ec34d7e251382eeac5f5f1f8ff29958a2a 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 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
@@ -32,6 +32,7 @@
 #include <new>
 #include <typeinfo>
 #include <ios>
+
 #ifdef _GLIBCXX_USE_NLS
 # include <libintl.h>
 # define _(msgid)   gettext (msgid)
@@ -39,8 +40,8 @@
 # define _(msgid)   (msgid)
 #endif
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
 #if __EXCEPTIONS
   void
   __throw_bad_exception(void)
@@ -154,4 +155,5 @@ namespace std
   __throw_ios_failure(const char*)
   { abort(); }
 #endif //__EXCEPTIONS
-}
+
+_GLIBCXX_END_NAMESPACE
index 76736fa644aef9e4b647b8412b14709ac38082ca..e53152321e0eef4ea2903d842a2ccf78c9540fdd 100644 (file)
@@ -1,4 +1,4 @@
-// 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
@@ -49,8 +49,8 @@
 // In macro form:
 // _GLIBCXX_ASM_SYMVER(currentname, oldname, GLIBCXX_3.2)
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Standard stream objects.
   // NB: Iff <iostream> is included, these definitions become wonky.
   typedef char fake_istream[sizeof(istream)]
@@ -72,7 +72,8 @@ namespace std
   fake_wostream wcerr;
   fake_wostream wclog;
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 namespace __gnu_internal
 {
index 83996f9cff98aea57f5226289b08314aee634c09..27f3e5bb1f952d862f52daae560433394b29a8e0 100644 (file)
 
 #include <ios>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template class basic_ios<char>;
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   template class basic_ios<wchar_t>;
 #endif
-}
+
+_GLIBCXX_END_NAMESPACE
index a642e313c7f620051b23a1a2cdb0389c722d4d8d..fdc62b4d0b1e6fc62fb0c437ab157ed8b9588ae1 100644 (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
@@ -36,8 +36,8 @@
 #include <limits>
 #include <bits/atomicity.h>
 
-namespace std 
-{  
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // XXX GLIBCXX_ABI Deprecated
    // Definitions for static const data members of __ios_flags.
   const __ios_flags::__int_type __ios_flags::_S_boolalpha;
@@ -225,4 +225,5 @@ namespace std
       }
     _M_callbacks = 0;
   }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index cbe70ff61bf106387e83e9c2803518a5e06eb6ac..33d7ffcd4e1f2c8bec4a41d8fe3583c29dcaef78 100644 (file)
@@ -1,6 +1,6 @@
 // Iostreams base classes -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -34,8 +34,8 @@
 
 #include <ios>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   ios_base::failure::failure(const string& __str) throw()
   : _M_msg(__str) { }
 
@@ -45,4 +45,5 @@ namespace std
   const char*
   ios_base::failure::what() const throw()
   { return _M_msg.c_str(); }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 0c2194901ee9474554c9529080e405dfaac6a5e4..7e3028e84534a2eaad5b90464b0f4c7bea71d54d 100644 (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
@@ -64,8 +64,8 @@ namespace __gnu_internal
 #endif
 } // namespace __gnu_internal
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using namespace __gnu_internal;
   
   extern istream cin;
@@ -196,4 +196,5 @@ namespace std
       }
     return __ret; 
   }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 1202291f478c4f969b25c9a3dec9c1dcbe0becb3..5be1c9255bd4685f97828472539fc2518c10915c 100644 (file)
@@ -1,6 +1,6 @@
 // Iostreams base classes -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -35,8 +35,8 @@
 #include <ios>
 #include <locale>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Called only by basic_ios<>::init.
   void 
   ios_base::_M_init()   
@@ -57,4 +57,5 @@ namespace std
     _M_call_callbacks(imbue_event);
     return __old;
   }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 9f389e64f9192e1d961f1a3ce1650b23d09c4ab8..5da43cb148a16361d21f421e4a3690ad4ea51905 100644 (file)
@@ -35,8 +35,8 @@
 #include <iostream>
 #include <iomanip>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template class _Setfill<char>;
   template _Setfill<char> setfill(char);
   template class basic_iostream<char>;
@@ -46,4 +46,5 @@ namespace std
   template _Setfill<wchar_t> setfill(wchar_t);
   template class basic_iostream<wchar_t>; 
 #endif
-}
+
+_GLIBCXX_END_NAMESPACE
index acdd5d09c00471f36ef453a24c09e9b18152345a..d71314d3d9952a7963b30ec735751c97341b285f 100644 (file)
@@ -1,6 +1,6 @@
 // Explicit instantiation file.
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -35,9 +35,8 @@
 #include <istream>
 #include <iomanip>
 
-namespace std
-{
-  // istream
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template class basic_istream<char>;
   template istream& ws(istream&);
   template istream& operator>>(istream&, char&);
@@ -67,4 +66,5 @@ namespace std
   template wistream& operator>>(wistream&, _Setprecision);
   template wistream& operator>>(wistream&, _Setw);
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 07e6255b53497679373dded7899ad66835211af0..688ad16583557931eda0db8a4ec25d968b3a9749 100644 (file)
@@ -33,8 +33,8 @@
 
 #include <istream>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<>
     basic_istream<char>&
     basic_istream<char>::
@@ -643,4 +643,5 @@ namespace std
       return __in;
     }
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 02809082236a736e9d283ceb6bf587763bc650ca..235ecd61813289ff09cc41ecb2b5fc526774b0c0 100644 (file)
@@ -1,6 +1,6 @@
 // Static data members of -*- C++ -*- numeric_limits classes
 
-// Copyright (C) 1999, 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 1999, 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 <limits>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   const bool __numeric_limits_base::is_specialized;
   const int  __numeric_limits_base::digits;
   const int  __numeric_limits_base::digits10;
@@ -446,4 +446,5 @@ namespace std
   const bool numeric_limits<long double>::traps;
   const bool numeric_limits<long double>::tinyness_before;
   const float_round_style numeric_limits<long double>::round_style;
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index e2b1571ae1e14eb0964f27ef850e9c558c730f1a..fe68ba1d7a4654a8340bfddd25347e6a98315400 100644 (file)
@@ -1,6 +1,6 @@
 // std::list utilities implementation -*- C++ -*-
 
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 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
@@ -55,8 +55,8 @@
 
 #include <list>
 
-namespace _GLIBCXX_STD
-{
+_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
+
   void
   _List_node_base::swap(_List_node_base& __x, _List_node_base& __y)
   {
@@ -137,5 +137,5 @@ namespace _GLIBCXX_STD
     __prev_node->_M_next = __next_node;
     __next_node->_M_prev = __prev_node;
   }
-} // namespace std
 
+_GLIBCXX_END_NESTED_NAMESPACE
index 84c7d773f99afc8152893b03d81ad0ad0436ae54..fd2a8d4b8280a687a9c483ca812c496ab7331a82 100644 (file)
@@ -1,6 +1,6 @@
 // Locale support -*- C++ -*-
 
-// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+// Copyright (C) 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
@@ -39,8 +39,8 @@
 # define C char
 #endif
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // moneypunct, money_get, and money_put
   template class moneypunct<C, false>;
   template class moneypunct<C, true>;
@@ -313,4 +313,5 @@ namespace std
     __int_to_char(C*, unsigned long long, const C*, 
                  ios_base::fmtflags, bool);
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 8da12791d18e17924f91b132530a78cae6ad46f6..32b759783528d1e5bc9250988e53e0d3947e8aee 100644 (file)
@@ -1,6 +1,7 @@
 // Locale support -*- C++ -*-
 
-// Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2000, 2001, 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
@@ -33,8 +34,8 @@
 
 #include <locale>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template
     int
     __convert_from_v(char*, const int, const char*, double, 
@@ -44,4 +45,5 @@ namespace std
     int
     __convert_from_v(char*, const int, const char*, long double, 
                     const __c_locale&, int);
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 5498eaee7a3e8a2b691c575c0f49e351d0533131..713d3993d2f7cb5ebaf0fef6d791dcf39f656746 100644 (file)
@@ -1,4 +1,4 @@
-// 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
@@ -41,8 +41,8 @@ namespace __gnu_internal
   static __glibcxx_mutex_define_initialized(locale_cache_mutex);
 }
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Definitions for static const data members of locale.
   const locale::category       locale::none;
   const locale::category       locale::ctype;
@@ -401,6 +401,7 @@ namespace std
       _M_index = 1 + __gnu_cxx::__exchange_and_add(&_S_refcount, 1);
     return _M_index - 1;
   }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
 
index 29c3c8933b9b6176e79442181e0fc0c891d24886..46de583d51375d4a67eeff9ace04e0efc67a4b54 100644 (file)
@@ -1,4 +1,4 @@
-// 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
@@ -28,8 +28,8 @@
 
 #include <locale>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Definitions for static const data members of time_base.
   template<> 
     const char*
@@ -89,5 +89,6 @@ namespace std
       *__fptr++ = (__flags & ios_base::uppercase) ? 'G' : 'g';
     *__fptr = '\0';
   }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
index 35805092fcb4dcb1c41d9555590f2b9103c62284..e7fe6207ebff8a21fe6ce1b2bcff3d1ff57603b2 100644 (file)
@@ -93,8 +93,8 @@ namespace __gnu_internal
   static __glibcxx_mutex_define_initialized(locale_mutex);
 } // namespace __gnu_internal
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using namespace __gnu_internal;
 
   locale::locale() throw() : _M_impl(0)
@@ -344,4 +344,5 @@ namespace std
     _M_caches[__timepunct<wchar_t>::id._M_id()] = __tpw;
 #endif
   }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 431a8c1bfa632ffee33f2ca48e2dfbc3e663f379..e1a111465c2a00eb26dffe033aeed7855b5f6e5e 100644 (file)
@@ -1,4 +1,4 @@
-// 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
@@ -30,8 +30,8 @@
 #include <cstring>
 #include <locale>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   using namespace __gnu_cxx;
 
   locale::locale(const char* __s) : _M_impl(0)
@@ -299,4 +299,5 @@ namespace std
          }
       }
   }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index d57bf9dc9ff1d2d5f81e205857f845c46debd1f5..8cc39e3747a37e39fe66f1088d6e978ae1cc7c0d 100644 (file)
@@ -37,8 +37,8 @@
 #include <ostream>
 #include <ext/stdio_sync_filebuf.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // string related to iostreams
   template 
     basic_istream<char>& 
@@ -66,14 +66,16 @@ namespace std
     basic_istream<wchar_t>& 
     getline(basic_istream<wchar_t>&, wstring&);
 #endif
-} // namespace std
 
-namespace __gnu_cxx
-{
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   template class stdio_sync_filebuf<char>;
 #ifdef _GLIBCXX_USE_WCHAR_T
   template class stdio_sync_filebuf<wchar_t>;
 #endif
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
 
 
index 7f1e7159b4dcc6733efe2c1fcc0df833a9d039ba..332cb173368fb832ce68fa1fc93f673209941783 100644 (file)
@@ -76,8 +76,8 @@ namespace __gnu_internal
 #endif
 }
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   void
   __pool<false>::_M_destroy() throw()
   {
@@ -781,4 +781,5 @@ namespace __gnu_cxx
   // Instantiations.
   template class __mt_alloc<char>;
   template class __mt_alloc<wchar_t>;
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
index 6d3189f57a6de7d2bb0f78a909bf049e84a0f13e..4568dca5cde3ea8b31429986a7049a134d036656 100644 (file)
@@ -1,6 +1,6 @@
 // Explicit instantiation file.
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -35,8 +35,8 @@
 #include <ostream>
 #include <iomanip>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // ostream
   template class basic_ostream<char>;
   template ostream& endl(ostream&);
@@ -73,4 +73,5 @@ namespace std
   template wostream& operator<<(wostream&, _Setprecision);
   template wostream& operator<<(wostream&, _Setw);
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 90ada30bd5a30b80a5f98e5287bb6616e19d971b..bdcf130f36b7376683f9b4f61e7702eb65c3e9ac 100644 (file)
@@ -40,8 +40,8 @@ namespace __gnu_internal
   static __glibcxx_mutex_define_initialized(palloc_init_mutex);
 }
 
-namespace __gnu_cxx
-{
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+
   // Definitions for __pool_alloc_base.
   __pool_alloc_base::_Obj* volatile*
   __pool_alloc_base::_M_get_free_list(size_t __bytes)
@@ -170,4 +170,5 @@ namespace __gnu_cxx
   // Instantiations.
   template class __pool_alloc<char>;
   template class __pool_alloc<wchar_t>;
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
index 444c99633735a6eb9278009aff374e4dd5f474b1..a6f41baccbcb806a124a6bd76ae8bbd279ececf4 100644 (file)
@@ -1,6 +1,6 @@
 // Explicit instantiation file.
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 
 #include <sstream>
 
-namespace std
-{
-  // stringbuf
-  template class basic_stringbuf<char>;
-#ifdef _GLIBCXX_USE_WCHAR_T
-  template class basic_stringbuf<wchar_t>;
-#endif
+_GLIBCXX_BEGIN_NAMESPACE(std)
 
-  // istringstream
+  template class basic_stringbuf<char>;
   template class basic_istringstream<char>;
-#ifdef _GLIBCXX_USE_WCHAR_T
-  template class basic_istringstream<wchar_t>; 
-#endif
-
-  // ostringstream
   template class basic_ostringstream<char>;
-#ifdef _GLIBCXX_USE_WCHAR_T
-  template class basic_ostringstream<wchar_t>; 
-#endif
-
-  // stringstream
   template class basic_stringstream<char>;
+
 #ifdef _GLIBCXX_USE_WCHAR_T
+  template class basic_stringbuf<wchar_t>;
+  template class basic_istringstream<wchar_t>; 
+  template class basic_ostringstream<wchar_t>; 
   template class basic_stringstream<wchar_t>; 
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 60079244b23b0bc4aadd32f995204b72fb4de077..19ac5779eb5289041fd4e5dd71de9456805a17e2 100644 (file)
@@ -1,6 +1,6 @@
 // Methods for Exception Support for -*- C++ -*-
 
-// Copyright (C) 1997, 1999, 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 1997, 1999, 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
@@ -34,8 +34,8 @@
 #include <string>
 #include <stdexcept>
 
-namespace std 
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   logic_error::logic_error(const string& __arg) 
   : exception(), _M_msg(__arg) { }
 
@@ -74,5 +74,6 @@ namespace std
 
   underflow_error::underflow_error(const string& __arg)
   : runtime_error(__arg) { }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
 
index 01397e2c16c6fc65a6989ecae1ef46fca637aac2..d08bc0d2db1f74255dbedbc06600129fc299de4d 100644 (file)
@@ -1,6 +1,6 @@
 // Explicit instantiation file.
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 #include <ios>
 #include <streambuf>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // streambuf
   template class basic_streambuf<char>;
-#ifdef _GLIBCXX_USE_WCHAR_T
-  template class basic_streambuf<wchar_t>;
-#endif
 
   template
     streamsize
-    __copy_streambufs(basic_streambuf<char>*,
-                     basic_streambuf<char>*); 
+    __copy_streambufs(basic_streambuf<char>*, basic_streambuf<char>*); 
+
 #ifdef _GLIBCXX_USE_WCHAR_T
+  // wstreambuf
+  template class basic_streambuf<wchar_t>;
+
   template
     streamsize
-    __copy_streambufs(basic_streambuf<wchar_t>*,
-                     basic_streambuf<wchar_t>*); 
+    __copy_streambufs(basic_streambuf<wchar_t>*, basic_streambuf<wchar_t>*); 
 #endif
-} //std
+
+_GLIBCXX_END_NAMESPACE
index 923ff4f8f8f486e4fbe40e534b5ba045309de5bf..75f61cca4c90b9c4bcb06e7520b134e09b274063 100644 (file)
@@ -33,8 +33,8 @@
 
 #include <streambuf>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   template<>
     streamsize
     __copy_streambufs(basic_streambuf<char>* __sbin,
@@ -100,4 +100,5 @@ namespace std
       return __ret;
     }
 #endif
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index cccf390c4ee47b631e4a2f92cba5f00d76883fde..4c447e4434a691f4939e45394752dfca41b4b1d5 100644 (file)
@@ -42,8 +42,8 @@
 # define C char
 #endif
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   typedef basic_string<C> S;
 
   template class basic_string<C>;
@@ -81,11 +81,12 @@ namespace std
   template
     const C*
     search(const C*, const C*, const C*, const C*, bool(*)(const C&, const C&));
-} // namespace std
+_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
 
-namespace __gnu_cxx
-{
   using std::S;
   template bool operator==(const S::iterator&, const S::iterator&);
   template bool operator==(const S::const_iterator&, const S::const_iterator&);
-} // namespace __gnu_cxx
+
+_GLIBCXX_END_NAMESPACE
index 363d007f56c60c7c27a212f9fde6b144343aa07f..5bbb33a441e41c5e57327efea0a815ba7013ce58 100644 (file)
@@ -1,6 +1,6 @@
 // strstream definitions -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation
 //
 // 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
@@ -53,8 +53,8 @@
 #include <string.h>
 #include <limits.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   strstreambuf::strstreambuf(streamsize initial_capacity)
   : _Base(), _M_alloc_fun(0), _M_free_fun(0), _M_dynamic(true), 
     _M_frozen(false), _M_constant(false)
@@ -413,4 +413,5 @@ namespace std
   char* 
   strstream::str()
   { return _M_buf.str(); }
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index 67b1dc622dc7598c392f7dba745e609c53b99af0..38a30373364fa6732ed75a55315b9b2eaf0d5a4e 100644 (file)
@@ -1,6 +1,6 @@
 // RB tree utilities implementation -*- C++ -*-
 
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 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
@@ -57,8 +57,8 @@
 
 #include <bits/stl_tree.h>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   _Rb_tree_node_base*
   _Rb_tree_increment(_Rb_tree_node_base* __x)
   {
@@ -428,4 +428,5 @@ namespace std
     while (1);
     return __sum;
   }
-} // namespace std 
+
+_GLIBCXX_END_NAMESPACE
index 271c1087d6f4e6a95307ecc1d4df1fca9d7a8cb1..c13e1a2454bd97ced2a9dd53b27931c76572f156 100644 (file)
@@ -1,6 +1,6 @@
 // Explicit instantiation file.
 
-// 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
@@ -33,8 +33,8 @@
 
 #include <valarray>
 
-namespace std
-{
+_GLIBCXX_BEGIN_NAMESPACE(std)
+
   // Some explicit instantiations.
   template void
      __valarray_fill(size_t* __restrict__, size_t, const size_t&);
@@ -112,4 +112,5 @@ namespace std
   : _M_count(1), _M_start(__o), _M_size(__l), _M_stride(__s),
     _M_index(__l.size() == 0 ? 0 : __valarray_product(__l))
   { __gslice_to_index(__o, __l, __s, _M_index); }  
-} // namespace std
+
+_GLIBCXX_END_NAMESPACE
index cf4041df1304405dc5d0587a65cb7fd84dd2b92b..cab11c973dc17e6b15b2852a3526c7a554303456 100644 (file)
@@ -47,4 +47,4 @@ main()
   return 0;
 }
 // { dg-error "candidates" "" { target *-*-* } 223 } 
-// { dg-error "std::auto_ptr" "" { target *-*-* } 353 } 
+// { dg-error "::auto_ptr" "" { target *-*-* } 353 } 
index ed539e06df735d6a87b2ec8ecef36dd82d2ae90d..8c6c687554ce362e621126c72fea9f5785fcdd6a 100644 (file)
@@ -32,5 +32,5 @@
 // { dg-do compile }
 
 // libstdc++/21770
-template class __gnu_debug::basic_string<int, std::char_traits<int>,
-                                        std::allocator<char> >;
+template class debug::basic_string<int, std::char_traits<int>, 
+                                  std::allocator<char> >;
index f70a4b8730ddd7f8e05958a01ed6afc76e7082e2..af24d0417305adfa15df2d302f5d825d080aee37 100644 (file)
@@ -22,7 +22,7 @@
 // libstdc++/16020
 void test01()
 {
-  using __gnu_debug::bitset;
+  using debug::bitset;
   bool test __attribute__((unused)) = true;
 
   bitset<5> b(7);
index d5a36748dad252ff47eeed13d74a1f43ca28b894..0be47f25dd7c4c117f7b1455493325ef6c4d9775 100644 (file)
@@ -21,7 +21,7 @@
 #include <debug/bitset>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::bitset;
+using debug::bitset;
 
 bool test = true;
 
index 4df035e52b7e6243ceff3bd793ef83f8d4f65629..7bb6688739296bc404e1b234e88840aee1709571 100644 (file)
@@ -22,7 +22,7 @@
 // libstdc++/13838
 void test01()
 {
-  using __gnu_debug::bitset;
+  using debug::bitset;
   bool test __attribute__((unused)) = true;
 
   bitset<4>  b0, b1;
index 963673a92e775e69a46dabb7998f0665826f367f..83f69dddcf6200cc046e5ed1693ce241b2ff402d 100644 (file)
@@ -21,7 +21,7 @@
 #include <debug/deque>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::deque;
+using debug::deque;
 
 bool test = true;
 
index 39f4ac77a6c236bc8630fa05ccaf970b0d8bb357..2e179f57ea1d2fe9ba096a3280f572c1c70c7521 100644 (file)
@@ -21,7 +21,7 @@
 #include <debug/deque>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::deque;
+using debug::deque;
 
 bool test = true;
 
index 96759dafcaa95c8ffa400d95f22c39ca786df8cd..f7abfcf01b2f3ca8ca215afa161c1b1870ee03ae 100644 (file)
@@ -21,7 +21,7 @@
 #include <debug/deque>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::deque;
+using debug::deque;
 
 bool test = true;
 
index 40ee6a2b949371043acfb52e097c0842916f7631..1ee306188fb23328e246ca861b0b52f1f7557e6e 100644 (file)
@@ -21,7 +21,7 @@
 #include <debug/deque>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::deque;
+using debug::deque;
 
 bool test = true;
 
index 940d9aadb6b9c6b2efdf7dab646bd0b6485e0915..3ae8525c26ad25400db210a8b80a30da7b26c2de 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::list;
+using debug::list;
 using std::advance;
 
 bool test = true;
index 242e18c720879b4f2b0f0babb3669e75cb0af8a8..9889c511a610de16d366cc9868df98ebb6bb32e3 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::list;
+using debug::list;
 using std::advance;
 
 bool test = true;
index b19e2c62608cbfc4f27a0889f9cc9da10a090365..a224123a83efc71730eb2132913f2b2b3d18e84b 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::list;
+using debug::list;
 using std::advance;
 
 bool test = true;
index 4d5465ce27b03f858a3aed5fdec19cd89e589760..2da08675a26a2a3c51e078d00b89cb73d6e7165f 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::list;
+using debug::list;
 using std::advance;
 
 bool test = true;
index c2bf4f0fd43c6e9b644b707ce2b318baf575cdd8..1132aad7748828ab669cffcf9c619ceca2260c7b 100644 (file)
@@ -22,7 +22,7 @@
 // libstdc++/16813
 void test01()
 {
-  using __gnu_debug::map;
+  using debug::map;
   bool test __attribute__((unused)) = true;
 
   map<int, float> m1, m2;
index 9965c850d316b8c6a1ca59e12d126fde6f395931..b3665e6e11684bf61f9038f983599bb248335ae6 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::map;
+using debug::map;
 using std::advance;
 
 bool test = true;
index fcb4601d1cecc380108de963a39a49ad0f697156..9b596e4c64d3f7f20a0b6346a6e292708adcf7fe 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::map;
+using debug::map;
 using std::advance;
 
 bool test = true;
index ca6d2536e2217d5904ab37cbc0d693c63c0578c7..c2ae547a2fbb35b305e30691ad92122799c82804 100644 (file)
@@ -23,7 +23,7 @@
 #include <testsuite_hooks.h>
 #include <utility>
 
-using __gnu_debug::multimap;
+using debug::multimap;
 using std::advance;
 
 bool test = true;
index 11f998f384dbde1dc81592f4eb89038eb0f2bda4..23ad5b31839da757d15e4178a6ed760186ddde10 100644 (file)
@@ -23,7 +23,7 @@
 #include <testsuite_hooks.h>
 #include <utility>
 
-using __gnu_debug::multimap;
+using debug::multimap;
 using std::advance;
 
 bool test = true;
index e9082d557d81d420777e1edebe0948e9004262ae..2ed58cc323ffc1dcdc1715eeb2b6f1867afd40de 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::multiset;
+using debug::multiset;
 using std::advance;
 
 bool test = true;
index cb289b337c9da30ce181fe4c9909108a125582e5..ac7661562618fbe6d8506517e8694febccc734ae 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::multiset;
+using debug::multiset;
 using std::advance;
 
 // Erase
index bbf17be9aacf417e47647680e287353e9248cdb9..5cebadba64d30a4210960b3bb26835f343c2b60a 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::set;
+using debug::set;
 using std::advance;
 
 bool test = true;
index cfe2f586aa78373e6852c1ab6ffe3ed88b295e6c..6c3c8de5ec522469b71cfa3206b7c27fb61f50b4 100644 (file)
@@ -22,7 +22,7 @@
 #include <iterator>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::set;
+using debug::set;
 using std::advance;
 
 // Erase
index a38e62860bcfe27725cd346cc96b1029c7ca7139..8e5a1544150695d9b20051db728bc2bc50762f60 100644 (file)
@@ -28,7 +28,7 @@
 #include <debug/vector>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::vector;
+using debug::vector;
 
 bool test = true;
 
index 674c21cb062e928a1631fd0f324bda3bac1d8e86..76b7849028bb7f099b779433941058e7553dab44 100644 (file)
@@ -28,7 +28,7 @@
 #include <debug/vector>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::vector;
+using debug::vector;
 
 bool test = true;
 
index 05093835c9d039a2e8526cdd830baa0e39004595..b182e046db4ee6b37bd0ff46b68b44a108aea851 100644 (file)
@@ -28,7 +28,7 @@
 #include <debug/vector>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::vector;
+using debug::vector;
 
 bool test = true;
 
index 9010f9e408d4426f8ecc9a8c8b22c33f24ab7336..540e60e47d5b9183dcd6cca744720bb73b2a21b4 100644 (file)
@@ -28,7 +28,7 @@
 #include <debug/vector>
 #include <testsuite_hooks.h>
 
-using __gnu_debug::vector;
+using debug::vector;
 
 bool test = true;
 
index 0d9ba5ab4cb4e757323c07312614e43e648a248b..d715d62175ac4c3a66c118c9e77471b3dafd117e 100644 (file)
@@ -107,6 +107,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@
index af018fca18763a875c68f8ec966051df3b0d947c..2062cb01b57d4f55de1ef552bd93b35d931b4aec 100644 (file)
 #include <ext/hash_map>
 #include <testsuite_hooks.h>
 
-using namespace std;
-using namespace __gnu_cxx;
-
 namespace __gnu_cxx 
 {
+  using std::string;
+
   inline size_t hash_string(const char* s)
   {
     unsigned long h; 
@@ -63,19 +62,22 @@ namespace __gnu_cxx
   };
 }
 
-
-const int Size = 5;
-
 void test01()
 {
+  const int Size = 5;
   bool test __attribute__((unused)) = true;
 
+  using std::string;
+  using std::pair;
+  using std::vector;
+  using __gnu_cxx::hash_map;
+
   for (int i = 0; i < 10; i++)
   {
-    hash_map<string,int> a;
-    hash_map<string,int> b;
+    hash_map<string, int> a;
+    hash_map<string, int> b;
     
-    vector<pair<string,int> > contents (Size);
+    vector<pair<string, int> > contents (Size);
     for (int j = 0; j < Size; j++)
     {
       string s;
index e78e1c0b76fd96328bb50dd6936a0484290fc9da..91f8240e150a9bfa675f0c8c0ca5f933c6ea2055 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2004 Free Software Foundation
+// Copyright (C) 2004, 2005 Free Software Foundation
 //
 // 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
 // libstdc++/14648
 void test01() 
 { 
-  using namespace std; 
   using namespace __gnu_cxx;
 
-  typedef hash_map<char, crope, hash<char>, equal_to<char> > maptype; 
+  typedef hash_map<char, crope, hash<char>, std::equal_to<char> > maptype; 
   maptype m; 
   m['l'] = "50";
   m['x'] = "10";
-  cout << "m['x'] = " << m['x'] << endl; 
+  std::cout << "m['x'] = " << m['x'] << std::endl; 
 }  
 
 int main()
index 3d6a3f2d1c23016446fa154e4833b15bd2b1ed87..c43db15e4c344dd623ddae65f70ec0164557faca 100644 (file)
@@ -74,7 +74,8 @@ namespace __gnu_test
   typedef character<unsigned int, unsigned long>               pod_uint;  
 }
 
-namespace __gnu_cxx {
+namespace __gnu_cxx 
+{
   // Specializations.
   // pod_char
   template<>