diff options
author | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-12-19 00:56:05 +0000 |
---|---|---|
committer | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-12-19 00:56:05 +0000 |
commit | 1069247db128b23a7b0c830626c61a51ca10649a (patch) | |
tree | 827ba3eb885e93b2a058124da8547cb937b19a27 /libstdc++-v3/include | |
parent | 02b41f5da1f8fc0294adc6a297d9618a10c90ef5 (diff) | |
download | gcc-1069247db128b23a7b0c830626c61a51ca10649a.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108775 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include')
186 files changed, 933 insertions, 825 deletions
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am index 0120543646b..e71b76a0ec1 100644 --- a/libstdc++-v3/include/Makefile.am +++ b/libstdc++-v3/include/Makefile.am @@ -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_] diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in index 590a1076934..6c97c63c249 100644 --- a/libstdc++-v3/include/Makefile.in +++ b/libstdc++-v3/include/Makefile.in @@ -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' \ diff --git a/libstdc++-v3/include/backward/algo.h b/libstdc++-v3/include/backward/algo.h index aaa8cdd3bdb..247460105a4 100644 --- a/libstdc++-v3/include/backward/algo.h +++ b/libstdc++-v3/include/backward/algo.h @@ -143,7 +143,3 @@ using __gnu_cxx::power; using __gnu_cxx::iota; #endif /* _BACKWARD_ALGO_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/algobase.h b/libstdc++-v3/include/backward/algobase.h index 19bdcadf672..289e9886d1c 100644 --- a/libstdc++-v3/include/backward/algobase.h +++ b/libstdc++-v3/include/backward/algobase.h @@ -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: diff --git a/libstdc++-v3/include/backward/bvector.h b/libstdc++-v3/include/backward/bvector.h index 10bafc8436c..9a2c44da144 100644 --- a/libstdc++-v3/include/backward/bvector.h +++ b/libstdc++-v3/include/backward/bvector.h @@ -62,7 +62,3 @@ typedef std::vector<bool, std::allocator<bool> > bit_vector; #endif /* _BACKWARD_BVECTOR_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/complex.h b/libstdc++-v3/include/backward/complex.h index b03072e475c..7972cf7303f 100644 --- a/libstdc++-v3/include/backward/complex.h +++ b/libstdc++-v3/include/backward/complex.h @@ -37,7 +37,3 @@ typedef complex<double> double_complex; typedef complex<long double> long_double_complex; #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/deque.h b/libstdc++-v3/include/backward/deque.h index 54b65ecce60..a4a6b418117 100644 --- a/libstdc++-v3/include/backward/deque.h +++ b/libstdc++-v3/include/backward/deque.h @@ -64,7 +64,3 @@ using std::deque; #endif /* _BACKWARD_DEQUE_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/fstream.h b/libstdc++-v3/include/backward/fstream.h index c721ca5f312..92835f9b844 100644 --- a/libstdc++-v3/include/backward/fstream.h +++ b/libstdc++-v3/include/backward/fstream.h @@ -46,7 +46,3 @@ using std::wstreampos; #endif #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/function.h b/libstdc++-v3/include/backward/function.h index e7f29a636a8..b5be371d8cd 100644 --- a/libstdc++-v3/include/backward/function.h +++ b/libstdc++-v3/include/backward/function.h @@ -124,7 +124,3 @@ using __gnu_cxx::mem_fun1; using __gnu_cxx::mem_fun1_ref; #endif /* _BACKWARD_FUNCTION_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/hash_map.h b/libstdc++-v3/include/backward/hash_map.h index cbeed9947cb..aa1452200a3 100644 --- a/libstdc++-v3/include/backward/hash_map.h +++ b/libstdc++-v3/include/backward/hash_map.h @@ -66,7 +66,3 @@ using __gnu_cxx::hash_map; using __gnu_cxx::hash_multimap; #endif /* _BACKWARD_HASH_MAP_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/hashtable.h b/libstdc++-v3/include/backward/hashtable.h index 72fd281ba6e..7b7511b832c 100644 --- a/libstdc++-v3/include/backward/hashtable.h +++ b/libstdc++-v3/include/backward/hashtable.h @@ -70,7 +70,3 @@ using __gnu_cxx::hash; using __gnu_cxx::hashtable; #endif /* _BACKWARD_HASHTABLE_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/heap.h b/libstdc++-v3/include/backward/heap.h index 6e02c355b3c..ef2e68475aa 100644 --- a/libstdc++-v3/include/backward/heap.h +++ b/libstdc++-v3/include/backward/heap.h @@ -65,7 +65,3 @@ using std::make_heap; using std::sort_heap; #endif /* _BACKWARD_HEAP_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/iomanip.h b/libstdc++-v3/include/backward/iomanip.h index aeb7b1f6c34..a4099a7bec4 100644 --- a/libstdc++-v3/include/backward/iomanip.h +++ b/libstdc++-v3/include/backward/iomanip.h @@ -64,7 +64,3 @@ using std::setprecision; using std::setw; #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/iostream.h b/libstdc++-v3/include/backward/iostream.h index e22d1131151..ed275ffa98d 100644 --- a/libstdc++-v3/include/backward/iostream.h +++ b/libstdc++-v3/include/backward/iostream.h @@ -54,7 +54,3 @@ using std::ends; using std::flush; #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/istream.h b/libstdc++-v3/include/backward/istream.h index 7db8f41a79b..b1c55d18991 100644 --- a/libstdc++-v3/include/backward/istream.h +++ b/libstdc++-v3/include/backward/istream.h @@ -32,12 +32,3 @@ #include "iostream.h" #endif - -// Local Variables: -// mode:C++ -// End: - - - - - diff --git a/libstdc++-v3/include/backward/iterator.h b/libstdc++-v3/include/backward/iterator.h index 815bd151066..89496fb8fff 100644 --- a/libstdc++-v3/include/backward/iterator.h +++ b/libstdc++-v3/include/backward/iterator.h @@ -185,7 +185,3 @@ template <class _ForwardIterator> using std::raw_storage_iterator; #endif /* _BACKWARD_ITERATOR_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/list.h b/libstdc++-v3/include/backward/list.h index f8f85e1211d..d70a6e4ae7d 100644 --- a/libstdc++-v3/include/backward/list.h +++ b/libstdc++-v3/include/backward/list.h @@ -64,7 +64,3 @@ using std::list; #endif /* _BACKWARD_LIST_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/map.h b/libstdc++-v3/include/backward/map.h index 0b5051dce53..2ff3cec667e 100644 --- a/libstdc++-v3/include/backward/map.h +++ b/libstdc++-v3/include/backward/map.h @@ -63,7 +63,3 @@ using std::map; #endif /* _BACKWARD_MAP_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/multimap.h b/libstdc++-v3/include/backward/multimap.h index 534d1c9e5e0..515d2995049 100644 --- a/libstdc++-v3/include/backward/multimap.h +++ b/libstdc++-v3/include/backward/multimap.h @@ -63,7 +63,3 @@ using std::multimap; #endif /* _BACKWARD_MULTIMAP_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/multiset.h b/libstdc++-v3/include/backward/multiset.h index 47af8153b61..1f857ae6eb0 100644 --- a/libstdc++-v3/include/backward/multiset.h +++ b/libstdc++-v3/include/backward/multiset.h @@ -63,7 +63,3 @@ using std::multiset; #endif /* _BACKWARD_MULTISET_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/ostream.h b/libstdc++-v3/include/backward/ostream.h index f30ebe4dd89..07ef9b0f2b3 100644 --- a/libstdc++-v3/include/backward/ostream.h +++ b/libstdc++-v3/include/backward/ostream.h @@ -32,7 +32,3 @@ #include "iostream.h" #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/pair.h b/libstdc++-v3/include/backward/pair.h index fa89efe0555..4985bcbfdd2 100644 --- a/libstdc++-v3/include/backward/pair.h +++ b/libstdc++-v3/include/backward/pair.h @@ -64,7 +64,3 @@ using std::pair; using std::make_pair; #endif /* _BACKWARD_PAIR_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/queue.h b/libstdc++-v3/include/backward/queue.h index 1da475c03c1..da7505c28d1 100644 --- a/libstdc++-v3/include/backward/queue.h +++ b/libstdc++-v3/include/backward/queue.h @@ -35,7 +35,3 @@ using std::queue; using std::priority_queue; #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/rope.h b/libstdc++-v3/include/backward/rope.h index 6745c487c3a..71e88153267 100644 --- a/libstdc++-v3/include/backward/rope.h +++ b/libstdc++-v3/include/backward/rope.h @@ -54,7 +54,3 @@ using __gnu_cxx::crope; using __gnu_cxx::wrope; #endif /* _BACKWARD_ROPE_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/set.h b/libstdc++-v3/include/backward/set.h index 004349425e5..3c6a390cf49 100644 --- a/libstdc++-v3/include/backward/set.h +++ b/libstdc++-v3/include/backward/set.h @@ -63,7 +63,3 @@ using std::set; #endif /* _BACKWARD_SET_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/slist.h b/libstdc++-v3/include/backward/slist.h index 3764a77b8ad..9b9a43d3f0d 100644 --- a/libstdc++-v3/include/backward/slist.h +++ b/libstdc++-v3/include/backward/slist.h @@ -50,7 +50,3 @@ using __gnu_cxx::slist; #endif /* _BACKWARD_SLIST_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/stack.h b/libstdc++-v3/include/backward/stack.h index a4c586aecf8..07df41769e0 100644 --- a/libstdc++-v3/include/backward/stack.h +++ b/libstdc++-v3/include/backward/stack.h @@ -66,7 +66,3 @@ using std::stack; #endif /* _BACKWARD_STACK_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/stream.h b/libstdc++-v3/include/backward/stream.h index ab27241fb2e..c137601e676 100644 --- a/libstdc++-v3/include/backward/stream.h +++ b/libstdc++-v3/include/backward/stream.h @@ -32,7 +32,3 @@ #include "iostream.h" #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/streambuf.h b/libstdc++-v3/include/backward/streambuf.h index 86730ecbe12..bac24495a05 100644 --- a/libstdc++-v3/include/backward/streambuf.h +++ b/libstdc++-v3/include/backward/streambuf.h @@ -34,7 +34,3 @@ using std::streambuf; #endif - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/strstream b/libstdc++-v3/include/backward/strstream index a8d94f40024..d0d5a13863f 100644 --- a/libstdc++-v3/include/backward/strstream +++ b/libstdc++-v3/include/backward/strstream @@ -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 diff --git a/libstdc++-v3/include/backward/tempbuf.h b/libstdc++-v3/include/backward/tempbuf.h index c42db0365ae..af6e57daa3b 100644 --- a/libstdc++-v3/include/backward/tempbuf.h +++ b/libstdc++-v3/include/backward/tempbuf.h @@ -72,7 +72,3 @@ using std::return_temporary_buffer; using __gnu_cxx::temporary_buffer; #endif /* _BACKWARD_TEMPBUF_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/tree.h b/libstdc++-v3/include/backward/tree.h index 25e49561e18..88a2f1d7c82 100644 --- a/libstdc++-v3/include/backward/tree.h +++ b/libstdc++-v3/include/backward/tree.h @@ -50,6 +50,3 @@ using __gnu_cxx::rb_tree; #endif -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/backward/vector.h b/libstdc++-v3/include/backward/vector.h index f4ab069d228..8cd8dd0f360 100644 --- a/libstdc++-v3/include/backward/vector.h +++ b/libstdc++-v3/include/backward/vector.h @@ -64,7 +64,3 @@ using std::vector; #endif /* _BACKWARD_VECTOR_H */ - -// Local Variables: -// mode:C++ -// End: diff --git a/libstdc++-v3/include/bits/allocator.h b/libstdc++-v3/include/bits/allocator.h index 5bba2a95e73..18bfd5f60eb 100644 --- a/libstdc++-v3/include/bits/allocator.h +++ b/libstdc++-v3/include/bits/allocator.h @@ -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 diff --git a/libstdc++-v3/include/bits/atomicity.h b/libstdc++-v3/include/bits/atomicity.h index aa73736ab62..f436e0bdc00 100644 --- a/libstdc++-v3/include/bits/atomicity.h +++ b/libstdc++-v3/include/bits/atomicity.h @@ -1,6 +1,6 @@ // Low-level functions for atomic operations -*- C++ -*- -// Copyright (C) 2004 Free Software Foundation, Inc. +// Copyright (C) 2004, 2005 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -35,10 +35,11 @@ #ifndef _GLIBCXX_ATOMICITY_H #define _GLIBCXX_ATOMICITY_H 1 +#include <bits/c++config.h> #include <bits/atomic_word.h> - -namespace __gnu_cxx -{ + +_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) + _Atomic_word __attribute__ ((__unused__)) __exchange_and_add(volatile _Atomic_word* __mem, int __val); @@ -46,7 +47,8 @@ namespace __gnu_cxx void __attribute__ ((__unused__)) __atomic_add(volatile _Atomic_word* __mem, int __val); -} // namespace __gnu_cxx + +_GLIBCXX_END_NAMESPACE /* Even if the CPU doesn't need a memory barrier, we need to ensure that the compiler doesn't reorder memory accesses across the barriers. */ diff --git a/libstdc++-v3/include/bits/basic_ios.h b/libstdc++-v3/include/bits/basic_ios.h index 90886712bc5..d078431b9fd 100644 --- a/libstdc++-v3/include/bits/basic_ios.h +++ b/libstdc++-v3/include/bits/basic_ios.h @@ -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> diff --git a/libstdc++-v3/include/bits/basic_ios.tcc b/libstdc++-v3/include/bits/basic_ios.tcc index b536a0daeba..e8434a5bdf0 100644 --- a/libstdc++-v3/include/bits/basic_ios.tcc +++ b/libstdc++-v3/include/bits/basic_ios.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/basic_string.h b/libstdc++-v3/include/bits/basic_string.h index 0ff2e54e8d3..acd2f144e81 100644 --- a/libstdc++-v3/include/bits/basic_string.h +++ b/libstdc++-v3/include/bits/basic_string.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc index f8f9f3ef2f4..6b21d830742 100644 --- a/libstdc++-v3/include/bits/basic_string.tcc +++ b/libstdc++-v3/include/bits/basic_string.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/boost_concept_check.h b/libstdc++-v3/include/bits/boost_concept_check.h index 24160ed4e9e..38380b7ee23 100644 --- a/libstdc++-v3/include/bits/boost_concept_check.h +++ b/libstdc++-v3/include/bits/boost_concept_check.h @@ -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 diff --git a/libstdc++-v3/include/bits/c++config b/libstdc++-v3/include/bits/c++config index eb8dc798f0b..31a60a7e7b2 100644 --- a/libstdc++-v3/include/bits/c++config +++ b/libstdc++-v3/include/bits/c++config @@ -37,33 +37,98 @@ // Pick up any CPU-specific definitions. #include <bits/cpu_defines.h> -// Debug mode support. Debug mode basic_string is not allowed to be -// associated with std, because of locale and exception link -// dependence. -namespace __gnu_debug_def { } +// 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. diff --git a/libstdc++-v3/include/bits/char_traits.h b/libstdc++-v3/include/bits/char_traits.h index 6b4c916b775..410e01b238d 100644 --- a/libstdc++-v3/include/bits/char_traits.h +++ b/libstdc++-v3/include/bits/char_traits.h @@ -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 diff --git a/libstdc++-v3/include/bits/concurrence.h b/libstdc++-v3/include/bits/concurrence.h index 5f1b682cbd4..81bf2a6215a 100644 --- a/libstdc++-v3/include/bits/concurrence.h +++ b/libstdc++-v3/include/bits/concurrence.h @@ -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 diff --git a/libstdc++-v3/include/bits/cpp_type_traits.h b/libstdc++-v3/include/bits/cpp_type_traits.h index 5ac9c98e704..e75bf47f08b 100644 --- a/libstdc++-v3/include/bits/cpp_type_traits.h +++ b/libstdc++-v3/include/bits/cpp_type_traits.h @@ -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 diff --git a/libstdc++-v3/include/bits/deque.tcc b/libstdc++-v3/include/bits/deque.tcc index d8f5ef6f0d2..2f455930de0 100644 --- a/libstdc++-v3/include/bits/deque.tcc +++ b/libstdc++-v3/include/bits/deque.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/fstream.tcc b/libstdc++-v3/include/bits/fstream.tcc index 652c54d8786..08fcdbe5ec9 100644 --- a/libstdc++-v3/include/bits/fstream.tcc +++ b/libstdc++-v3/include/bits/fstream.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/functexcept.h b/libstdc++-v3/include/bits/functexcept.h index 3e2ce2c5581..59358c4060e 100644 --- a/libstdc++-v3/include/bits/functexcept.h +++ b/libstdc++-v3/include/bits/functexcept.h @@ -38,10 +38,11 @@ #ifndef _FUNCTEXCEPT_H #define _FUNCTEXCEPT_H 1 +#include <bits/c++config.h> #include <exception_defines.h> -namespace std -{ +_GLIBCXX_BEGIN_NAMESPACE(std) + // Helper for exception objects in <except> void __throw_bad_exception(void) __attribute__((__noreturn__)); @@ -88,6 +89,7 @@ namespace std // Helpers for exception objects in basic_ios void __throw_ios_failure(const char*) __attribute__((__noreturn__)); -} // namespace std + +_GLIBCXX_END_NAMESPACE #endif diff --git a/libstdc++-v3/include/bits/gslice.h b/libstdc++-v3/include/bits/gslice.h index 31cb1029fdc..560aeb5e8c9 100644 --- a/libstdc++-v3/include/bits/gslice.h +++ b/libstdc++-v3/include/bits/gslice.h @@ -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: diff --git a/libstdc++-v3/include/bits/gslice_array.h b/libstdc++-v3/include/bits/gslice_array.h index 2904efec7fb..0b12207d039 100644 --- a/libstdc++-v3/include/bits/gslice_array.h +++ b/libstdc++-v3/include/bits/gslice_array.h @@ -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: diff --git a/libstdc++-v3/include/bits/indirect_array.h b/libstdc++-v3/include/bits/indirect_array.h index aca2fe38ea9..c6038e3511e 100644 --- a/libstdc++-v3/include/bits/indirect_array.h +++ b/libstdc++-v3/include/bits/indirect_array.h @@ -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: diff --git a/libstdc++-v3/include/bits/ios_base.h b/libstdc++-v3/include/bits/ios_base.h index 644c6555075..cc88f40f861 100644 --- a/libstdc++-v3/include/bits/ios_base.h +++ b/libstdc++-v3/include/bits/ios_base.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/istream.tcc b/libstdc++-v3/include/bits/istream.tcc index 21299e60b62..541e75afb80 100644 --- a/libstdc++-v3/include/bits/istream.tcc +++ b/libstdc++-v3/include/bits/istream.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/list.tcc b/libstdc++-v3/include/bits/list.tcc index ece04300f31..355ec75ba95 100644 --- a/libstdc++-v3/include/bits/list.tcc +++ b/libstdc++-v3/include/bits/list.tcc @@ -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 */ diff --git a/libstdc++-v3/include/bits/locale_classes.h b/libstdc++-v3/include/bits/locale_classes.h index aed938d0c10..3abe4150465 100644 --- a/libstdc++-v3/include/bits/locale_classes.h +++ b/libstdc++-v3/include/bits/locale_classes.h @@ -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 diff --git a/libstdc++-v3/include/bits/locale_facets.h b/libstdc++-v3/include/bits/locale_facets.h index b4cd513b93e..339bb5339b2 100644 --- a/libstdc++-v3/include/bits/locale_facets.h +++ b/libstdc++-v3/include/bits/locale_facets.h @@ -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 diff --git a/libstdc++-v3/include/bits/locale_facets.tcc b/libstdc++-v3/include/bits/locale_facets.tcc index eb4a3527c5c..9d337e9defa 100644 --- a/libstdc++-v3/include/bits/locale_facets.tcc +++ b/libstdc++-v3/include/bits/locale_facets.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/localefwd.h b/libstdc++-v3/include/bits/localefwd.h index 258fcc13ae2..94cafb2e387 100644 --- a/libstdc++-v3/include/bits/localefwd.h +++ b/libstdc++-v3/include/bits/localefwd.h @@ -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 diff --git a/libstdc++-v3/include/bits/mask_array.h b/libstdc++-v3/include/bits/mask_array.h index 592aad7dcf5..f2c6661268b 100644 --- a/libstdc++-v3/include/bits/mask_array.h +++ b/libstdc++-v3/include/bits/mask_array.h @@ -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: diff --git a/libstdc++-v3/include/bits/ostream.tcc b/libstdc++-v3/include/bits/ostream.tcc index e26ad50d6b8..1642583845f 100644 --- a/libstdc++-v3/include/bits/ostream.tcc +++ b/libstdc++-v3/include/bits/ostream.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/postypes.h b/libstdc++-v3/include/bits/postypes.h index 6df0ef93412..97ab8d1e089 100644 --- a/libstdc++-v3/include/bits/postypes.h +++ b/libstdc++-v3/include/bits/postypes.h @@ -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 diff --git a/libstdc++-v3/include/bits/slice_array.h b/libstdc++-v3/include/bits/slice_array.h index bde07d5e7e0..41debfe5539 100644 --- a/libstdc++-v3/include/bits/slice_array.h +++ b/libstdc++-v3/include/bits/slice_array.h @@ -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: diff --git a/libstdc++-v3/include/bits/sstream.tcc b/libstdc++-v3/include/bits/sstream.tcc index 28fb1959e9a..eb12ca45891 100644 --- a/libstdc++-v3/include/bits/sstream.tcc +++ b/libstdc++-v3/include/bits/sstream.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/stl_algo.h b/libstdc++-v3/include/bits/stl_algo.h index 6cb9c0b7d7a..355d859a901 100644 --- a/libstdc++-v3/include/bits/stl_algo.h +++ b/libstdc++-v3/include/bits/stl_algo.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_algobase.h b/libstdc++-v3/include/bits/stl_algobase.h index c3398327346..730699648e1 100644 --- a/libstdc++-v3/include/bits/stl_algobase.h +++ b/libstdc++-v3/include/bits/stl_algobase.h @@ -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 diff --git a/libstdc++-v3/include/bits/stl_bvector.h b/libstdc++-v3/include/bits/stl_bvector.h index 05c7e09adfb..0779ea692d6 100644 --- a/libstdc++-v3/include/bits/stl_bvector.h +++ b/libstdc++-v3/include/bits/stl_bvector.h @@ -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 diff --git a/libstdc++-v3/include/bits/stl_construct.h b/libstdc++-v3/include/bits/stl_construct.h index 8f78d8c30b9..0a03fb72d3f 100644 --- a/libstdc++-v3/include/bits/stl_construct.h +++ b/libstdc++-v3/include/bits/stl_construct.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_deque.h b/libstdc++-v3/include/bits/stl_deque.h index 15401ba6865..107bbfe69a1 100644 --- a/libstdc++-v3/include/bits/stl_deque.h +++ b/libstdc++-v3/include/bits/stl_deque.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_function.h b/libstdc++-v3/include/bits/stl_function.h index dac19c8e525..db213dc0a92 100644 --- a/libstdc++-v3/include/bits/stl_function.h +++ b/libstdc++-v3/include/bits/stl_function.h @@ -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: diff --git a/libstdc++-v3/include/bits/stl_heap.h b/libstdc++-v3/include/bits/stl_heap.h index 3dd0001e7f1..f9e337f31be 100644 --- a/libstdc++-v3/include/bits/stl_heap.h +++ b/libstdc++-v3/include/bits/stl_heap.h @@ -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: diff --git a/libstdc++-v3/include/bits/stl_iterator.h b/libstdc++-v3/include/bits/stl_iterator.h index 12b2e9c6f9a..7746aa2b950 100644 --- a/libstdc++-v3/include/bits/stl_iterator.h +++ b/libstdc++-v3/include/bits/stl_iterator.h @@ -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 diff --git a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h index 6e550fadf5b..82bf040afb2 100644 --- a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h +++ b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_iterator_base_types.h b/libstdc++-v3/include/bits/stl_iterator_base_types.h index 2161f2a8136..c02cd261d8d 100644 --- a/libstdc++-v3/include/bits/stl_iterator_base_types.h +++ b/libstdc++-v3/include/bits/stl_iterator_base_types.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_list.h b/libstdc++-v3/include/bits/stl_list.h index f93a03224cc..03b70a39fb0 100644 --- a/libstdc++-v3/include/bits/stl_list.h +++ b/libstdc++-v3/include/bits/stl_list.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_map.h b/libstdc++-v3/include/bits/stl_map.h index 4d4dd7edf6d..a1cfafb850a 100644 --- a/libstdc++-v3/include/bits/stl_map.h +++ b/libstdc++-v3/include/bits/stl_map.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_multimap.h b/libstdc++-v3/include/bits/stl_multimap.h index 5c662275130..4adf65ba836 100644 --- a/libstdc++-v3/include/bits/stl_multimap.h +++ b/libstdc++-v3/include/bits/stl_multimap.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_multiset.h b/libstdc++-v3/include/bits/stl_multiset.h index 185f51ce989..f685b4f6e63 100644 --- a/libstdc++-v3/include/bits/stl_multiset.h +++ b/libstdc++-v3/include/bits/stl_multiset.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_numeric.h b/libstdc++-v3/include/bits/stl_numeric.h index 79706806d50..82bee216d10 100644 --- a/libstdc++-v3/include/bits/stl_numeric.h +++ b/libstdc++-v3/include/bits/stl_numeric.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_pair.h b/libstdc++-v3/include/bits/stl_pair.h index b97de332729..b4bb00c26e1 100644 --- a/libstdc++-v3/include/bits/stl_pair.h +++ b/libstdc++-v3/include/bits/stl_pair.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_queue.h b/libstdc++-v3/include/bits/stl_queue.h index b7d03b8ab2c..e0da22fb213 100644 --- a/libstdc++-v3/include/bits/stl_queue.h +++ b/libstdc++-v3/include/bits/stl_queue.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_raw_storage_iter.h b/libstdc++-v3/include/bits/stl_raw_storage_iter.h index 40577655b98..615da28524e 100644 --- a/libstdc++-v3/include/bits/stl_raw_storage_iter.h +++ b/libstdc++-v3/include/bits/stl_raw_storage_iter.h @@ -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 diff --git a/libstdc++-v3/include/bits/stl_relops.h b/libstdc++-v3/include/bits/stl_relops.h index 1395472d038..11fc30dedd8 100644 --- a/libstdc++-v3/include/bits/stl_relops.h +++ b/libstdc++-v3/include/bits/stl_relops.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_set.h b/libstdc++-v3/include/bits/stl_set.h index 1172e509311..042e95fc20f 100644 --- a/libstdc++-v3/include/bits/stl_set.h +++ b/libstdc++-v3/include/bits/stl_set.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_stack.h b/libstdc++-v3/include/bits/stl_stack.h index c3a527543e4..22e56603893 100644 --- a/libstdc++-v3/include/bits/stl_stack.h +++ b/libstdc++-v3/include/bits/stl_stack.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_tempbuf.h b/libstdc++-v3/include/bits/stl_tempbuf.h index 7263099d7ec..970af452de7 100644 --- a/libstdc++-v3/include/bits/stl_tempbuf.h +++ b/libstdc++-v3/include/bits/stl_tempbuf.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_tree.h b/libstdc++-v3/include/bits/stl_tree.h index 13088ca7555..ad0e68df9c1 100644 --- a/libstdc++-v3/include/bits/stl_tree.h +++ b/libstdc++-v3/include/bits/stl_tree.h @@ -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 diff --git a/libstdc++-v3/include/bits/stl_uninitialized.h b/libstdc++-v3/include/bits/stl_uninitialized.h index 6b06ad064d8..c5748fc284d 100644 --- a/libstdc++-v3/include/bits/stl_uninitialized.h +++ b/libstdc++-v3/include/bits/stl_uninitialized.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stl_vector.h b/libstdc++-v3/include/bits/stl_vector.h index 731806b0a94..c4107fa6e77 100644 --- a/libstdc++-v3/include/bits/stl_vector.h +++ b/libstdc++-v3/include/bits/stl_vector.h @@ -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 */ diff --git a/libstdc++-v3/include/bits/stream_iterator.h b/libstdc++-v3/include/bits/stream_iterator.h index c247868fa77..dabb9ce46a2 100644 --- a/libstdc++-v3/include/bits/stream_iterator.h +++ b/libstdc++-v3/include/bits/stream_iterator.h @@ -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 diff --git a/libstdc++-v3/include/bits/streambuf.tcc b/libstdc++-v3/include/bits/streambuf.tcc index e6c54ed0889..b1a4876fded 100644 --- a/libstdc++-v3/include/bits/streambuf.tcc +++ b/libstdc++-v3/include/bits/streambuf.tcc @@ -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 diff --git a/libstdc++-v3/include/bits/streambuf_iterator.h b/libstdc++-v3/include/bits/streambuf_iterator.h index 0de592202eb..e3b5a3b4c3a 100644 --- a/libstdc++-v3/include/bits/streambuf_iterator.h +++ b/libstdc++-v3/include/bits/streambuf_iterator.h @@ -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 diff --git a/libstdc++-v3/include/bits/stringfwd.h b/libstdc++-v3/include/bits/stringfwd.h index 8bb59d96c00..8158e8572e6 100644 --- a/libstdc++-v3/include/bits/stringfwd.h +++ b/libstdc++-v3/include/bits/stringfwd.h @@ -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 diff --git a/libstdc++-v3/include/bits/valarray_after.h b/libstdc++-v3/include/bits/valarray_after.h index 8d73d42f27c..62d9853c5a8 100644 --- a/libstdc++-v3/include/bits/valarray_after.h +++ b/libstdc++-v3/include/bits/valarray_after.h @@ -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: diff --git a/libstdc++-v3/include/bits/valarray_array.h b/libstdc++-v3/include/bits/valarray_array.h index 940d886c4be..490384fdcc4 100644 --- a/libstdc++-v3/include/bits/valarray_array.h +++ b/libstdc++-v3/include/bits/valarray_array.h @@ -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> diff --git a/libstdc++-v3/include/bits/valarray_array.tcc b/libstdc++-v3/include/bits/valarray_array.tcc index b4be2c7d018..f00ffb4dc8b 100644 --- a/libstdc++-v3/include/bits/valarray_array.tcc +++ b/libstdc++-v3/include/bits/valarray_array.tcc @@ -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 */ diff --git a/libstdc++-v3/include/bits/valarray_before.h b/libstdc++-v3/include/bits/valarray_before.h index 2f1a64f82ab..5a294af893d 100644 --- a/libstdc++-v3/include/bits/valarray_before.h +++ b/libstdc++-v3/include/bits/valarray_before.h @@ -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: diff --git a/libstdc++-v3/include/bits/vector.tcc b/libstdc++-v3/include/bits/vector.tcc index 9213057a2ab..f476c460d33 100644 --- a/libstdc++-v3/include/bits/vector.tcc +++ b/libstdc++-v3/include/bits/vector.tcc @@ -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 */ diff --git a/libstdc++-v3/include/c_std/std_cctype.h b/libstdc++-v3/include/c_std/std_cctype.h index 008f7069f41..92473981df8 100644 --- a/libstdc++-v3/include/c_std/std_cctype.h +++ b/libstdc++-v3/include/c_std/std_cctype.h @@ -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 diff --git a/libstdc++-v3/include/c_std/std_clocale.h b/libstdc++-v3/include/c_std/std_clocale.h index 9a3e516e7c1..2ec904c6cd8 100644 --- a/libstdc++-v3/include/c_std/std_clocale.h +++ b/libstdc++-v3/include/c_std/std_clocale.h @@ -47,17 +47,19 @@ #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 diff --git a/libstdc++-v3/include/c_std/std_cmath.h b/libstdc++-v3/include/c_std/std_cmath.h index 115fe471064..7728faf176f 100644 --- a/libstdc++-v3/include/c_std/std_cmath.h +++ b/libstdc++-v3/include/c_std/std_cmath.h @@ -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 diff --git a/libstdc++-v3/include/c_std/std_csetjmp.h b/libstdc++-v3/include/c_std/std_csetjmp.h index 290f2e9e675..5d664ebd8d9 100644 --- a/libstdc++-v3/include/c_std/std_csetjmp.h +++ b/libstdc++-v3/include/c_std/std_csetjmp.h @@ -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. @@ -57,10 +58,11 @@ #define setjmp(env) setjmp (env) #endif -namespace std -{ +_GLIBCXX_BEGIN_NAMESPACE(std) + using ::jmp_buf; using ::longjmp; -} + +_GLIBCXX_END_NAMESPACE #endif diff --git a/libstdc++-v3/include/c_std/std_csignal.h b/libstdc++-v3/include/c_std/std_csignal.h index 0db1c11abe3..4202b77c586 100644 --- a/libstdc++-v3/include/c_std/std_csignal.h +++ b/libstdc++-v3/include/c_std/std_csignal.h @@ -47,16 +47,18 @@ #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 diff --git a/libstdc++-v3/include/c_std/std_cstdarg.h b/libstdc++-v3/include/c_std/std_cstdarg.h index c98b5dbf88f..bbc3b338e86 100644 --- a/libstdc++-v3/include/c_std/std_cstdarg.h +++ b/libstdc++-v3/include/c_std/std_cstdarg.h @@ -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 @@ -54,9 +55,10 @@ #define va_end(ap) va_end (ap) #endif -namespace std -{ +_GLIBCXX_BEGIN_NAMESPACE(std) + using ::va_list; -} + +_GLIBCXX_END_NAMESPACE #endif diff --git a/libstdc++-v3/include/c_std/std_cstddef.h b/libstdc++-v3/include/c_std/std_cstddef.h index f1860a76143..ad529d530da 100644 --- a/libstdc++-v3/include/c_std/std_cstddef.h +++ b/libstdc++-v3/include/c_std/std_cstddef.h @@ -47,12 +47,14 @@ #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 diff --git a/libstdc++-v3/include/c_std/std_cstdio.h b/libstdc++-v3/include/c_std/std_cstdio.h index 9f5f7dd3ac1..c8109c0409b 100644 --- a/libstdc++-v3/include/c_std/std_cstdio.h +++ b/libstdc++-v3/include/c_std/std_cstdio.h @@ -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 diff --git a/libstdc++-v3/include/c_std/std_cstdlib.h b/libstdc++-v3/include/c_std/std_cstdlib.h index 2139092f57d..cc2a8cfbee9 100644 --- a/libstdc++-v3/include/c_std/std_cstdlib.h +++ b/libstdc++-v3/include/c_std/std_cstdlib.h @@ -59,12 +59,13 @@ #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 diff --git a/libstdc++-v3/include/c_std/std_cstring.h b/libstdc++-v3/include/c_std/std_cstring.h index 7efbf8f3262..a77e7c28a80 100644 --- a/libstdc++-v3/include/c_std/std_cstring.h +++ b/libstdc++-v3/include/c_std/std_cstring.h @@ -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 diff --git a/libstdc++-v3/include/c_std/std_ctime.h b/libstdc++-v3/include/c_std/std_ctime.h index ef3307e1e3c..05295cf0f43 100644 --- a/libstdc++-v3/include/c_std/std_ctime.h +++ b/libstdc++-v3/include/c_std/std_ctime.h @@ -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 diff --git a/libstdc++-v3/include/c_std/std_cwchar.h b/libstdc++-v3/include/c_std/std_cwchar.h index 5e3ab9099d7..8f03a416ad0 100644 --- a/libstdc++-v3/include/c_std/std_cwchar.h +++ b/libstdc++-v3/include/c_std/std_cwchar.h @@ -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 diff --git a/libstdc++-v3/include/c_std/std_cwctype.h b/libstdc++-v3/include/c_std/std_cwctype.h index 9f297c42eed..ba699b75df0 100644 --- a/libstdc++-v3/include/c_std/std_cwctype.h +++ b/libstdc++-v3/include/c_std/std_cwctype.h @@ -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 diff --git a/libstdc++-v3/include/debug/bitset b/libstdc++-v3/include/debug/bitset index 2bdca187b5c..11970c6748f 100644 --- a/libstdc++-v3/include/debug/bitset +++ b/libstdc++-v3/include/debug/bitset @@ -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 diff --git a/libstdc++-v3/include/debug/debug.h b/libstdc++-v3/include/debug/debug.h index c2910968176..4eff05bdab6 100644 --- a/libstdc++-v3/include/debug/debug.h +++ b/libstdc++-v3/include/debug/debug.h @@ -39,16 +39,27 @@ * 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) diff --git a/libstdc++-v3/include/debug/deque b/libstdc++-v3/include/debug/deque index a69ce621979..48cbe1a5b50 100644 --- a/libstdc++-v3/include/debug/deque +++ b/libstdc++-v3/include/debug/deque @@ -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 diff --git a/libstdc++-v3/include/debug/formatter.h b/libstdc++-v3/include/debug/formatter.h index 2c2035ea880..b37ee8cf276 100644 --- a/libstdc++-v3/include/debug/formatter.h +++ b/libstdc++-v3/include/debug/formatter.h @@ -33,10 +33,10 @@ #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 diff --git a/libstdc++-v3/include/debug/functions.h b/libstdc++-v3/include/debug/functions.h index 744071120cc..1abe16300cd 100644 --- a/libstdc++-v3/include/debug/functions.h +++ b/libstdc++-v3/include/debug/functions.h @@ -31,10 +31,13 @@ #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 diff --git a/libstdc++-v3/include/debug/hash_map.h b/libstdc++-v3/include/debug/hash_map.h index a6900b5f3c2..e02b747a04d 100644 --- a/libstdc++-v3/include/debug/hash_map.h +++ b/libstdc++-v3/include/debug/hash_map.h @@ -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 diff --git a/libstdc++-v3/include/debug/hash_multimap.h b/libstdc++-v3/include/debug/hash_multimap.h index a6db0f2f2d5..5cce135aa43 100644 --- a/libstdc++-v3/include/debug/hash_multimap.h +++ b/libstdc++-v3/include/debug/hash_multimap.h @@ -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 diff --git a/libstdc++-v3/include/debug/hash_multiset.h b/libstdc++-v3/include/debug/hash_multiset.h index a1ad151afb0..83d5619b9cd 100644 --- a/libstdc++-v3/include/debug/hash_multiset.h +++ b/libstdc++-v3/include/debug/hash_multiset.h @@ -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 diff --git a/libstdc++-v3/include/debug/hash_set.h b/libstdc++-v3/include/debug/hash_set.h index aa62a2ea7e3..e1dd83bc646 100644 --- a/libstdc++-v3/include/debug/hash_set.h +++ b/libstdc++-v3/include/debug/hash_set.h @@ -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 diff --git a/libstdc++-v3/include/debug/list b/libstdc++-v3/include/debug/list index 2e6d0fa5103..43dc137d1d5 100644 --- a/libstdc++-v3/include/debug/list +++ b/libstdc++-v3/include/debug/list @@ -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 diff --git a/libstdc++-v3/include/debug/macros.h b/libstdc++-v3/include/debug/macros.h index 9b279cbf36a..3e24d99cd6f 100644 --- a/libstdc++-v3/include/debug/macros.h +++ b/libstdc++-v3/include/debug/macros.h @@ -43,14 +43,14 @@ #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)) diff --git a/libstdc++-v3/include/debug/map.h b/libstdc++-v3/include/debug/map.h index e0722db6c4f..75dd340b56f 100644 --- a/libstdc++-v3/include/debug/map.h +++ b/libstdc++-v3/include/debug/map.h @@ -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 diff --git a/libstdc++-v3/include/debug/multimap.h b/libstdc++-v3/include/debug/multimap.h index 89f5e87ad34..24f10f5828f 100644 --- a/libstdc++-v3/include/debug/multimap.h +++ b/libstdc++-v3/include/debug/multimap.h @@ -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 diff --git a/libstdc++-v3/include/debug/multiset.h b/libstdc++-v3/include/debug/multiset.h index 7353be94dfa..32ea0b9eb47 100644 --- a/libstdc++-v3/include/debug/multiset.h +++ b/libstdc++-v3/include/debug/multiset.h @@ -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 diff --git a/libstdc++-v3/include/debug/safe_base.h b/libstdc++-v3/include/debug/safe_base.h index b42a6c9c992..41ab648f5b9 100644 --- a/libstdc++-v3/include/debug/safe_base.h +++ b/libstdc++-v3/include/debug/safe_base.h @@ -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 diff --git a/libstdc++-v3/include/debug/safe_iterator.h b/libstdc++-v3/include/debug/safe_iterator.h index c497c113c88..bcd7324cf81 100644 --- a/libstdc++-v3/include/debug/safe_iterator.h +++ b/libstdc++-v3/include/debug/safe_iterator.h @@ -39,11 +39,10 @@ #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> diff --git a/libstdc++-v3/include/debug/safe_iterator.tcc b/libstdc++-v3/include/debug/safe_iterator.tcc index da4d413b7e3..c5d49e0f299 100644 --- a/libstdc++-v3/include/debug/safe_iterator.tcc +++ b/libstdc++-v3/include/debug/safe_iterator.tcc @@ -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 diff --git a/libstdc++-v3/include/debug/safe_sequence.h b/libstdc++-v3/include/debug/safe_sequence.h index 82c5ae0047f..23eff2c4bef 100644 --- a/libstdc++-v3/include/debug/safe_sequence.h +++ b/libstdc++-v3/include/debug/safe_sequence.h @@ -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 diff --git a/libstdc++-v3/include/debug/set.h b/libstdc++-v3/include/debug/set.h index d89a165ee4e..f9a21c6b5a1 100644 --- a/libstdc++-v3/include/debug/set.h +++ b/libstdc++-v3/include/debug/set.h @@ -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 diff --git a/libstdc++-v3/include/debug/string b/libstdc++-v3/include/debug/string index 18f90d068bd..e098d7a0b29 100644 --- a/libstdc++-v3/include/debug/string +++ b/libstdc++-v3/include/debug/string @@ -35,9 +35,11 @@ #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 diff --git a/libstdc++-v3/include/debug/vector b/libstdc++-v3/include/debug/vector index f2b36182423..5a1fc92348b 100644 --- a/libstdc++-v3/include/debug/vector +++ b/libstdc++-v3/include/debug/vector @@ -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 diff --git a/libstdc++-v3/include/ext/algorithm b/libstdc++-v3/include/ext/algorithm index 44026209544..712a4edc7fd 100644 --- a/libstdc++-v3/include/ext/algorithm +++ b/libstdc++-v3/include/ext/algorithm @@ -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 */ diff --git a/libstdc++-v3/include/ext/array_allocator.h b/libstdc++-v3/include/ext/array_allocator.h index 77f5b5cc872..02af57893fc 100644 --- a/libstdc++-v3/include/ext/array_allocator.h +++ b/libstdc++-v3/include/ext/array_allocator.h @@ -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 diff --git a/libstdc++-v3/include/ext/bitmap_allocator.h b/libstdc++-v3/include/ext/bitmap_allocator.h index 7860b6dbf97..6d80c99e509 100644 --- a/libstdc++-v3/include/ext/bitmap_allocator.h +++ b/libstdc++-v3/include/ext/bitmap_allocator.h @@ -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 diff --git a/libstdc++-v3/include/ext/codecvt_specializations.h b/libstdc++-v3/include/ext/codecvt_specializations.h index 82a5a7b0870..a83b747000c 100644 --- a/libstdc++-v3/include/ext/codecvt_specializations.h +++ b/libstdc++-v3/include/ext/codecvt_specializations.h @@ -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 diff --git a/libstdc++-v3/include/ext/debug_allocator.h b/libstdc++-v3/include/ext/debug_allocator.h index a0187a00305..aa965074722 100644 --- a/libstdc++-v3/include/ext/debug_allocator.h +++ b/libstdc++-v3/include/ext/debug_allocator.h @@ -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 diff --git a/libstdc++-v3/include/ext/functional b/libstdc++-v3/include/ext/functional index 18132c371d1..c100f59cbd6 100644 --- a/libstdc++-v3/include/ext/functional +++ b/libstdc++-v3/include/ext/functional @@ -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 diff --git a/libstdc++-v3/include/ext/hash_fun.h b/libstdc++-v3/include/ext/hash_fun.h index 6933fea64f9..16c04580754 100644 --- a/libstdc++-v3/include/ext/hash_fun.h +++ b/libstdc++-v3/include/ext/hash_fun.h @@ -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 diff --git a/libstdc++-v3/include/ext/hash_map b/libstdc++-v3/include/ext/hash_map index 3340cc36a71..6e2b5b83081 100644 --- a/libstdc++-v3/include/ext/hash_map +++ b/libstdc++-v3/include/ext/hash_map @@ -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> diff --git a/libstdc++-v3/include/ext/hash_set b/libstdc++-v3/include/ext/hash_set index 1179e885aab..178fb85ab40 100644 --- a/libstdc++-v3/include/ext/hash_set +++ b/libstdc++-v3/include/ext/hash_set @@ -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> diff --git a/libstdc++-v3/include/ext/hashtable.h b/libstdc++-v3/include/ext/hashtable.h index f6e3fd66c96..3706f80fc52 100644 --- a/libstdc++-v3/include/ext/hashtable.h +++ b/libstdc++-v3/include/ext/hashtable.h @@ -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 diff --git a/libstdc++-v3/include/ext/iterator b/libstdc++-v3/include/ext/iterator index e6334ad0fa2..b59e5ca3449 100644 --- a/libstdc++-v3/include/ext/iterator +++ b/libstdc++-v3/include/ext/iterator @@ -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 diff --git a/libstdc++-v3/include/ext/malloc_allocator.h b/libstdc++-v3/include/ext/malloc_allocator.h index 6d66c26d850..81435397788 100644 --- a/libstdc++-v3/include/ext/malloc_allocator.h +++ b/libstdc++-v3/include/ext/malloc_allocator.h @@ -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 diff --git a/libstdc++-v3/include/ext/memory b/libstdc++-v3/include/ext/memory index deb77f84ece..0755d897507 100644 --- a/libstdc++-v3/include/ext/memory +++ b/libstdc++-v3/include/ext/memory @@ -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 diff --git a/libstdc++-v3/include/ext/mt_allocator.h b/libstdc++-v3/include/ext/mt_allocator.h index 014e62a57c1..1b189c37ca6 100644 --- a/libstdc++-v3/include/ext/mt_allocator.h +++ b/libstdc++-v3/include/ext/mt_allocator.h @@ -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 diff --git a/libstdc++-v3/include/ext/new_allocator.h b/libstdc++-v3/include/ext/new_allocator.h index 40122c22054..b761b0041c6 100644 --- a/libstdc++-v3/include/ext/new_allocator.h +++ b/libstdc++-v3/include/ext/new_allocator.h @@ -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 diff --git a/libstdc++-v3/include/ext/numeric b/libstdc++-v3/include/ext/numeric index 0f112c2d6e1..290d032836a 100644 --- a/libstdc++-v3/include/ext/numeric +++ b/libstdc++-v3/include/ext/numeric @@ -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 diff --git a/libstdc++-v3/include/ext/pod_char_traits.h b/libstdc++-v3/include/ext/pod_char_traits.h index 8b9a5688a59..236e349cd44 100644 --- a/libstdc++-v3/include/ext/pod_char_traits.h +++ b/libstdc++-v3/include/ext/pod_char_traits.h @@ -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 diff --git a/libstdc++-v3/include/ext/pool_allocator.h b/libstdc++-v3/include/ext/pool_allocator.h index d8bca1cbb5b..e11c1663d58 100644 --- a/libstdc++-v3/include/ext/pool_allocator.h +++ b/libstdc++-v3/include/ext/pool_allocator.h @@ -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 diff --git a/libstdc++-v3/include/ext/rb_tree b/libstdc++-v3/include/ext/rb_tree index 31c84315a7b..22dd7cd0199 100644 --- a/libstdc++-v3/include/ext/rb_tree +++ b/libstdc++-v3/include/ext/rb_tree @@ -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 diff --git a/libstdc++-v3/include/ext/rc_string_base.h b/libstdc++-v3/include/ext/rc_string_base.h index 43a69c2c1b6..a264c1ef0ec 100644 --- a/libstdc++-v3/include/ext/rc_string_base.h +++ b/libstdc++-v3/include/ext/rc_string_base.h @@ -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 */ diff --git a/libstdc++-v3/include/ext/rope b/libstdc++-v3/include/ext/rope index e4ad50de62f..35be37687a5 100644 --- a/libstdc++-v3/include/ext/rope +++ b/libstdc++-v3/include/ext/rope @@ -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> diff --git a/libstdc++-v3/include/ext/ropeimpl.h b/libstdc++-v3/include/ext/ropeimpl.h index c4b2eedf122..9371dbbac83 100644 --- a/libstdc++-v3/include/ext/ropeimpl.h +++ b/libstdc++-v3/include/ext/ropeimpl.h @@ -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 diff --git a/libstdc++-v3/include/ext/slist b/libstdc++-v3/include/ext/slist index 49ce77ea6ea..06bf7b1cb09 100644 --- a/libstdc++-v3/include/ext/slist +++ b/libstdc++-v3/include/ext/slist @@ -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 diff --git a/libstdc++-v3/include/ext/sso_string_base.h b/libstdc++-v3/include/ext/sso_string_base.h index bb0d746eca5..c21dbbd3ab4 100644 --- a/libstdc++-v3/include/ext/sso_string_base.h +++ b/libstdc++-v3/include/ext/sso_string_base.h @@ -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 */ diff --git a/libstdc++-v3/include/ext/stdio_filebuf.h b/libstdc++-v3/include/ext/stdio_filebuf.h index 5a6d22a4ad6..312a2177111 100644 --- a/libstdc++-v3/include/ext/stdio_filebuf.h +++ b/libstdc++-v3/include/ext/stdio_filebuf.h @@ -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 diff --git a/libstdc++-v3/include/ext/stdio_sync_filebuf.h b/libstdc++-v3/include/ext/stdio_sync_filebuf.h index c51c6781a55..f0ec12c3a69 100644 --- a/libstdc++-v3/include/ext/stdio_sync_filebuf.h +++ b/libstdc++-v3/include/ext/stdio_sync_filebuf.h @@ -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 diff --git a/libstdc++-v3/include/ext/typelist.h b/libstdc++-v3/include/ext/typelist.h index 5bd7c9db699..143efc02cdf 100644 --- a/libstdc++-v3/include/ext/typelist.h +++ b/libstdc++-v3/include/ext/typelist.h @@ -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> diff --git a/libstdc++-v3/include/ext/vstring.h b/libstdc++-v3/include/ext/vstring.h index 1c59e717915..6b04761888e 100644 --- a/libstdc++-v3/include/ext/vstring.h +++ b/libstdc++-v3/include/ext/vstring.h @@ -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" diff --git a/libstdc++-v3/include/ext/vstring.tcc b/libstdc++-v3/include/ext/vstring.tcc index 2fed7e2e14d..3ce552abbf6 100644 --- a/libstdc++-v3/include/ext/vstring.tcc +++ b/libstdc++-v3/include/ext/vstring.tcc @@ -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 diff --git a/libstdc++-v3/include/ext/vstring_fwd.h b/libstdc++-v3/include/ext/vstring_fwd.h index 08ec94a00d5..95370067646 100644 --- a/libstdc++-v3/include/ext/vstring_fwd.h +++ b/libstdc++-v3/include/ext/vstring_fwd.h @@ -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 */ diff --git a/libstdc++-v3/include/ext/vstring_util.h b/libstdc++-v3/include/ext/vstring_util.h index 2a8c45c9cf6..30ec39ba851 100644 --- a/libstdc++-v3/include/ext/vstring_util.h +++ b/libstdc++-v3/include/ext/vstring_util.h @@ -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 */ diff --git a/libstdc++-v3/include/std/std_bitset.h b/libstdc++-v3/include/std/std_bitset.h index a32af6b65b6..c1cfadad7bd 100644 --- a/libstdc++-v3/include/std/std_bitset.h +++ b/libstdc++-v3/include/std/std_bitset.h @@ -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 diff --git a/libstdc++-v3/include/std/std_complex.h b/libstdc++-v3/include/std/std_complex.h index c7aab0e6e68..dc0f373c250 100644 --- a/libstdc++-v3/include/std/std_complex.h +++ b/libstdc++-v3/include/std/std_complex.h @@ -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 */ diff --git a/libstdc++-v3/include/std/std_fstream.h b/libstdc++-v3/include/std/std_fstream.h index a93f9a43e05..1ae98c0bece 100644 --- a/libstdc++-v3/include/std/std_fstream.h +++ b/libstdc++-v3/include/std/std_fstream.h @@ -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> diff --git a/libstdc++-v3/include/std/std_iomanip.h b/libstdc++-v3/include/std/std_iomanip.h index 6363df61110..a10a1b89a51 100644 --- a/libstdc++-v3/include/std/std_iomanip.h +++ b/libstdc++-v3/include/std/std_iomanip.h @@ -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 */ diff --git a/libstdc++-v3/include/std/std_iosfwd.h b/libstdc++-v3/include/std/std_iosfwd.h index 5dfd641c458..669706dfdf3 100644 --- a/libstdc++-v3/include/std/std_iosfwd.h +++ b/libstdc++-v3/include/std/std_iosfwd.h @@ -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 */ diff --git a/libstdc++-v3/include/std/std_iostream.h b/libstdc++-v3/include/std/std_iostream.h index 33ed4cf3ca9..e0c28e16a05 100644 --- a/libstdc++-v3/include/std/std_iostream.h +++ b/libstdc++-v3/include/std/std_iostream.h @@ -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 */ diff --git a/libstdc++-v3/include/std/std_istream.h b/libstdc++-v3/include/std/std_istream.h index dd1189ec126..2c5c572286a 100644 --- a/libstdc++-v3/include/std/std_istream.h +++ b/libstdc++-v3/include/std/std_istream.h @@ -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> diff --git a/libstdc++-v3/include/std/std_limits.h b/libstdc++-v3/include/std/std_limits.h index 7643dcfe230..d1211fdb59e 100644 --- a/libstdc++-v3/include/std/std_limits.h +++ b/libstdc++-v3/include/std/std_limits.h @@ -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. @@ -147,8 +147,8 @@ (__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 diff --git a/libstdc++-v3/include/std/std_memory.h b/libstdc++-v3/include/std/std_memory.h index 006912d558b..6b1996b3b60 100644 --- a/libstdc++-v3/include/std/std_memory.h +++ b/libstdc++-v3/include/std/std_memory.h @@ -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 */ diff --git a/libstdc++-v3/include/std/std_ostream.h b/libstdc++-v3/include/std/std_ostream.h index ffc1a281730..8d4228238e7 100644 --- a/libstdc++-v3/include/std/std_ostream.h +++ b/libstdc++-v3/include/std/std_ostream.h @@ -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> diff --git a/libstdc++-v3/include/std/std_sstream.h b/libstdc++-v3/include/std/std_sstream.h index 3970b3d449c..162c2a6cc7d 100644 --- a/libstdc++-v3/include/std/std_sstream.h +++ b/libstdc++-v3/include/std/std_sstream.h @@ -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> diff --git a/libstdc++-v3/include/std/std_stdexcept.h b/libstdc++-v3/include/std/std_stdexcept.h index 4ecc53e45bc..0104e54464e 100644 --- a/libstdc++-v3/include/std/std_stdexcept.h +++ b/libstdc++-v3/include/std/std_stdexcept.h @@ -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 */ diff --git a/libstdc++-v3/include/std/std_streambuf.h b/libstdc++-v3/include/std/std_streambuf.h index b20bd639802..f59e7deb9a2 100644 --- a/libstdc++-v3/include/std/std_streambuf.h +++ b/libstdc++-v3/include/std/std_streambuf.h @@ -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> diff --git a/libstdc++-v3/include/std/std_valarray.h b/libstdc++-v3/include/std/std_valarray.h index 512f5333d43..82b2fb891a7 100644 --- a/libstdc++-v3/include/std/std_valarray.h +++ b/libstdc++-v3/include/std/std_valarray.h @@ -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 */ diff --git a/libstdc++-v3/include/tr1/array b/libstdc++-v3/include/tr1/array index 096df4f48ac..bdef568f0cd 100644 --- a/libstdc++-v3/include/tr1/array +++ b/libstdc++-v3/include/tr1/array @@ -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 diff --git a/libstdc++-v3/include/tr1/boost_shared_ptr.h b/libstdc++-v3/include/tr1/boost_shared_ptr.h index cb190191521..e47c570c881 100644 --- a/libstdc++-v3/include/tr1/boost_shared_ptr.h +++ b/libstdc++-v3/include/tr1/boost_shared_ptr.h @@ -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 diff --git a/libstdc++-v3/include/tr1/functional b/libstdc++-v3/include/tr1/functional index 9672da8fe7c..ae31faef758 100644 --- a/libstdc++-v3/include/tr1/functional +++ b/libstdc++-v3/include/tr1/functional @@ -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 diff --git a/libstdc++-v3/include/tr1/hashtable b/libstdc++-v3/include/tr1/hashtable index 0add0e3a966..70616146540 100644 --- a/libstdc++-v3/include/tr1/hashtable +++ b/libstdc++-v3/include/tr1/hashtable @@ -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_ */ diff --git a/libstdc++-v3/include/tr1/ref_fwd.h b/libstdc++-v3/include/tr1/ref_fwd.h index 9d7538f1196..18f5d4d070f 100644 --- a/libstdc++-v3/include/tr1/ref_fwd.h +++ b/libstdc++-v3/include/tr1/ref_fwd.h @@ -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 diff --git a/libstdc++-v3/include/tr1/tuple b/libstdc++-v3/include/tr1/tuple index ea7bb23854c..15c944f9eec 100644 --- a/libstdc++-v3/include/tr1/tuple +++ b/libstdc++-v3/include/tr1/tuple @@ -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> diff --git a/libstdc++-v3/include/tr1/type_traits b/libstdc++-v3/include/tr1/type_traits index 70f3316a7bc..f4a183847ba 100644 --- a/libstdc++-v3/include/tr1/type_traits +++ b/libstdc++-v3/include/tr1/type_traits @@ -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 diff --git a/libstdc++-v3/include/tr1/type_traits_fwd.h b/libstdc++-v3/include/tr1/type_traits_fwd.h index a03f4fa9e03..fded5492ca4 100644 --- a/libstdc++-v3/include/tr1/type_traits_fwd.h +++ b/libstdc++-v3/include/tr1/type_traits_fwd.h @@ -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 diff --git a/libstdc++-v3/include/tr1/unordered_map b/libstdc++-v3/include/tr1/unordered_map index 2f789c80e8f..2f1a239c7c9 100644 --- a/libstdc++-v3/include/tr1/unordered_map +++ b/libstdc++-v3/include/tr1/unordered_map @@ -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_ */ diff --git a/libstdc++-v3/include/tr1/unordered_set b/libstdc++-v3/include/tr1/unordered_set index 6a4881a3d1d..c3c16ddc6d7 100644 --- a/libstdc++-v3/include/tr1/unordered_set +++ b/libstdc++-v3/include/tr1/unordered_set @@ -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_ */ diff --git a/libstdc++-v3/include/tr1/utility b/libstdc++-v3/include/tr1/utility index 246a6fa650e..db140b29a66 100644 --- a/libstdc++-v3/include/tr1/utility +++ b/libstdc++-v3/include/tr1/utility @@ -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 |