OSDN Git Service

2011-01-30 Benjamin Kosnik <bkoz@redhat.com>
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 30 Jan 2011 22:39:36 +0000 (22:39 +0000)
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 30 Jan 2011 22:39:36 +0000 (22:39 +0000)
PR libstdc++/36104 part four
* include/bits/c++config (_GLIBCXX_STD): Remove.
(_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
(_GLIBCXX_P): Now _GLIBCXX_STD_A.
(_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
 _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
(_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
 _GLIBCXX_INLINE_PROFILE): Remove.
(_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
(_GLIBCXX_END_NAMESPACE): Remove.
(_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
(_GLIBCXX_END_NESTED_NAMESPACE): Remove.
(_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
(_GLIBCXX_END_NAMESPACE_ALGO): Add.
(_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
(_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
(_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
(_GLIBCXX_END_NAMESPACE_VERSION): Add.
(_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
(_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
(_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
* include/*: Use new macros for namespace scope.
* config/*: Same.
* src/*: Same.

* src/Makefile.am (sources): Remove debug_list.cc, add
compatibility-debug_list-2.cc.
(parallel_sources): Remove parallel_list.cc, add
compatibility-parallel_list-2.cc.
(compatibility-parallel_list-2.[o,lo]): New rule.
* src/Makefile.in: Regenerate.
* src/debug_list.cc: Remove.
* src/parallel_list.cc: Remove.
* src/compatibility-list-2.cc: New.
* src/compatibility-debug_list-2.cc: New.
* src/compatibility-parallel_list-2.cc: New.

* doc/doxygen/user.cfg.in: Adjust macros.

* testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
* testsuite/20_util/declval/requirements/1_neg.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/forward/c_neg.cc: Same.
* testsuite/20_util/forward/f_neg.cc: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/forward_list/capacity/1.cc: Same.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Same.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Same.
* testsuite/23_containers/list/capacity/29134.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/25_algorithms/sort/35588.cc: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
* testsuite/ext/profile/mutex_extensions_neg.cc: Same.
* testsuite/ext/profile/profiler_algos.cc: Same.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169421 138bc75d-0d04-0410-961f-82ee72b054a4

461 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
libstdc++-v3/config/abi/pre/gnu.ver
libstdc++-v3/config/cpu/cris/atomicity.h
libstdc++-v3/config/cpu/generic/atomicity_builtins/atomicity.h
libstdc++-v3/config/cpu/generic/atomicity_mutex/atomicity.h
libstdc++-v3/config/cpu/hppa/atomicity.h
libstdc++-v3/config/cpu/i386/atomicity.h
libstdc++-v3/config/cpu/i486/atomicity.h
libstdc++-v3/config/cpu/ia64/atomic_word.h
libstdc++-v3/config/cpu/m68k/atomicity.h
libstdc++-v3/config/cpu/sh/atomicity.h
libstdc++-v3/config/cpu/sparc/atomicity.h
libstdc++-v3/config/io/basic_file_stdio.cc
libstdc++-v3/config/io/basic_file_stdio.h
libstdc++-v3/config/io/c_io_stdio.h
libstdc++-v3/config/locale/darwin/ctype_members.cc
libstdc++-v3/config/locale/generic/c_locale.cc
libstdc++-v3/config/locale/generic/c_locale.h
libstdc++-v3/config/locale/generic/codecvt_members.cc
libstdc++-v3/config/locale/generic/collate_members.cc
libstdc++-v3/config/locale/generic/ctype_members.cc
libstdc++-v3/config/locale/generic/messages_members.cc
libstdc++-v3/config/locale/generic/messages_members.h
libstdc++-v3/config/locale/generic/monetary_members.cc
libstdc++-v3/config/locale/generic/numeric_members.cc
libstdc++-v3/config/locale/generic/time_members.cc
libstdc++-v3/config/locale/generic/time_members.h
libstdc++-v3/config/locale/gnu/c_locale.cc
libstdc++-v3/config/locale/gnu/c_locale.h
libstdc++-v3/config/locale/gnu/codecvt_members.cc
libstdc++-v3/config/locale/gnu/collate_members.cc
libstdc++-v3/config/locale/gnu/ctype_members.cc
libstdc++-v3/config/locale/gnu/messages_members.cc
libstdc++-v3/config/locale/gnu/messages_members.h
libstdc++-v3/config/locale/gnu/monetary_members.cc
libstdc++-v3/config/locale/gnu/numeric_members.cc
libstdc++-v3/config/locale/gnu/time_members.cc
libstdc++-v3/config/locale/gnu/time_members.h
libstdc++-v3/config/locale/ieee_1003.1-2001/c_locale.cc
libstdc++-v3/config/locale/ieee_1003.1-2001/c_locale.h
libstdc++-v3/config/locale/ieee_1003.1-2001/messages_members.cc
libstdc++-v3/config/locale/ieee_1003.1-2001/messages_members.h
libstdc++-v3/config/os/aix/atomicity.h
libstdc++-v3/config/os/aix/ctype_base.h
libstdc++-v3/config/os/aix/ctype_inline.h
libstdc++-v3/config/os/bionic/ctype_base.h
libstdc++-v3/config/os/bionic/ctype_inline.h
libstdc++-v3/config/os/bsd/darwin/ctype_base.h
libstdc++-v3/config/os/bsd/darwin/ctype_inline.h
libstdc++-v3/config/os/bsd/freebsd/ctype_base.h
libstdc++-v3/config/os/bsd/freebsd/ctype_inline.h
libstdc++-v3/config/os/bsd/netbsd/ctype_base.h
libstdc++-v3/config/os/bsd/netbsd/ctype_inline.h
libstdc++-v3/config/os/djgpp/ctype_base.h
libstdc++-v3/config/os/djgpp/ctype_inline.h
libstdc++-v3/config/os/djgpp/error_constants.h
libstdc++-v3/config/os/generic/ctype_base.h
libstdc++-v3/config/os/generic/ctype_inline.h
libstdc++-v3/config/os/generic/error_constants.h
libstdc++-v3/config/os/gnu-linux/ctype_base.h
libstdc++-v3/config/os/gnu-linux/ctype_inline.h
libstdc++-v3/config/os/hpux/ctype_base.h
libstdc++-v3/config/os/hpux/ctype_inline.h
libstdc++-v3/config/os/hpux/os_defines.h
libstdc++-v3/config/os/irix/atomicity.h
libstdc++-v3/config/os/irix/irix6.5/ctype_base.h
libstdc++-v3/config/os/irix/irix6.5/ctype_inline.h
libstdc++-v3/config/os/mingw32/ctype_base.h
libstdc++-v3/config/os/mingw32/ctype_inline.h
libstdc++-v3/config/os/mingw32/error_constants.h
libstdc++-v3/config/os/newlib/ctype_base.h
libstdc++-v3/config/os/newlib/ctype_inline.h
libstdc++-v3/config/os/qnx/qnx6.1/ctype_base.h
libstdc++-v3/config/os/qnx/qnx6.1/ctype_inline.h
libstdc++-v3/config/os/solaris/solaris2.7/ctype_base.h
libstdc++-v3/config/os/solaris/solaris2.7/ctype_inline.h
libstdc++-v3/config/os/tpf/ctype_base.h
libstdc++-v3/config/os/tpf/ctype_inline.h
libstdc++-v3/config/os/uclibc/ctype_base.h
libstdc++-v3/config/os/uclibc/ctype_inline.h
libstdc++-v3/config/os/vxworks/ctype_base.h
libstdc++-v3/config/os/vxworks/ctype_inline.h
libstdc++-v3/doc/doxygen/user.cfg.in
libstdc++-v3/include/backward/auto_ptr.h
libstdc++-v3/include/backward/binders.h
libstdc++-v3/include/backward/hash_fun.h
libstdc++-v3/include/backward/hash_map
libstdc++-v3/include/backward/hash_set
libstdc++-v3/include/backward/hashtable.h
libstdc++-v3/include/backward/strstream
libstdc++-v3/include/bits/algorithmfwd.h
libstdc++-v3/include/bits/allocator.h
libstdc++-v3/include/bits/atomic_0.h
libstdc++-v3/include/bits/atomic_2.h
libstdc++-v3/include/bits/atomic_base.h
libstdc++-v3/include/bits/basic_ios.h
libstdc++-v3/include/bits/basic_ios.tcc
libstdc++-v3/include/bits/basic_string.h
libstdc++-v3/include/bits/basic_string.tcc
libstdc++-v3/include/bits/boost_concept_check.h
libstdc++-v3/include/bits/c++config
libstdc++-v3/include/bits/char_traits.h
libstdc++-v3/include/bits/codecvt.h
libstdc++-v3/include/bits/cpp_type_traits.h
libstdc++-v3/include/bits/deque.tcc
libstdc++-v3/include/bits/forward_list.h
libstdc++-v3/include/bits/forward_list.tcc
libstdc++-v3/include/bits/fstream.tcc
libstdc++-v3/include/bits/functexcept.h
libstdc++-v3/include/bits/functional_hash.h
libstdc++-v3/include/bits/gslice.h
libstdc++-v3/include/bits/gslice_array.h
libstdc++-v3/include/bits/hashtable.h
libstdc++-v3/include/bits/hashtable_policy.h
libstdc++-v3/include/bits/indirect_array.h
libstdc++-v3/include/bits/ios_base.h
libstdc++-v3/include/bits/istream.tcc
libstdc++-v3/include/bits/list.tcc
libstdc++-v3/include/bits/locale_classes.h
libstdc++-v3/include/bits/locale_classes.tcc
libstdc++-v3/include/bits/locale_facets.h
libstdc++-v3/include/bits/locale_facets.tcc
libstdc++-v3/include/bits/locale_facets_nonio.h
libstdc++-v3/include/bits/locale_facets_nonio.tcc
libstdc++-v3/include/bits/localefwd.h
libstdc++-v3/include/bits/mask_array.h
libstdc++-v3/include/bits/move.h
libstdc++-v3/include/bits/ostream.tcc
libstdc++-v3/include/bits/ostream_insert.h
libstdc++-v3/include/bits/postypes.h
libstdc++-v3/include/bits/random.h
libstdc++-v3/include/bits/random.tcc
libstdc++-v3/include/bits/range_access.h
libstdc++-v3/include/bits/regex.h
libstdc++-v3/include/bits/regex_compiler.h
libstdc++-v3/include/bits/regex_constants.h
libstdc++-v3/include/bits/regex_cursor.h
libstdc++-v3/include/bits/regex_error.h
libstdc++-v3/include/bits/regex_grep_matcher.h
libstdc++-v3/include/bits/regex_grep_matcher.tcc
libstdc++-v3/include/bits/regex_nfa.h
libstdc++-v3/include/bits/regex_nfa.tcc
libstdc++-v3/include/bits/shared_ptr.h
libstdc++-v3/include/bits/shared_ptr_base.h
libstdc++-v3/include/bits/slice_array.h
libstdc++-v3/include/bits/sstream.tcc
libstdc++-v3/include/bits/stl_algo.h
libstdc++-v3/include/bits/stl_algobase.h
libstdc++-v3/include/bits/stl_bvector.h
libstdc++-v3/include/bits/stl_construct.h
libstdc++-v3/include/bits/stl_deque.h
libstdc++-v3/include/bits/stl_function.h
libstdc++-v3/include/bits/stl_heap.h
libstdc++-v3/include/bits/stl_iterator.h
libstdc++-v3/include/bits/stl_iterator_base_funcs.h
libstdc++-v3/include/bits/stl_iterator_base_types.h
libstdc++-v3/include/bits/stl_list.h
libstdc++-v3/include/bits/stl_map.h
libstdc++-v3/include/bits/stl_multimap.h
libstdc++-v3/include/bits/stl_multiset.h
libstdc++-v3/include/bits/stl_numeric.h
libstdc++-v3/include/bits/stl_pair.h
libstdc++-v3/include/bits/stl_queue.h
libstdc++-v3/include/bits/stl_raw_storage_iter.h
libstdc++-v3/include/bits/stl_relops.h
libstdc++-v3/include/bits/stl_set.h
libstdc++-v3/include/bits/stl_stack.h
libstdc++-v3/include/bits/stl_tempbuf.h
libstdc++-v3/include/bits/stl_tree.h
libstdc++-v3/include/bits/stl_uninitialized.h
libstdc++-v3/include/bits/stl_vector.h
libstdc++-v3/include/bits/stream_iterator.h
libstdc++-v3/include/bits/streambuf.tcc
libstdc++-v3/include/bits/streambuf_iterator.h
libstdc++-v3/include/bits/stringfwd.h
libstdc++-v3/include/bits/unique_ptr.h
libstdc++-v3/include/bits/unordered_map.h
libstdc++-v3/include/bits/unordered_set.h
libstdc++-v3/include/bits/valarray_after.h
libstdc++-v3/include/bits/valarray_array.h
libstdc++-v3/include/bits/valarray_array.tcc
libstdc++-v3/include/bits/valarray_before.h
libstdc++-v3/include/bits/vector.tcc
libstdc++-v3/include/c/cmath
libstdc++-v3/include/c/cwchar
libstdc++-v3/include/c_compatibility/fenv.h
libstdc++-v3/include/c_compatibility/inttypes.h
libstdc++-v3/include/c_compatibility/stdint.h
libstdc++-v3/include/c_global/cctype
libstdc++-v3/include/c_global/cfenv
libstdc++-v3/include/c_global/cinttypes
libstdc++-v3/include/c_global/clocale
libstdc++-v3/include/c_global/cmath
libstdc++-v3/include/c_global/csetjmp
libstdc++-v3/include/c_global/csignal
libstdc++-v3/include/c_global/cstdarg
libstdc++-v3/include/c_global/cstdint
libstdc++-v3/include/c_global/cstdio
libstdc++-v3/include/c_global/cstdlib
libstdc++-v3/include/c_global/cstring
libstdc++-v3/include/c_global/ctime
libstdc++-v3/include/c_global/cwchar
libstdc++-v3/include/c_global/cwctype
libstdc++-v3/include/c_std/cctype
libstdc++-v3/include/c_std/clocale
libstdc++-v3/include/c_std/cmath
libstdc++-v3/include/c_std/csetjmp
libstdc++-v3/include/c_std/csignal
libstdc++-v3/include/c_std/cstdarg
libstdc++-v3/include/c_std/cstdio
libstdc++-v3/include/c_std/cstdlib
libstdc++-v3/include/c_std/cstring
libstdc++-v3/include/c_std/ctime
libstdc++-v3/include/c_std/cwchar
libstdc++-v3/include/c_std/cwctype
libstdc++-v3/include/debug/bitset
libstdc++-v3/include/debug/debug.h
libstdc++-v3/include/debug/deque
libstdc++-v3/include/debug/forward_list
libstdc++-v3/include/debug/list
libstdc++-v3/include/debug/map.h
libstdc++-v3/include/debug/multimap.h
libstdc++-v3/include/debug/multiset.h
libstdc++-v3/include/debug/set.h
libstdc++-v3/include/debug/unordered_map
libstdc++-v3/include/debug/unordered_set
libstdc++-v3/include/debug/vector
libstdc++-v3/include/decimal/decimal
libstdc++-v3/include/decimal/decimal.h
libstdc++-v3/include/ext/algorithm
libstdc++-v3/include/ext/array_allocator.h
libstdc++-v3/include/ext/atomicity.h
libstdc++-v3/include/ext/bitmap_allocator.h
libstdc++-v3/include/ext/cast.h
libstdc++-v3/include/ext/codecvt_specializations.h
libstdc++-v3/include/ext/concurrence.h
libstdc++-v3/include/ext/debug_allocator.h
libstdc++-v3/include/ext/enc_filebuf.h
libstdc++-v3/include/ext/extptr_allocator.h
libstdc++-v3/include/ext/functional
libstdc++-v3/include/ext/iterator
libstdc++-v3/include/ext/malloc_allocator.h
libstdc++-v3/include/ext/memory
libstdc++-v3/include/ext/mt_allocator.h
libstdc++-v3/include/ext/new_allocator.h
libstdc++-v3/include/ext/numeric
libstdc++-v3/include/ext/numeric_traits.h
libstdc++-v3/include/ext/pb_ds/detail/debug_map_base.hpp
libstdc++-v3/include/ext/pod_char_traits.h
libstdc++-v3/include/ext/pointer.h
libstdc++-v3/include/ext/pool_allocator.h
libstdc++-v3/include/ext/rb_tree
libstdc++-v3/include/ext/rc_string_base.h
libstdc++-v3/include/ext/rope
libstdc++-v3/include/ext/ropeimpl.h
libstdc++-v3/include/ext/slist
libstdc++-v3/include/ext/sso_string_base.h
libstdc++-v3/include/ext/stdio_filebuf.h
libstdc++-v3/include/ext/stdio_sync_filebuf.h
libstdc++-v3/include/ext/string_conversions.h
libstdc++-v3/include/ext/throw_allocator.h
libstdc++-v3/include/ext/type_traits.h
libstdc++-v3/include/ext/typelist.h
libstdc++-v3/include/ext/vstring.h
libstdc++-v3/include/ext/vstring.tcc
libstdc++-v3/include/ext/vstring_fwd.h
libstdc++-v3/include/ext/vstring_util.h
libstdc++-v3/include/parallel/algo.h
libstdc++-v3/include/parallel/algobase.h
libstdc++-v3/include/parallel/algorithmfwd.h
libstdc++-v3/include/parallel/base.h
libstdc++-v3/include/parallel/numeric
libstdc++-v3/include/parallel/numericfwd.h
libstdc++-v3/include/profile/base.h
libstdc++-v3/include/profile/bitset
libstdc++-v3/include/profile/deque
libstdc++-v3/include/profile/forward_list
libstdc++-v3/include/profile/impl/profiler_node.h
libstdc++-v3/include/profile/impl/profiler_trace.h
libstdc++-v3/include/profile/iterator_tracker.h
libstdc++-v3/include/profile/list
libstdc++-v3/include/profile/map.h
libstdc++-v3/include/profile/multimap.h
libstdc++-v3/include/profile/multiset.h
libstdc++-v3/include/profile/set.h
libstdc++-v3/include/profile/unordered_map
libstdc++-v3/include/profile/unordered_set
libstdc++-v3/include/profile/vector
libstdc++-v3/include/std/array
libstdc++-v3/include/std/atomic
libstdc++-v3/include/std/bitset
libstdc++-v3/include/std/chrono
libstdc++-v3/include/std/complex
libstdc++-v3/include/std/condition_variable
libstdc++-v3/include/std/fstream
libstdc++-v3/include/std/functional
libstdc++-v3/include/std/future
libstdc++-v3/include/std/iomanip
libstdc++-v3/include/std/iosfwd
libstdc++-v3/include/std/iostream
libstdc++-v3/include/std/istream
libstdc++-v3/include/std/limits
libstdc++-v3/include/std/mutex
libstdc++-v3/include/std/ostream
libstdc++-v3/include/std/ratio
libstdc++-v3/include/std/sstream
libstdc++-v3/include/std/stdexcept
libstdc++-v3/include/std/streambuf
libstdc++-v3/include/std/system_error
libstdc++-v3/include/std/thread
libstdc++-v3/include/std/tuple
libstdc++-v3/include/std/type_traits
libstdc++-v3/include/std/typeindex
libstdc++-v3/include/std/utility
libstdc++-v3/include/std/valarray
libstdc++-v3/include/tr1/array
libstdc++-v3/include/tr1/bessel_function.tcc
libstdc++-v3/include/tr1/beta_function.tcc
libstdc++-v3/include/tr1/cctype
libstdc++-v3/include/tr1/cfenv
libstdc++-v3/include/tr1/cinttypes
libstdc++-v3/include/tr1/cmath
libstdc++-v3/include/tr1/complex
libstdc++-v3/include/tr1/cstdint
libstdc++-v3/include/tr1/cstdio
libstdc++-v3/include/tr1/cstdlib
libstdc++-v3/include/tr1/cwchar
libstdc++-v3/include/tr1/cwctype
libstdc++-v3/include/tr1/ell_integral.tcc
libstdc++-v3/include/tr1/exp_integral.tcc
libstdc++-v3/include/tr1/functional
libstdc++-v3/include/tr1/functional_hash.h
libstdc++-v3/include/tr1/gamma.tcc
libstdc++-v3/include/tr1/hashtable.h
libstdc++-v3/include/tr1/hashtable_policy.h
libstdc++-v3/include/tr1/hypergeometric.tcc
libstdc++-v3/include/tr1/legendre_function.tcc
libstdc++-v3/include/tr1/modified_bessel_func.tcc
libstdc++-v3/include/tr1/poly_hermite.tcc
libstdc++-v3/include/tr1/poly_laguerre.tcc
libstdc++-v3/include/tr1/random.h
libstdc++-v3/include/tr1/random.tcc
libstdc++-v3/include/tr1/regex
libstdc++-v3/include/tr1/riemann_zeta.tcc
libstdc++-v3/include/tr1/shared_ptr.h
libstdc++-v3/include/tr1/special_function_util.h
libstdc++-v3/include/tr1/tuple
libstdc++-v3/include/tr1/type_traits
libstdc++-v3/include/tr1/unordered_map.h
libstdc++-v3/include/tr1/unordered_set.h
libstdc++-v3/include/tr1/utility
libstdc++-v3/libsupc++/del_op.cc
libstdc++-v3/libsupc++/exception
libstdc++-v3/libsupc++/hash_bytes.cc
libstdc++-v3/libsupc++/hash_bytes.h
libstdc++-v3/libsupc++/vterminate.cc
libstdc++-v3/src/Makefile.am
libstdc++-v3/src/Makefile.in
libstdc++-v3/src/allocator-inst.cc
libstdc++-v3/src/atomic.cc
libstdc++-v3/src/bitmap_allocator.cc
libstdc++-v3/src/chrono.cc
libstdc++-v3/src/codecvt.cc
libstdc++-v3/src/compatibility-c++0x.cc
libstdc++-v3/src/compatibility-debug_list-2.cc [moved from libstdc++-v3/src/debug_list.cc with 79% similarity]
libstdc++-v3/src/compatibility-debug_list.cc
libstdc++-v3/src/compatibility-ldbl.cc
libstdc++-v3/src/compatibility-list-2.cc [new file with mode: 0644]
libstdc++-v3/src/compatibility-list.cc
libstdc++-v3/src/compatibility-parallel_list-2.cc [moved from libstdc++-v3/src/parallel_list.cc with 78% similarity]
libstdc++-v3/src/compatibility-parallel_list.cc
libstdc++-v3/src/compatibility.cc
libstdc++-v3/src/complex_io.cc
libstdc++-v3/src/concept-inst.cc
libstdc++-v3/src/condition_variable.cc
libstdc++-v3/src/ctype.cc
libstdc++-v3/src/ext-inst.cc
libstdc++-v3/src/fstream-inst.cc
libstdc++-v3/src/functexcept.cc
libstdc++-v3/src/future.cc
libstdc++-v3/src/globals_io.cc
libstdc++-v3/src/hash_c++0x.cc
libstdc++-v3/src/hash_tr1.cc
libstdc++-v3/src/hashtable-aux.cc
libstdc++-v3/src/hashtable_c++0x.cc
libstdc++-v3/src/hashtable_tr1.cc
libstdc++-v3/src/ios-inst.cc
libstdc++-v3/src/ios.cc
libstdc++-v3/src/ios_failure.cc
libstdc++-v3/src/ios_init.cc
libstdc++-v3/src/ios_locale.cc
libstdc++-v3/src/iostream-inst.cc
libstdc++-v3/src/istream-inst.cc
libstdc++-v3/src/istream.cc
libstdc++-v3/src/limits.cc
libstdc++-v3/src/list.cc
libstdc++-v3/src/locale-inst.cc
libstdc++-v3/src/locale.cc
libstdc++-v3/src/locale_facets.cc
libstdc++-v3/src/locale_init.cc
libstdc++-v3/src/localename.cc
libstdc++-v3/src/misc-inst.cc
libstdc++-v3/src/mt_allocator.cc
libstdc++-v3/src/mutex.cc
libstdc++-v3/src/ostream-inst.cc
libstdc++-v3/src/placeholders.cc
libstdc++-v3/src/pool_allocator.cc
libstdc++-v3/src/sstream-inst.cc
libstdc++-v3/src/stdexcept.cc
libstdc++-v3/src/streambuf-inst.cc
libstdc++-v3/src/streambuf.cc
libstdc++-v3/src/string-inst.cc
libstdc++-v3/src/strstream.cc
libstdc++-v3/src/system_error.cc
libstdc++-v3/src/thread.cc
libstdc++-v3/src/tree.cc
libstdc++-v3/src/valarray-inst.cc
libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
libstdc++-v3/testsuite/20_util/declval/requirements/1_neg.cc
libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg1.cc
libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg2.cc
libstdc++-v3/testsuite/20_util/duration/requirements/typedefs_neg3.cc
libstdc++-v3/testsuite/20_util/forward/c_neg.cc
libstdc++-v3/testsuite/20_util/forward/f_neg.cc
libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc
libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc
libstdc++-v3/testsuite/20_util/ratio/cons/cons_overflow_neg.cc
libstdc++-v3/testsuite/20_util/ratio/operations/ops_overflow_neg.cc
libstdc++-v3/testsuite/20_util/shared_ptr/cons/43820_neg.cc
libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc
libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/assign_neg.cc
libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc
libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc
libstdc++-v3/testsuite/23_containers/deque/requirements/dr438/insert_neg.cc
libstdc++-v3/testsuite/23_containers/forward_list/capacity/1.cc
libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/assign_neg.cc
libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_1_neg.cc
libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/constructor_2_neg.cc
libstdc++-v3/testsuite/23_containers/forward_list/requirements/dr438/insert_neg.cc
libstdc++-v3/testsuite/23_containers/list/capacity/29134.cc
libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc
libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc
libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc
libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc
libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc
libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc
libstdc++-v3/testsuite/25_algorithms/sort/35588.cc
libstdc++-v3/testsuite/27_io/ios_base/cons/assign_neg.cc
libstdc++-v3/testsuite/27_io/ios_base/cons/copy_neg.cc
libstdc++-v3/testsuite/ext/profile/mutex_extensions_neg.cc
libstdc++-v3/testsuite/ext/profile/profiler_algos.cc
libstdc++-v3/testsuite/ext/type_traits/add_unsigned_floating_neg.cc
libstdc++-v3/testsuite/ext/type_traits/add_unsigned_integer_neg.cc
libstdc++-v3/testsuite/ext/type_traits/remove_unsigned_floating_neg.cc
libstdc++-v3/testsuite/ext/type_traits/remove_unsigned_integer_neg.cc
libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc

index 063d57d..62bbf8b 100644 (file)
+2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>
+
+       PR libstdc++/36104 part four
+       * include/bits/c++config (_GLIBCXX_STD): Remove.
+       (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
+       (_GLIBCXX_P): Now _GLIBCXX_STD_A.
+       (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
+        _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
+       (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
+        _GLIBCXX_INLINE_PROFILE): Remove.
+       (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
+       (_GLIBCXX_END_NAMESPACE): Remove.
+       (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
+       (_GLIBCXX_END_NESTED_NAMESPACE): Remove.
+       (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
+       (_GLIBCXX_END_NAMESPACE_ALGO): Add.
+       (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
+       (_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
+       (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
+       (_GLIBCXX_END_NAMESPACE_VERSION): Add.
+       (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
+       (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
+       (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
+       * include/*: Use new macros for namespace scope.
+       * config/*: Same.
+       * src/*: Same.
+
+       * src/Makefile.am (sources): Remove debug_list.cc, add
+       compatibility-debug_list-2.cc.
+       (parallel_sources): Remove parallel_list.cc, add
+       compatibility-parallel_list-2.cc.
+       (compatibility-parallel_list-2.[o,lo]): New rule.
+       * src/Makefile.in: Regenerate.
+       * src/debug_list.cc: Remove.
+       * src/parallel_list.cc: Remove.
+       * src/compatibility-list-2.cc: New.
+       * src/compatibility-debug_list-2.cc: New.
+       * src/compatibility-parallel_list-2.cc: New.
+
+       * doc/doxygen/user.cfg.in: Adjust macros.
+
+       * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
+       * testsuite/20_util/declval/requirements/1_neg.cc: Same.
+       * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
+       * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
+       * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
+       * testsuite/20_util/forward/c_neg.cc: Same.
+       * testsuite/20_util/forward/f_neg.cc: Same.
+       * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
+       * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
+       * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
+       * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
+       * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
+       * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
+       * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
+       * testsuite/23_containers/deque/requirements/dr438/
+       constructor_1_neg.cc: Same.
+       * testsuite/23_containers/deque/requirements/dr438/
+       constructor_2_neg.cc: Same.
+       * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
+       * testsuite/23_containers/forward_list/capacity/1.cc: Same.
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       assign_neg.cc: Same.
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       constructor_1_neg.cc: Same.
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       constructor_2_neg.cc: Same.
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       insert_neg.cc: Same.
+       * testsuite/23_containers/list/capacity/29134.cc: Same.
+       * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
+       * testsuite/23_containers/list/requirements/dr438/
+       constructor_1_neg.cc: Same.
+       * testsuite/23_containers/list/requirements/dr438/
+       constructor_2_neg.cc: Same.
+       * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
+       * testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
+       * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
+       * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
+       * testsuite/23_containers/vector/requirements/dr438/
+       constructor_1_neg.cc: Same.
+       * testsuite/23_containers/vector/requirements/dr438/
+       constructor_2_neg.cc: Same.
+       * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
+       * testsuite/25_algorithms/sort/35588.cc: Same.
+       * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
+       * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+       * testsuite/ext/profile/mutex_extensions_neg.cc: Same.
+       * testsuite/ext/profile/profiler_algos.cc: Same.
+       * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
+       * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
+       * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
+       * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
+       * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
+
 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
 
        * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification.
        Improve description of one such reference.
 
 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
-       
+
        * doc/xml/manual/codecvt.xml: Fix link to The Austin Common
        Standards Revision Group.
        * doc/xml/manual/locale.xml: Ditto.
 
 2011-01-26  Johannes Singler  <singler@kit.edu>
 
-        * include/parallel/numeric (inner_product, partial_sum):
-        Qualify subsequent call with __gnu_parallel instead of
-        _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
-        * include/parallel/algobase.h (equal): Likewise.
-        * include/parallel/algo.h (find_first_of, search_n, merge,
-        nth_element, partial_sort, max_element, min_element): Likewise.
-        * testsuite/25_algorithms/headers/algorithm/
-        parallel_algorithm_mixed1.cc (main): Add respective test cases.
-        * testsuite/25_algorithms/headers/algorithm/
-        parallel_algorithm_mixed2.cc (main): Likewise.
-        * testsuite/26_numerics/headers/numeric/
-        parallel_numeric_mixed1.cc (main): Likewise.
-        * testsuite/26_numerics/headers/numeric/
-        parallel_numeric_mixed2.cc (main): Likewise.
+       * include/parallel/numeric (inner_product, partial_sum):
+       Qualify subsequent call with __gnu_parallel instead of
+       _GLIBCXX_STD_P to reenable parallel execution without ambiguity.
+       * include/parallel/algobase.h (equal): Likewise.
+       * include/parallel/algo.h (find_first_of, search_n, merge,
+       nth_element, partial_sort, max_element, min_element): Likewise.
+       * testsuite/25_algorithms/headers/algorithm/
+       parallel_algorithm_mixed1.cc (main): Add respective test cases.
+       * testsuite/25_algorithms/headers/algorithm/
+       parallel_algorithm_mixed2.cc (main): Likewise.
+       * testsuite/26_numerics/headers/numeric/
+       parallel_numeric_mixed1.cc (main): Likewise.
+       * testsuite/26_numerics/headers/numeric/
+       parallel_numeric_mixed2.cc (main): Likewise.
 
 2011-01-24  Graham Reed  <greed@pobox.com>
 
 
 2011-01-24  Johannes Singler  <singler@kit.edu>
 
-        PR libstdc++/47433
-        * include/parallel/losertree.h
-        (_LoserTree<>::__delete_min_insert):
-        Do not qualify swap with std:: for value type,
-        but include a using directive instead.
-        (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
-        * include/parallel/balanced_quicksort.h (__qsb_divide):
-        Use std::iter_swap instead of std::swap.
-        (__qsb_local_sort_with_helping): Likewise.
-        * include/parallel/partition.h (__parallel_partition):
-        Likewise. (__parallel_nth_element): Likewise.
+       PR libstdc++/47433
+       * include/parallel/losertree.h
+       (_LoserTree<>::__delete_min_insert):
+       Do not qualify swap with std:: for value type,
+       but include a using directive instead.
+       (_LoserTreeUnguarded<>::__delete_min_insert): Likewise.
+       * include/parallel/balanced_quicksort.h (__qsb_divide):
+       Use std::iter_swap instead of std::swap.
+       (__qsb_local_sort_with_helping): Likewise.
+       * include/parallel/partition.h (__parallel_partition):
+       Likewise. (__parallel_nth_element): Likewise.
 
 2011-01-24  Johannes Singler  <singler@kit.edu>
 
-        PR libstdc++/47437
-        * include/parallel/multiway_merge.h (_UnguardedIterator):
-        Remove useless "mutable" from reference declaration.
+       PR libstdc++/47437
+       * include/parallel/multiway_merge.h (_UnguardedIterator):
+       Remove useless "mutable" from reference declaration.
 
 2011-01-21  Benjamin Kosnik  <bkoz@redhat.com>
 
index dfb1345..ab9380c 100644 (file)
@@ -35,7 +35,8 @@ GLIBCXX_5.0 {
     _ZNSt2_69has_facetINS_*;
 
     # hash 
-    _ZNSt2_68__detail12__prime_listE;
+    _ZNSt8__detail2_612__prime_listE;
+    _ZNSt3tr18__detail2_612__prime_listE;
 
     # thread/mutex/condition_variable/future
     __once_proxy;
@@ -71,6 +72,13 @@ GLIBCXX_5.0 {
 
     _ZTv0_n*;
 
+    # std::__detail::_List_node_base
+    _ZNSt8__detail2_615_List_node_base7_M_hook*;
+    _ZNSt8__detail2_615_List_node_base9_M_unhookEv;
+    _ZNSt8__detail2_615_List_node_base10_M_reverseEv;
+    _ZNSt8__detail2_615_List_node_base11_M_transfer*;
+    _ZNSt8__detail2_615_List_node_base4swapER*;
+
     # std::__convert_to_v
     _ZNSt2_614__convert_to_v*;
 
@@ -102,19 +110,6 @@ GLIBCXX_5.0 {
     _ZN9__gnu_cxx2_618stdio_sync_filebufI[cw]NSt2_611char_traitsI[cw]EEE[5-9]*;
 
     # debug mode
-# xxx cxx1998?
-    _ZN10__gnu_norm15_List_node_base4hook*;
-    _ZN10__gnu_norm15_List_node_base4swap*;
-    _ZN10__gnu_norm15_List_node_base6unhookEv;
-    _ZN10__gnu_norm15_List_node_base7reverseEv;
-    _ZN10__gnu_norm15_List_node_base8transfer*;
-
-    _ZNSt6__norm15_List_node_base4hook*;
-    _ZNSt6__norm15_List_node_base4swap*;
-    _ZNSt6__norm15_List_node_base6unhookEv;
-    _ZNSt6__norm15_List_node_base7reverseEv;
-    _ZNSt6__norm15_List_node_base8transfer*;
-
     _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
     _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
     _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
@@ -136,6 +131,10 @@ GLIBCXX_5.0 {
     _ZNK11__gnu_debug16_Error_formatter8_M_error*;
     _ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv;
 
+    # parallel mode
+    _ZN14__gnu_parallel9_Settings3getEv;
+    _ZN14__gnu_parallel9_Settings3setERS0_;
+
   local:
     *;
 };
index 6633273..6757139 100644 (file)
@@ -1199,6 +1199,12 @@ GLIBCXX_3.4.15 {
     # std::placeholders
     _ZNSt12placeholders*;
 
+    _ZNSt8__detail15_List_node_base7_M_hook*;
+    _ZNSt8__detail15_List_node_base9_M_unhookEv;
+    _ZNSt8__detail15_List_node_base10_M_reverseEv;
+    _ZNSt8__detail15_List_node_base11_M_transfer*;
+    _ZNSt8__detail15_List_node_base4swapERS0_S1_;
+
 } GLIBCXX_3.4.14;
 
 # Symbols in the support library (libsupc++) have their own tag.
index 9225427..148a8b6 100644 (file)
@@ -24,7 +24,9 @@
 
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   _Atomic_word
   __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
@@ -83,4 +85,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
   { __exchange_and_add(__mem, __val); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 3cd580a..581c41f 100644 (file)
@@ -26,7 +26,9 @@
 #include <bits/c++config.h>
 #include <bits/atomic_word.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   _Atomic_word 
   __attribute__ ((__unused__))
@@ -38,4 +40,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
   { __sync_fetch_and_add(__mem, __val); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 3f46e78..dc0a5a0 100644 (file)
@@ -36,7 +36,9 @@ namespace
   }
 } // anonymous namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   _Atomic_word
   __attribute__ ((__unused__))
@@ -54,4 +56,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
   { __exchange_and_add(__mem, __val); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index cf1ceb0..a2ec4f2 100644 (file)
@@ -25,7 +25,9 @@
 #include <bits/c++config.h>
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<int _Inst>
     struct _Atomicity_lock
@@ -88,4 +90,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
                          : : "r" (&lock), "r" (tmp) : "memory");
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 8f76193..97205e4 100644 (file)
@@ -24,7 +24,9 @@
 
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<int __inst>
     struct _Atomicity_lock
@@ -67,4 +69,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
   { __exchange_and_add(__mem, __val); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index d9e68f4..602cbb7 100644 (file)
@@ -24,7 +24,9 @@
 
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   _Atomic_word 
   __attribute__ ((__unused__))
@@ -45,5 +47,6 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
                          : "=m" (*__mem) : "ir" (__val), "m" (*__mem));
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
index e1251c5..9dfbf00 100644 (file)
@@ -29,7 +29,7 @@
 
 typedef int _Atomic_word;
 
-namespace __gnu_cxx
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
 {
   // Test the first byte of __g and ensure that no loads are hoisted across
   // the test.
index 5b3692e..5711255 100644 (file)
@@ -24,7 +24,9 @@
 
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 #if ( defined(__mc68020__) || defined(__mc68030__) \
       || defined(__mc68040__) || defined(__mc68060__) ) \
@@ -126,4 +128,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
     __exchange_and_add(__mem, __val);
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 9b240af..ece63ce 100644 (file)
@@ -27,7 +27,9 @@
 
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   typedef int _Atomic_word;
 
@@ -66,7 +68,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
        : "r0");
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #else /* !__SH4A__ */
 
@@ -80,7 +83,9 @@ namespace
   __gnu_cxx::__mutex atomic_mutex;
 } // anonymous namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   _Atomic_word
   __attribute__ ((__unused__))
@@ -98,6 +103,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
   { __exchange_and_add(__mem, __val); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* !__SH4A__ */
index 1ead48d..c032e54 100644 (file)
@@ -25,7 +25,9 @@
 
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 #ifdef __arch64__
   _Atomic_word
@@ -119,4 +121,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   }  
 #endif /* __arch32__ */
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index d2de028..1b7e1bb 100644 (file)
@@ -179,7 +179,9 @@ namespace
 } // anonymous namespace
 
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Definitions for __basic_file<char>.
   __basic_file<char>::__basic_file(__c_lock* /*__lock*/) throw()
@@ -378,5 +380,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return 0;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
index 9693939..f543a89 100644 (file)
@@ -41,7 +41,9 @@
 #include <bits/c++io.h>  // for __c_lock and __c_file
 #include <ios>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Generic declaration.
   template<typename _CharT>
@@ -103,6 +105,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       showmanyc();
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif 
index 6a21a88..0843df7 100644 (file)
 #include <cstdio>
 #include <bits/gthr.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   typedef __gthread_mutex_t __c_lock;
 
   // for basic_file.h
   typedef FILE __c_file;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index e1dd0f2..4b42bc2 100644 (file)
@@ -35,7 +35,7 @@
 #include <cstring>
 #include <cstdio>
 
-namespace std
+namespace std _GLIBCXX_VISIBILITY(default)
 {
   // NB: The other ctype<char> specializations are in src/locale.cc and
   // various /config/os/* files.
index 4688160..fb9b425 100644 (file)
@@ -41,7 +41,9 @@
 #include <ieeefp.h>
 #endif
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<>
     void
@@ -229,9 +231,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   locale::facet::_S_lc_ctype_c_locale(__c_locale, const char*)
   { return __c_locale(); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
     {
@@ -243,13 +248,17 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
       "LC_MESSAGES"
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   const char* const* const locale::_S_categories = __gnu_cxx::category_names;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 // XXX GLIBCXX_ABI Deprecated
 #ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
index 29c16a2..2c76000 100644 (file)
@@ -43,7 +43,9 @@
 
 #define _GLIBCXX_NUM_CATEGORIES 0
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   typedef int*                 __c_locale;
 
@@ -85,6 +87,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __ret;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 655ce82..f0de79e 100644 (file)
@@ -34,7 +34,9 @@
 #include <climits>  // For MB_LEN_MAX
 #include <cstring>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Specializations.
 #ifdef _GLIBCXX_USE_WCHAR_T
@@ -214,4 +216,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index e7753e0..da12ccd 100644 (file)
@@ -32,7 +32,9 @@
 #include <locale>
 #include <cstring>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // These are basically extensions to char_traits, and perhaps should
   // be put there instead of here.
@@ -68,4 +70,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     { return wcsxfrm(__to, __from, __n); }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index ae08c3b..e6ced39 100644 (file)
@@ -34,7 +34,9 @@
 #include <cstring>
 #include <cstdio>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // NB: The other ctype<char> specializations are in src/locale.cc and
   // various /config/os/* files.
@@ -266,4 +268,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 #endif //  _GLIBCXX_USE_WCHAR_T
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index f0402ec..b8610dd 100644 (file)
@@ -30,7 +30,9 @@
 
 #include <locale>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Specializations
   template<>
@@ -45,4 +47,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     { return __dfault; }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 79545f9..f66d4be 100644 (file)
@@ -34,7 +34,9 @@
 
 // Written by Benjamin Kosnik <bkoz@redhat.com>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Non-virtual member functions.
   template<typename _CharT>
@@ -87,4 +89,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
          }
      }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 26b4358..91f014f 100644 (file)
@@ -31,7 +31,9 @@
 
 #include <locale>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Construct and return valid pattern consisting of some combination of:
   // space none symbol sign value
@@ -165,4 +167,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     { delete _M_data; }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index a409444..d7d6647 100644 (file)
@@ -30,7 +30,9 @@
 
 #include <locale>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<> 
     void
@@ -99,5 +101,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     { delete _M_data; }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
index 040e228..3031075 100644 (file)
@@ -34,7 +34,9 @@
 #include <cstdlib>
 #include <cstring>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<>
     void
@@ -206,4 +208,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 785a272..ff26bef 100644 (file)
@@ -36,7 +36,9 @@
 
 // Written by Benjamin Kosnik <bkoz@redhat.com>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT>
     __timepunct<_CharT>::__timepunct(size_t __refs) 
@@ -88,4 +90,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       _S_destroy_c_locale(_M_c_locale_timepunct); 
     }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 9706e41..adfeb62 100644 (file)
@@ -35,7 +35,9 @@
 #include <langinfo.h>
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<>
     void
@@ -169,9 +171,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __changed;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
     {
@@ -189,13 +194,17 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
       "LC_IDENTIFICATION" 
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   const char* const* const locale::_S_categories = __gnu_cxx::category_names;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 // XXX GLIBCXX_ABI Deprecated
 #ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
index f3aa2e3..eb0d671 100644 (file)
 #define _GLIBCXX_NUM_CATEGORIES 6
 
 #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   extern "C" __typeof(uselocale) __uselocale;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 #endif
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   typedef __locale_t           __c_locale;
 
@@ -104,6 +109,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __ret;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 7cc12ed..a1029f0 100644 (file)
@@ -34,7 +34,9 @@
 #include <climits>  // For MB_LEN_MAX
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Specializations.
 #ifdef _GLIBCXX_USE_WCHAR_T
@@ -302,4 +304,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index bcd4153..00056ad 100644 (file)
@@ -31,7 +31,9 @@
 #include <locale>
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // These are basically extensions to char_traits, and perhaps should
   // be put there instead of here.
@@ -67,4 +69,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 6965694..8a478e9 100644 (file)
@@ -33,7 +33,9 @@
 #include <cstdio>
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // NB: The other ctype<char> specializations are in src/locale.cc and
   // various /config/os/* files.
@@ -300,4 +302,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 #endif //  _GLIBCXX_USE_WCHAR_T
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 94ebcb5..4154e89 100644 (file)
@@ -31,7 +31,9 @@
 #include <locale>
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Specializations.
   template<>
@@ -80,4 +82,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 836f76a..f81a19f 100644 (file)
@@ -36,7 +36,9 @@
 
 #include <libintl.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Non-virtual member functions.
   template<typename _CharT>
@@ -125,4 +127,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
         }
      }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index e5f90ca..214c4af 100644 (file)
@@ -32,7 +32,9 @@
 #include <locale>
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Construct and return valid pattern consisting of some combination of:
   // space none symbol sign value
@@ -929,4 +931,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 637cd59..934511a 100644 (file)
@@ -32,7 +32,9 @@
 #include <locale>
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<> 
     void
@@ -212,4 +214,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     }
  #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index cf13971..1974746 100644 (file)
@@ -33,7 +33,9 @@
 #include <locale>
 #include <bits/c++locale_internal.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<>
     void
@@ -395,4 +397,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 7d3ddc2..3d8e0e9 100644 (file)
@@ -36,7 +36,9 @@
 
 // Written by Benjamin Kosnik <bkoz@redhat.com>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT>
     __timepunct<_CharT>::__timepunct(size_t __refs) 
@@ -85,4 +87,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       _S_destroy_c_locale(_M_c_locale_timepunct); 
     }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 262681b..13af608 100644 (file)
@@ -30,7 +30,7 @@
 
 #include <locale>
 
-namespace std 
+namespace std _GLIBCXX_VISIBILITY(default) 
 {
   void
   locale::facet::_S_create_c_locale(__c_locale&, const char*, __c_locale*)
index 70e39b8..027a52d 100644 (file)
 #include <iconv.h>             // For codecvt using iconv, iconv_t
 #include <nl_types.h>          // For messages
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   typedef int*                 __c_locale;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
index 156cf3a..2b4ab2e 100644 (file)
@@ -30,7 +30,7 @@
 
 #include <locale>
 
-namespace std
+namespace std _GLIBCXX_VISIBILITY(default)
 {
   // Specializations
   template<>
index 6abd0b3..8c658ab 100644 (file)
@@ -33,7 +33,9 @@
 
 // Written by Benjamin Kosnik <bkoz@redhat.com>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Non-virtual member functions.
   template<typename _CharT>
@@ -69,4 +71,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     messages<_CharT>::do_close(catalog __c) const 
     { catclose(reinterpret_cast<nl_catd>(__c)); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 38622b1..1bd51f1 100644 (file)
@@ -38,7 +38,9 @@ extern "C"
 #include <sys/atomic_op.h>
 }
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   _Atomic_word
   __attribute__ ((__unused__))
@@ -50,4 +52,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   __atomic_add (volatile _Atomic_word* __mem, int __val) throw ()
   { (void) ::fetch_and_add(const_cast<atomic_p>(__mem), __val); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 3700908..865105a 100644 (file)
@@ -28,7 +28,9 @@
   
 // Information as gleaned from /usr/include/ctype.h
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -52,4 +54,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _ISALPHA | _ISDIGIT;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 8c201a5..14f22be 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -77,4 +79,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 15f0063..926b233 100644 (file)
@@ -30,7 +30,9 @@
 
 // Support for Solaris 2.5.1
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -54,4 +56,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _U | _L | _N;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index ef12c65..e7b8d5c 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -68,4 +70,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 0867a59..36f71e0 100644 (file)
@@ -30,7 +30,9 @@
 // 4.0 and all versions of the CVS managed file at:
 // :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -68,4 +70,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index a1833b7..aa3a83e 100644 (file)
@@ -35,7 +35,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -145,4 +147,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 5b5de7a..5d01ad6 100644 (file)
@@ -30,7 +30,9 @@
 // 4.0 and all versions of the CVS managed file at:
 // :pserver:anoncvs@anoncvs.freebsd.org:/home/ncvs/src/include/ctype.h
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -70,4 +72,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 886c6a1..de10c3f 100644 (file)
@@ -35,7 +35,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -145,4 +147,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 3713981..d75cb79 100644 (file)
@@ -33,7 +33,9 @@
   
 #include <sys/param.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -72,4 +74,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index f510d65..a08d431 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -68,7 +70,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 
 
index 9db1b1e..aa156f8 100644 (file)
@@ -26,7 +26,9 @@
 // ISO C++ 14882: 22.1  Locales
 //
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -51,4 +53,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask graph = __dj_ISALPHA | __dj_ISDIGIT | __dj_ISPUNCT;  // Graphical
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 7112c1b..217bbf8 100644 (file)
@@ -35,7 +35,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -71,4 +73,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index d359018..4e87208 100644 (file)
@@ -33,7 +33,9 @@
 #include <bits/c++config.h>
 #include <cerrno>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 // Most of the commented-out error codes are socket-related and could be
 // replaced by Winsock WSA-prefixed equivalents.
@@ -119,6 +121,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
  //   wrong_protocol_type =                    EPROTOTYPE
    };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index ac4db76..72aa6f2 100644 (file)
@@ -29,7 +29,9 @@
 
 // Default information, may not be appropriate for specific host.
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -53,4 +55,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = (1 << 2) | (1 << 3);  // alpha|digit
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 83cdf2a..ae54f29 100644 (file)
@@ -41,7 +41,9 @@
 
 // Constructing a synthetic "C" table should be seriously considered...
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -162,4 +164,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 2935fec..88ea565 100644 (file)
@@ -33,7 +33,9 @@
 #include <bits/c++config.h>
 #include <cerrno>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   enum class errc
     {
@@ -170,6 +172,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       wrong_protocol_type =                    EPROTOTYPE
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 96cd946..eb2b14c 100644 (file)
@@ -34,7 +34,9 @@
 
 // Information as gleaned from /usr/include/ctype.h
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -58,4 +60,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _ISalpha | _ISdigit;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 91df629..7e83a9e 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -70,4 +72,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 33bd5b7..8e2114f 100644 (file)
@@ -28,7 +28,9 @@
   
 // Default information, may not be appropriate for specific host.
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -52,4 +54,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum     = _ISALPHA | _ISDIGIT;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index cedc918..d6b8df4 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -70,4 +72,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 2a36b7f..a41f301 100644 (file)
@@ -63,7 +63,9 @@
    We also force _GLIBCXX_USE_LONG_LONG here so that we don't have
    to bastardize configure to deal with this sillyness.  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 _GLIBCXX_BEGIN_EXTERN_C
 
 #ifndef __LP64__
@@ -79,7 +81,8 @@ _GLIBCXX_BEGIN_EXTERN_C
 #endif
 
 _GLIBCXX_END_EXTERN_C
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #define _GLIBCXX_USE_LONG_LONG 1
 
index 9048fb2..0160a16 100644 (file)
@@ -25,7 +25,9 @@
 #include <mutex.h>
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   _Atomic_word
   __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
@@ -35,4 +37,5 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
   __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
   { __exchange_and_add(__mem, __val); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 917b066..32a8716 100644 (file)
@@ -34,7 +34,9 @@
 
 // Information as gleaned from /usr/include/ctype.h on irix 6.5
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -58,4 +60,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _ISalpha | _ISdigit;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index fe355a1..f08eea8 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -68,4 +70,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index e68f80e..5fbdff8 100644 (file)
@@ -34,7 +34,9 @@
 //  masks here, based on the generic masks, and the corresponding
 //  classic_table in ctype_noninline.h.
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -58,4 +60,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = (1 << 2) | (1 << 3);  // alpha|digit
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 2138397..f1b9f6c 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -69,4 +71,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index f9d40e9..f2a9116 100644 (file)
@@ -34,7 +34,9 @@
 #include <cerrno>
 
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 // Most of the commented-out error codes are socket-related and could be
 // replaced by Winsock WSA-prefixed equivalents.
@@ -120,6 +122,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
  //   wrong_protocol_type =                    EPROTOTYPE
    };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 8ae2071..4dd1502 100644 (file)
@@ -30,7 +30,9 @@
 
 // Support for Solaris 2.5.1
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -54,4 +56,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _U | _L | _N;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 314762d..18726db 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -68,4 +70,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 366cca3..36aa073 100644 (file)
@@ -33,7 +33,9 @@
 
 // Information as gleaned from /usr/include/ctype.h.
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -57,4 +59,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _DI | _LO | _UP | _XA;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index c64a8b5..b38bc82 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -68,4 +70,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 08f655b..1ae3874 100644 (file)
@@ -30,7 +30,9 @@
 // only works with solaris2.7 and solaris2.8. Thanks for not changing
 // things, sun engineers!
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -54,4 +56,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _ISALPHA | _ISDIGIT;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index cedc918..d6b8df4 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -70,4 +72,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 60c7e9a..1c1d37e 100644 (file)
@@ -28,7 +28,9 @@
   
 // Information as gleaned from /usr/include/ctype.h
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -52,4 +54,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _ISalpha | _ISdigit;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index f0d5188..1785f8c 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -70,4 +72,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 7e913c1..d6a742b 100644 (file)
@@ -34,7 +34,9 @@
 
 // Information as gleaned from /usr/include/ctype.h
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -60,4 +62,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _ISalpha | _ISdigit;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 4c54475..0f64069 100644 (file)
@@ -34,7 +34,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -70,4 +72,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index ee0682f..f1f92ae 100644 (file)
@@ -28,7 +28,9 @@
   
 // Information extracted from target/h/ctype.h.
   
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// @brief  Base class for ctype.
   struct ctype_base
@@ -53,4 +55,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     static const mask alnum    = _C_UPPER | _C_LOWER | _C_NUMBER;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index bd72d22..4909208 100644 (file)
@@ -36,7 +36,9 @@
 // ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
 // functions go in ctype.cc
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   bool
   ctype<char>::
@@ -72,4 +74,5 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __low;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 442bba2..d9990c9 100644 (file)
@@ -1542,17 +1542,17 @@ PREDEFINED             = __cplusplus \
                          "_GLIBCXX_CONST= " \
                          "_GLIBCXX_NORETURN= " \
                          "_GLIBCXX_NOTHROW= " \
-                         "_GLIBCXX_STD_D= " \
-                         "_GLIBCXX_STD_P= " \
-                         "_GLIBCXX_STD_PR= " \
-                         _GLIBCXX_STD=std \
-                         "_GLIBCXX_TR1= " \
-                         "_GLIBCXX_BEGIN_NAMESPACE_TR1= " \
-                         "_GLIBCXX_END_NAMESPACE_TR1= " \
-                         "_GLIBCXX_BEGIN_NAMESPACE(name)=namespace name {  " \
-                         "_GLIBCXX_BEGIN_NESTED_NAMESPACE(name, unused)=namespace name {  " \
-                         _GLIBCXX_END_NAMESPACE=} \
-                         _GLIBCXX_END_NESTED_NAMESPACE=} \
+                         "_GLIBCXX_STD_C= " \
+                         "_GLIBCXX_STD_A= " \
+                        "_GLIBCXX_VISIBILITY(V)= " \
+                         "_GLIBCXX_BEGIN_NAMESPACE_VERSION= " \
+                         "_GLIBCXX_BEGIN_NAMESPACE_ALGO= " \
+                         "_GLIBCXX_BEGIN_NAMESPACE_CONTAINER= " \
+                         "_GLIBCXX_BEGIN_NAMESPACE_LDBL= " \
+                         "_GLIBCXX_END_NAMESPACE_VERSION= " \
+                         "_GLIBCXX_END_NAMESPACE_ALGO= " \
+                         "_GLIBCXX_END_NAMESPACE_CONTAINER= " \
+                         "_GLIBCXX_END_NAMESPACE_LDBL= " \
                          "_GLIBCXX_TEMPLATE_ARGS=...  " \
                          _GLIBCXX_DEPRECATED \
                          _GLIBCXX_CONSTEXPR=constexpr \
index d60bad3..e14906b 100644 (file)
@@ -33,7 +33,9 @@
 #include <bits/c++config.h>
 #include <debug/debug.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    *  A wrapper class to provide auto_ptr with reference semantics.
@@ -287,6 +289,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       typedef void element_type;
     } _GLIBCXX_DEPRECATED_ATTR;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _BACKWARD_AUTO_PTR_H */
index a65eb8a..faadd0d 100644 (file)
@@ -57,7 +57,9 @@
 #ifndef _BACKWARD_BINDERS_H
 #define _BACKWARD_BINDERS_H 1
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // 20.3.6 binders
   /** @defgroup binders Binder Classes
@@ -164,6 +166,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     } 
   /** @}  */
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _BACKWARD_BINDERS_H */
index 66e31d8..a76eb73 100644 (file)
@@ -59,7 +59,9 @@
 
 #include <bits/c++config.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   using std::size_t;
 
@@ -163,6 +165,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
       { return __x; }
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index fe6e785..24c439e 100644 (file)
@@ -65,7 +65,9 @@
 #include <backward/hashtable.h>
 #include <bits/concept_check.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   using std::equal_to;
   using std::allocator;
@@ -497,9 +499,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
         hash_multimap<_Key, _Tp, _HashFn, _EqlKey, _Alloc>& __hm2)
     { __hm1.swap(__hm2); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Specialization of insert_iterator so that it will work for hash_map
   // and hash_multimap.
@@ -589,6 +594,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       { return *this; }
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 1e4f1a9..f110fec 100644 (file)
@@ -65,7 +65,9 @@
 #include <backward/hashtable.h>
 #include <bits/concept_check.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   using std::equal_to;
   using std::allocator;
@@ -465,9 +467,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
         hash_multiset<_Val, _HashFcn, _EqualKey, _Alloc>& __hs2)
     { __hs1.swap(__hs2); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Specialization of insert_iterator so that it will work for hash_set
   // and hash_multiset.
@@ -557,6 +562,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       operator++(int) { return *this; }
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 55c1d99..0bcaec4 100644 (file)
@@ -66,7 +66,9 @@
 #include <bits/stl_function.h>
 #include <backward/hash_fun.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   using std::size_t;
   using std::ptrdiff_t;
@@ -1141,6 +1143,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
        }
     }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 3221ba9..964c455 100644 (file)
@@ -51,7 +51,9 @@
 #include <ostream>
 #include <string>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Class strstreambuf, a streambuf class that manages an array of char.
   // Note that this class is not a template.
@@ -172,6 +174,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     strstreambuf _M_buf;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index f6f4eac..8632bf5 100644 (file)
@@ -37,7 +37,9 @@
 #include <bits/stl_iterator_base_types.h>
 #include <initializer_list>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /*
     adjacent_find
@@ -577,9 +579,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     _FIter 
     upper_bound(_FIter, _FIter, const _Tp&, _Compare);
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
 
-_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P)
+_GLIBCXX_BEGIN_NAMESPACE_ALGO
 
   template<typename _FIter>
     _FIter 
@@ -802,7 +804,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P)
     _OIter 
     unique_copy(_IIter, _IIter, _OIter, _BinaryPredicate);
 
-_GLIBCXX_END_NESTED_NAMESPACE
+_GLIBCXX_END_NAMESPACE_ALGO
+} // namespace std
 
 #ifdef _GLIBCXX_PARALLEL
 # include <parallel/algorithmfwd.h>
index 4300679..9018b5a 100644 (file)
@@ -51,7 +51,9 @@
 #include <type_traits> // For _GLIBCXX_HAS_NESTED_TYPE
 #endif
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @defgroup allocators Allocators
@@ -232,6 +234,7 @@ _GLIBCXX_HAS_NESTED_TYPE(allocator_type)
 
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index eaff2e6..42ff462 100644 (file)
@@ -33,7 +33,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 // 0 == __atomic0 == Never lock-free
 namespace __atomic0
@@ -732,6 +734,7 @@ namespace __atomic0
 #undef _ATOMIC_CMPEXCHNG_
 } // namespace __atomic0
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 85f8c0f..2601713 100644 (file)
@@ -33,7 +33,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 // 2 == __atomic2 == Always lock-free
 // Assumed:
@@ -747,6 +749,7 @@ namespace __atomic2
     };
 } // namespace __atomic2
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index f70b717..7316d01 100644 (file)
@@ -36,7 +36,9 @@
 #include <stdbool.h>
 #include <stdint.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @defgroup atomics Atomics
@@ -284,6 +286,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // @} group atomics
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 6fd0653..29d8ae5 100644 (file)
@@ -39,7 +39,9 @@
 #include <bits/locale_facets.h>
 #include <bits/streambuf_iterator.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _Facet>
     inline const _Facet&
@@ -465,7 +467,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       _M_cache_locale(const locale& __loc);
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #include <bits/basic_ios.tcc>
 
index 8a0fe0b..98b227f 100644 (file)
@@ -33,7 +33,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT, typename _Traits>
     void
@@ -182,6 +184,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 03c8962..102ef77 100644 (file)
@@ -42,7 +42,9 @@
 #include <debug/debug.h>
 #include <initializer_list>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    *  @class basic_string basic_string.h <string>
@@ -2745,14 +2747,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
            wchar_t __delim);
 #endif  
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #if (defined(__GXX_EXPERIMENTAL_CXX0X__) && defined(_GLIBCXX_USE_C99) \
      && !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF))
 
 #include <ext/string_conversions.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // 21.4 Numeric Conversions [string.conversions].
   inline int
@@ -2959,7 +2964,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* __GXX_EXPERIMENTAL_CXX0X__ && _GLIBCXX_USE_C99 ... */
 
@@ -2967,7 +2973,9 @@ _GLIBCXX_END_NAMESPACE
 
 #include <bits/functional_hash.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // DR 1182.
 
@@ -3020,7 +3028,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     };
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* __GXX_EXPERIMENTAL_CXX0X__ */
 
index 2b22c6b..880fc6b 100644 (file)
@@ -43,7 +43,9 @@
 
 #include <bits/cxxabi_forced.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT, typename _Traits, typename _Alloc>
     const typename basic_string<_CharT, _Traits, _Alloc>::size_type
@@ -1161,6 +1163,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index beabbb5..f1bc16a 100644 (file)
@@ -45,7 +45,9 @@
 #include <bits/c++config.h>
 #include <bits/stl_iterator_base_types.h>    // for traits and tags
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 #define _IsUnused __attribute__ ((__unused__))
 
@@ -779,7 +781,8 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
     typename _BackInsertionSequence::value_type __t;
   };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #undef _IsUnused
 
index 71774e8..101d6b5 100644 (file)
 #define __GLIBCXX__
 
 // Macros for various attributes.
+//   _GLIBCXX_PURE
+//   _GLIBCXX_CONST
+//   _GLIBCXX_NORETURN
+//   _GLIBCXX_NOTHROW
+//   _GLIBCXX_VISIBILITY
 #ifndef _GLIBCXX_PURE
 # define _GLIBCXX_PURE __attribute__ ((__pure__))
 #endif
 # endif
 #endif
 
-// Macros for visibility.
-// _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY
-// _GLIBCXX_VISIBILITY_ATTR
+// Macros for visibility attributes.
+//   _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY
+//   _GLIBCXX_VISIBILITY
 #define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY
 
 #if _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY
-# define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ (#V)))
+# define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ (#V)))
 #else
 // If this is not supplied by the OS-specific or CPU-specific
 // headers included below, it will be defined to an empty default.
-# define _GLIBCXX_VISIBILITY_ATTR(V) _GLIBCXX_PSEUDO_VISIBILITY(V)
+# define _GLIBCXX_VISIBILITY(V) _GLIBCXX_PSEUDO_VISIBILITY(V)
 #endif
 
-// Macros for deprecated.
-// _GLIBCXX_DEPRECATED
-// _GLIBCXX_DEPRECATED_ATTR
+// Macros for deprecated attributes.
+//   _GLIBCXX_DEPRECATED
+//   _GLIBCXX_DEPRECATED_ATTR
 #ifndef _GLIBCXX_DEPRECATED
 # define _GLIBCXX_DEPRECATED 1
 #endif
 
 #if __cplusplus
 
-namespace std
-{
-  typedef __SIZE_TYPE__        size_t;
-  typedef __PTRDIFF_TYPE__     ptrdiff_t;
-
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
-  typedef decltype(nullptr)    nullptr_t;
-#endif
-}
-
-// Macros for C compatibility. In particular, define extern "C"
-// linkage only when using C++.
-# define _GLIBCXX_BEGIN_EXTERN_C extern "C" {
-# define _GLIBCXX_END_EXTERN_C }
-
-
 // Macro for constexpr, to support in mixed 03/0x mode.
 #ifndef _GLIBCXX_CONSTEXPR
 # ifdef __GXX_EXPERIMENTAL_CXX0X__
@@ -110,201 +99,255 @@ namespace std
 # endif
 #endif
 
-// Macros for activating various inline namespaces.
-//
-// _GLIBCXX_NAMESPACE_DEBUG
-// _GLIBCXX_NAMESPACE_PARALLEL
-// _GLIBCXX_NAMESPACE_PROFILE
-// _GLIBCXX_NAMESPACE_VERSION
+// Macro for extern template, ie controling template linkage via use
+// of extern keyword on template declaration. As documented in the g++
+// manual, it inhibits all implicit instantiations and is used
+// throughout the library to avoid multiple weak definitions for
+// required types that are already explicitly instantiated in the
+// library binary. This substantially reduces the binary size of
+// resulting executables.
+// Special case: _GLIBCXX_EXTERN_TEMPLATE == -1 disallows extern
+// templates only in basic_string, thus activating its debug-mode
+// checks even at -O0.
+#ifndef _GLIBCXX_EXTERN_TEMPLATE
+# define _GLIBCXX_EXTERN_TEMPLATE 1
+#endif
 
-// Guide to libstdc++ namespaces.
 /*
+  Outline of libstdc++ namespaces.
+
   namespace std
   {
     namespace __debug { }
     namespace __parallel { }
     namespace __profile { }
-    namespace __norm { } // __normative, __shadow, __replaced
     namespace __cxx1998 { }
 
-    namespace tr1 { }
+    namespace __detail { }
+
+    namespace rel_ops { }
+
+    namespace tr1
+    {
+      namespace placeholders { }
+      namespace regex_constants { }
+      namespace __detail { }
+    }
+
+    namespace decimal { }
+
+    namespace chrono { }
+    namespace placeholders { }
+    namespace regex_constants { }
+    namespace this_thread { }
   }
-*/
 
-#ifdef _GLIBCXX_DEBUG
-# define _GLIBCXX_INLINE_DEBUG 1
-#endif
+  namespace abi { }
 
-#ifdef _GLIBCXX_PARALLEL
-# define _GLIBCXX_INLINE_PARALLEL 1
-#endif
+  namespace __gnu_cxx
+  {
+    namespace __detail { }
+  }
+
+  For full details see:
+  http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/namespaces.html
+*/
+namespace std
+{
+  typedef __SIZE_TYPE__        size_t;
+  typedef __PTRDIFF_TYPE__     ptrdiff_t;
 
-// Namespace association for profile.
-#ifdef _GLIBCXX_PROFILE
-# define _GLIBCXX_INLINE_PROFILE 1
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+  typedef decltype(nullptr)    nullptr_t;
 #endif
+}
 
+
+// Defined if inline namespaces are used for versioning.
 #define _GLIBCXX_INLINE_VERSION
 
-// Defined if inline namespaces modes are active.
-#if _GLIBCXX_INLINE_DEBUG \
-  || _GLIBCXX_INLINE_PARALLEL \
-  || _GLIBCXX_INLINE_PROFILE \
-  || _GLIBCXX_INLINE_VERSION
-# define _GLIBCXX_USE_INLINE_NAMESPACES 1
-#endif
+// Inline namespace for symbol versioning.
+#if _GLIBCXX_INLINE_VERSION
+namespace std
+{
+  inline namespace _6 { }
 
-// Macros for namespace scope. Either namespace std:: or the name
-// of some nested namespace within it.
-// _GLIBCXX_STD
-// _GLIBCXX_STD_D
-// _GLIBCXX_STD_P
-// _GLIBCXX_STD_PR
-//
-// Macros for enclosing namespaces and possibly nested namespaces.
-// _GLIBCXX_BEGIN_NAMESPACE
-// _GLIBCXX_END_NAMESPACE
-// _GLIBCXX_BEGIN_NESTED_NAMESPACE
-// _GLIBCXX_END_NESTED_NAMESPACE
-#ifndef _GLIBCXX_USE_INLINE_NAMESPACES
-# define _GLIBCXX_STD_D _GLIBCXX_STD
-# define _GLIBCXX_STD_P _GLIBCXX_STD
-# define _GLIBCXX_STD_PR _GLIBCXX_STD
-# define _GLIBCXX_STD std
-# define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y) _GLIBCXX_BEGIN_NAMESPACE(X)
-# define _GLIBCXX_END_NESTED_NAMESPACE _GLIBCXX_END_NAMESPACE
-# define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY_ATTR(default) {
-# define _GLIBCXX_END_NAMESPACE }
+  namespace __detail { inline namespace _6 { } }
+
+
+  namespace rel_ops { inline namespace _6 { } }
+
+  namespace tr1
+  {
+    inline namespace _6 { }
+    namespace placeholders { inline namespace _6 { } }
+    namespace regex_constants { inline namespace _6 { } }
+    namespace __detail { inline namespace _6 { } }
+  }
+
+  namespace decimal { inline namespace _6 { } }
+
+  namespace chrono { inline namespace _6 { } }
+  namespace placeholders { inline namespace _6 { } }
+  namespace regex_constants { inline namespace _6 { } }
+  namespace this_thread { inline namespace _6 { } }
+}
+
+namespace __gnu_cxx
+{
+  inline namespace _6 { }
+  namespace __detail { inline namespace _6 { } }
+}
+# define _GLIBCXX_BEGIN_NAMESPACE_VERSION namespace _6 {
+# define _GLIBCXX_END_NAMESPACE_VERSION }
 #else
+# define _GLIBCXX_BEGIN_NAMESPACE_VERSION
+# define _GLIBCXX_END_NAMESPACE_VERSION
+#endif
 
-# if _GLIBCXX_INLINE_VERSION // && not anything else
-#  define _GLIBCXX_STD_D _GLIBCXX_STD
-#  define _GLIBCXX_STD_P _GLIBCXX_STD
-#  define _GLIBCXX_STD _6
-#  define _GLIBCXX_BEGIN_NAMESPACE(X) _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, _6)
-#  define _GLIBCXX_END_NAMESPACE _GLIBCXX_END_NESTED_NAMESPACE
-# endif
 
-//  debug
-# if _GLIBCXX_INLINE_DEBUG && !_GLIBCXX_INLINE_PARALLEL && !_GLIBCXX_INLINE_PROFILE
-#  define _GLIBCXX_STD_D __norm
-#  define _GLIBCXX_STD_P _GLIBCXX_STD
-#  define _GLIBCXX_STD __cxx1998
-#  define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY_ATTR(default) {
-#  define _GLIBCXX_END_NAMESPACE }
-#  define _GLIBCXX_EXTERN_TEMPLATE -1
+// Inline namespaces for special modes: debug, parallel, profile.
+#if defined(_GLIBCXX_DEBUG) || defined(_GLIBCXX_PARALLEL) \
+    || defined(_GLIBCXX_PROFILE)
+namespace std
+{
+  // Non-inline namespace for components replaced by alternates in active mode.
+  namespace __cxx1998
+  {
+#if _GLIBCXX_INLINE_VERSION
+ inline namespace _6 { }
+#endif
+  }
+
+  // Inline namespace for debug mode.
+# ifdef _GLIBCXX_DEBUG
+  inline namespace __debug { }
 # endif
 
-// parallel
-# if _GLIBCXX_INLINE_PARALLEL && !_GLIBCXX_INLINE_DEBUG && !_GLIBCXX_INLINE_PROFILE
-#  define _GLIBCXX_STD_D _GLIBCXX_STD
-#  define _GLIBCXX_STD_P __norm
-#  define _GLIBCXX_STD __cxx1998
-#  define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY_ATTR(default) {
-#  define _GLIBCXX_END_NAMESPACE }
+  // Inline namespaces for parallel mode.
+# ifdef _GLIBCXX_PARALLEL
+  inline namespace __parallel { }
 # endif
 
-// debug + parallel
-# if _GLIBCXX_INLINE_PARALLEL && _GLIBCXX_INLINE_DEBUG  && !_GLIBCXX_INLINE_PROFILE
-#  define _GLIBCXX_STD_D __norm
-#  define _GLIBCXX_STD_P __norm
-#  define _GLIBCXX_STD __cxx1998
-#  define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY_ATTR(default) {
-#  define _GLIBCXX_END_NAMESPACE }
-#  define _GLIBCXX_EXTERN_TEMPLATE -1
+  // Inline namespaces for profile mode
+# ifdef _GLIBCXX_PROFILE
+  inline namespace __profile { }
 # endif
+}
 
-// profile
-# if _GLIBCXX_INLINE_PROFILE
-#  if _GLIBCXX_INLINE_PARALLEL || _GLIBCXX_INLINE_DEBUG
-#   error Cannot use -D_GLIBCXX_PROFILE with -D_GLIBCXX_DEBUG or \
-    -D_GLIBCXX_PARALLEL
-#  endif
-#  define _GLIBCXX_STD_D __norm
-#  define _GLIBCXX_STD_P _GLIBCXX_STD
-#  define _GLIBCXX_STD_PR __norm
-#  define _GLIBCXX_STD __cxx1998
-#  define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY_ATTR(default) {
-#  define _GLIBCXX_END_NAMESPACE }
+// Check for invalid usage and unsupported mixed-mode use.
+# if defined(_GLIBCXX_DEBUG) && defined(_GLIBCXX_PARALLEL)
+#  error illegal use of multiple inlined namespaces
+# endif
+# if defined(_GLIBCXX_PROFILE) && defined(_GLIBCXX_DEBUG)
+#  error illegal use of multiple inlined namespaces
+# endif
+# if defined(_GLIBCXX_PROFILE) && defined(_GLIBCXX_PARALLEL)
+#  error illegal use of multiple inlined namespaces
 # endif
 
+// Check for invalid use due to lack for weak symbols.
 # if __NO_INLINE__ && !__GXX_WEAK__
 #  warning currently using inlined namespace mode which may fail \
    without inlining due to lack of weak symbols
 # endif
+#endif
+
+// Macros for namespace scope. Either namespace std:: or the name
+// of some nested namespace within it corresponding to the active mode.
+// _GLIBCXX_STD_A
+// _GLIBCXX_STD_C
+//
+// Macros for opening/closing conditional namespaces.
+// _GLIBCXX_BEGIN_NAMESPACE_ALGO
+// _GLIBCXX_END_NAMESPACE_ALGO
+// _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
+// _GLIBCXX_END_NAMESPACE_CONTAINER
+#if defined(_GLIBCXX_DEBUG) or defined(_GLIBCXX_PROFILE)
+# define _GLIBCXX_STD_C __cxx1998
+# define _GLIBCXX_BEGIN_NAMESPACE_CONTAINER \
+        namespace _GLIBCXX_STD_C { _GLIBCXX_BEGIN_NAMESPACE_VERSION
+# define _GLIBCXX_END_NAMESPACE_CONTAINER \
+        } _GLIBCXX_END_NAMESPACE_VERSION
+# undef _GLIBCXX_EXTERN_TEMPLATE
+# define _GLIBCXX_EXTERN_TEMPLATE -1
+#endif
 
-# define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)  namespace X { namespace Y _GLIBCXX_VISIBILITY_ATTR(default) {
-# define _GLIBCXX_END_NESTED_NAMESPACE } }
+#ifdef _GLIBCXX_PARALLEL
+# define _GLIBCXX_STD_A __cxx1998
+# define _GLIBCXX_BEGIN_NAMESPACE_ALGO \
+        namespace _GLIBCXX_STD_A { _GLIBCXX_BEGIN_NAMESPACE_VERSION
+# define _GLIBCXX_END_NAMESPACE_ALGO \
+        } _GLIBCXX_END_NAMESPACE_VERSION
 #endif
 
-// Inline namespaces for debug mode.
-#if _GLIBCXX_INLINE_DEBUG && !_GLIBCXX_INLINE_PROFILE
-namespace std
-{
-  namespace __norm { }
-  inline namespace __debug { }
-  inline namespace __cxx1998 { }
-}
+#ifndef _GLIBCXX_STD_A
+# define _GLIBCXX_STD_A std
 #endif
 
-// Inline namespaces for parallel mode.
-#if _GLIBCXX_INLINE_PARALLEL
-namespace std
-{
-  namespace __norm { }
-  inline namespace __parallel { }
-  inline namespace __cxx1998 { }
-}
+#ifndef _GLIBCXX_STD_C
+# define _GLIBCXX_STD_C std
 #endif
 
-// Inline namespaces for profile mode
-#if _GLIBCXX_INLINE_PROFILE
-namespace std
-{
-  namespace __norm { }
-  inline namespace __profile { }
-  inline namespace __cxx1998 { }
-}
+#ifndef _GLIBCXX_BEGIN_NAMESPACE_ALGO
+# define _GLIBCXX_BEGIN_NAMESPACE_ALGO
 #endif
 
-// Inline namespaces for versioning mode.
-#if _GLIBCXX_INLINE_VERSION
-namespace std
-{
-  inline namespace _6 { }
-}
+#ifndef _GLIBCXX_END_NAMESPACE_ALGO
+# define _GLIBCXX_END_NAMESPACE_ALGO
+#endif
 
-namespace __gnu_cxx
-{
-  inline namespace _6 { }
-}
+#ifndef _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
+# define _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
+#endif
 
-namespace std
-{
-  namespace tr1
-  {
-    inline namespace _6 { }
-  }
-}
+#ifndef _GLIBCXX_END_NAMESPACE_CONTAINER
+# define _GLIBCXX_END_NAMESPACE_CONTAINER
 #endif
 
-// XXX GLIBCXX_ABI Deprecated
-// Define if compatibility should be provided for -mlong-double-64
+// GLIBCXX_ABI Deprecated
+// Define if compatibility should be provided for -mlong-double-64.
 #undef _GLIBCXX_LONG_DOUBLE_COMPAT
 
-// Inline namespaces for long double 128 mode.
+// Inline namespace for long double 128 mode.
 #if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
 namespace std
 {
   inline namespace __gnu_cxx_ldbl128 { }
 }
-# define _GLIBCXX_LDBL_NAMESPACE __gnu_cxx_ldbl128::
-# define _GLIBCXX_BEGIN_LDBL_NAMESPACE namespace __gnu_cxx_ldbl128 {
-# define _GLIBCXX_END_LDBL_NAMESPACE }
+# define _GLIBCXX_NAMESPACE_LDBL __gnu_cxx_ldbl128::
+# define _GLIBCXX_BEGIN_NAMESPACE_LDBL namespace __gnu_cxx_ldbl128 {
+# define _GLIBCXX_END_NAMESPACE_LDBL }
 #else
-# define _GLIBCXX_LDBL_NAMESPACE
-# define _GLIBCXX_BEGIN_LDBL_NAMESPACE
-# define _GLIBCXX_END_LDBL_NAMESPACE
+# define _GLIBCXX_NAMESPACE_LDBL
+# define _GLIBCXX_BEGIN_NAMESPACE_LDBL
+# define _GLIBCXX_END_NAMESPACE_LDBL
+#endif
+
+// Assert.
+#if !defined(_GLIBCXX_DEBUG) && !defined(_GLIBCXX_PARALLEL)
+# define __glibcxx_assert(_Condition)
+#else
+namespace std
+{
+  // 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)
+  {
+    __builtin_printf("%s:%d: %s: Assertion '%s' failed.\n", __file, __line,
+                    __function, __condition);
+    __builtin_abort();
+  }
+}
+#define __glibcxx_assert(_Condition)                                    \
+  do                                                                    \
+  {                                                                     \
+    if (! (_Condition))                                                  \
+      std::__replacement_assert(__FILE__, __LINE__, __PRETTY_FUNCTION__, \
+                               #_Condition);                            \
+  } while (false)
 #endif
 
 // Macros for race detectors.
@@ -328,7 +371,6 @@ namespace std
 // The annotations in this example tell the race detector that all memory
 // accesses occurred when the refcount was positive do not race with
 // memory accesses which occurred after the refcount became zero.
-
 #ifndef _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE
 # define  _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE(A)
 #endif
@@ -336,15 +378,16 @@ namespace std
 # define  _GLIBCXX_SYNCHRONIZATION_HAPPENS_AFTER(A)
 #endif
 
+// Macros for C linkage: define extern "C" linkage only when using C++.
+# define _GLIBCXX_BEGIN_EXTERN_C extern "C" {
+# define _GLIBCXX_END_EXTERN_C }
+
 #else // !__cplusplus
 # define _GLIBCXX_BEGIN_EXTERN_C
 # define _GLIBCXX_END_EXTERN_C
-# undef _GLIBCXX_BEGIN_NAMESPACE
-# undef _GLIBCXX_END_NAMESPACE
-# define _GLIBCXX_BEGIN_NAMESPACE(X)
-# define _GLIBCXX_END_NAMESPACE
 #endif
 
+
 // First includes.
 
 // Pick up any OS-specific definitions.
@@ -356,21 +399,7 @@ namespace std
 // If platform uses neither visibility nor psuedo-visibility,
 // specify empty default for namespace annotation macros.
 #ifndef _GLIBCXX_PSEUDO_VISIBILITY
-#define _GLIBCXX_PSEUDO_VISIBILITY(V)
-#endif
-
-// Allow use of the GNU syntax extension, "extern template." This
-// extension is fully documented in the g++ manual, but in a nutshell,
-// it inhibits all implicit instantiations and is used throughout the
-// library to avoid multiple weak definitions for required types that
-// are already explicitly instantiated in the library binary. This
-// substantially reduces the binary size of resulting executables.
-
-// Special case: _GLIBCXX_EXTERN_TEMPLATE == -1 disallows extern
-// templates only in basic_string, thus activating its debug-mode
-// checks even at -O0.
-#ifndef _GLIBCXX_EXTERN_TEMPLATE
-# define _GLIBCXX_EXTERN_TEMPLATE 1
+# define _GLIBCXX_PSEUDO_VISIBILITY(V)
 #endif
 
 // Certain function definitions that are meant to be overridable from
@@ -380,33 +409,6 @@ namespace std
 # define _GLIBCXX_WEAK_DEFINITION
 #endif
 
-// Assert.
-// Avoid the use of assert, because we're trying to keep the <cassert>
-// include out of the mix.
-#if !defined(_GLIBCXX_DEBUG) && !defined(_GLIBCXX_PARALLEL)
-#define __glibcxx_assert(_Condition)
-#else
-_GLIBCXX_BEGIN_NAMESPACE(std)
-  // 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)
-  {
-    __builtin_printf("%s:%d: %s: Assertion '%s' failed.\n", __file, __line,
-                    __function, __condition);
-    __builtin_abort();
-  }
-_GLIBCXX_END_NAMESPACE
-
-#define __glibcxx_assert(_Condition)                                   \
-  do                                                                   \
-  {                                                                    \
-    if (! (_Condition))                                                 \
-      std::__replacement_assert(__FILE__, __LINE__,                    \
-                               __PRETTY_FUNCTION__, #_Condition);      \
-  } while (false)
-#endif
 
 // The remainder of the prewritten config is automatic; all the
 // user hooks are listed above.
@@ -428,4 +430,4 @@ _GLIBCXX_END_NAMESPACE
 #undef min
 #undef max
 
-// End of prewritten config; the discovered settings follow.
+// End of prewritten config; the settings discovered at configure time follow.
index 4033f6d..07251df 100644 (file)
@@ -42,7 +42,9 @@
 #include <bits/postypes.h>      // For streampos
 #include <cwchar>               // For WEOF, wmemmove, wmemset, etc.
 
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    *  @brief  Mapping from character type to associated types.
@@ -203,9 +205,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
       return __s;
     }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // 21.1
   /**
@@ -364,14 +369,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   };
 #endif //_GLIBCXX_USE_WCHAR_T
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #if (defined(__GXX_EXPERIMENTAL_CXX0X__) \
      && defined(_GLIBCXX_USE_C99_STDINT_TR1))
 
 #include <cstdint>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<>
     struct char_traits<char16_t>
@@ -559,7 +567,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       { return eq_int_type(__c, eof()) ? 0 : __c; }
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif 
 
index cf8ac10..42cc471 100644 (file)
@@ -39,7 +39,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /// Empty base class for codecvt facet [22.2.1.5].
   class codecvt_base
@@ -499,6 +501,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif // _CODECVT_H
index 3ae964a..166890f 100644 (file)
 //
 
 // Forward declaration hack, should really include this from somewhere.
-_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _Iterator, typename _Container>
     class __normal_iterator;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   struct __true_type { };
   struct __false_type { };
@@ -414,6 +419,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     };
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif //_CPP_TYPE_TRAITS_H
index 78bb888..389fc80 100644 (file)
@@ -1,7 +1,7 @@
 // Deque implementation (out of line) -*- C++ -*-
 
 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-// 2009, 2010
+// 2009, 2010, 2011
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -58,7 +58,9 @@
 #ifndef _DEQUE_TCC
 #define _DEQUE_TCC 1
 
-_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_CONTAINER
 
 #ifdef __GXX_EXPERIMENTAL_CXX0X__
   template <typename _Tp, typename _Alloc>
@@ -1038,6 +1040,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
     }
 #endif
 
-_GLIBCXX_END_NESTED_NAMESPACE
+_GLIBCXX_END_NAMESPACE_CONTAINER
+} // namespace std
 
 #endif
index b7f071f..39c2532 100644 (file)
@@ -1,6 +1,6 @@
 // <forward_list.h> -*- C++ -*-
 
-// Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2008, 2009, 2010, 2011 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,7 +35,9 @@
 #include <memory>
 #include <initializer_list>
 
-_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_CONTAINER
 
   /**
    *  @brief  A helper basic node class for %forward_list.
@@ -1295,6 +1297,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
         forward_list<_Tp, _Alloc>& __ly)
     { __lx.swap(__ly); }
 
-_GLIBCXX_END_NESTED_NAMESPACE // namespace std
+_GLIBCXX_END_NAMESPACE_CONTAINER
+} // namespace std
 
 #endif // _FORWARD_LIST_H
index a409383..2c319db 100644 (file)
@@ -1,6 +1,6 @@
 // <forward_list.tcc> -*- C++ -*-
 
-// Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -30,7 +30,9 @@
 #ifndef _FORWARD_LIST_TCC
 #define _FORWARD_LIST_TCC 1
 
-_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_CONTAINER
 
   template<typename _Tp, typename _Alloc>
     _Fwd_list_base<_Tp, _Alloc>::
@@ -494,7 +496,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
           }
       }
  
-_GLIBCXX_END_NESTED_NAMESPACE // namespace std
+_GLIBCXX_END_NAMESPACE_CONTAINER
+} // namespace std
 
 #endif /* _FORWARD_LIST_TCC */
 
index bd0fa4b..edaff97 100644 (file)
@@ -40,7 +40,9 @@
 
 #include <bits/cxxabi_forced.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT, typename _Traits>
     void
@@ -979,6 +981,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 714d1cf..d8e6ae7 100644 (file)
@@ -40,7 +40,9 @@
 #include <bits/c++config.h>
 #include <bits/exception_defines.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Helper for exception objects in <except>
   void
@@ -99,6 +101,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   void
   __throw_bad_function_call() __attribute__((__noreturn__));
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 3075451..e77cb4e 100644 (file)
@@ -34,7 +34,9 @@
 
 #include <bits/hash_bytes.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /** @defgroup hashes Hashes
    *  @ingroup functors
@@ -183,6 +185,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // @} group hashes
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif // _FUNCTIONAL_HASH_H
index 1e78cc7..47d1775 100644 (file)
@@ -35,7 +35,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @addtogroup numeric_arrays
@@ -177,6 +179,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // @} group numeric_arrays
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _GSLICE_H */
index 11e0371..1ae047d 100644 (file)
@@ -35,7 +35,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @addtogroup numeric_arrays
@@ -211,6 +213,7 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
 
   // @} group numeric_arrays
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _GSLICE_ARRAY_H */
index 52f1b31..2ee8552 100644 (file)
@@ -35,7 +35,9 @@
 
 #include <bits/hashtable_policy.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Class template _Hashtable, class definition.
 
@@ -1229,6 +1231,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        }
     }
 
-_GLIBCXX_END_NAMESPACE // namespace std
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace std
 
 #endif // _HASHTABLE_H
index 7b13719..f6e1876 100644 (file)
 #ifndef _HASHTABLE_POLICY_H
 #define _HASHTABLE_POLICY_H 1
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
-
+namespace std _GLIBCXX_VISIBILITY(default)
+{
 namespace __detail
 {
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
   // Helper function: return distance(first, last) for forward
   // iterators, or 0 for input iterators.
   template<class _Iterator>
@@ -977,8 +979,9 @@ namespace __detail
        }
       return true;
     }
-} // namespace __detail
 
-_GLIBCXX_END_NAMESPACE // namespace std
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace __detail
+} // namespace std
 
 #endif // _HASHTABLE_POLICY_H
index e6f1430..d7b7b08 100644 (file)
@@ -35,7 +35,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @addtogroup numeric_arrays
@@ -205,6 +207,7 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
 
   // @} group numeric_arrays
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _INDIRECT_ARRAY_H */
index 24bddf2..8825657 100644 (file)
@@ -42,7 +42,9 @@
 #include <bits/localefwd.h>
 #include <bits/locale_classes.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // The following definitions of bitmask types are enums, not ints,
   // as permitted (but not required) in the standard, in order to provide
@@ -969,6 +971,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     return __base;
   }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _IOS_BASE_H */
index 6fc6b31..5666b11 100644 (file)
@@ -40,7 +40,9 @@
 
 #include <bits/cxxabi_forced.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT, typename _Traits>
     basic_istream<_CharT, _Traits>::sentry::
@@ -1087,6 +1089,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index b06822f..01c1bc6 100644 (file)
@@ -1,7 +1,7 @@
 // List implementation (out of line) -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+// 2011 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -57,7 +57,9 @@
 #ifndef _LIST_TCC
 #define _LIST_TCC 1
 
-_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_CONTAINER
 
   template<typename _Tp, typename _Alloc>
     void
@@ -461,7 +463,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
          }
       }
 
-_GLIBCXX_END_NESTED_NAMESPACE
+_GLIBCXX_END_NAMESPACE_CONTAINER
+} // namespace std
 
 #endif /* _LIST_TCC */
 
index 3cdb1b3..80ba735 100644 (file)
@@ -42,7 +42,9 @@
 #include <string>
 #include <ext/atomicity.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // 22.1.1 Class locale
   /**
@@ -815,7 +817,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       ~collate_byname() { }
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 # include <bits/locale_classes.tcc>
 
index 53c0f57..e604013 100644 (file)
@@ -36,7 +36,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _Facet>
     locale::
@@ -266,6 +268,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index ec5a518..41732f3 100644 (file)
@@ -49,7 +49,9 @@
 #include <ext/numeric_traits.h>
 #include <bits/streambuf_iterator.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // NB: Don't instantiate required wchar_t facets if no wchar_t support.
 #ifdef _GLIBCXX_USE_WCHAR_T
@@ -1503,12 +1505,15 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     };
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 // Include host and configuration specific ctype inlines.
 #include <bits/ctype_inline.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // 22.2.2  The numeric category.
   class __num_base
@@ -1892,7 +1897,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       ~numpunct_byname() { }
     };
 
-_GLIBCXX_BEGIN_LDBL_NAMESPACE
+_GLIBCXX_BEGIN_NAMESPACE_LDBL
 
   /**
    *  @brief  Primary class template num_get.
@@ -2512,7 +2517,7 @@ _GLIBCXX_BEGIN_LDBL_NAMESPACE
   template <typename _CharT, typename _OutIter>
     locale::id num_put<_CharT, _OutIter>::id;
 
-_GLIBCXX_END_LDBL_NAMESPACE
+_GLIBCXX_END_NAMESPACE_LDBL
 
   // Subclause convenience interfaces, inlines.
   // NB: These are inline because, when used in a loop, some compilers
@@ -2597,7 +2602,8 @@ _GLIBCXX_END_LDBL_NAMESPACE
     tolower(_CharT __c, const locale& __loc)
     { return use_facet<ctype<_CharT> >(__loc).tolower(__c); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 # include <bits/locale_facets.tcc>
 
index 076963a..114d852 100644 (file)
@@ -34,7 +34,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Routine to access a cache for the facet.  If the cache didn't
   // exist before, it gets constructed on the fly.
@@ -137,7 +139,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   __verify_grouping(const char* __grouping, size_t __grouping_size,
                    const string& __grouping_tmp) throw ();
 
-_GLIBCXX_BEGIN_LDBL_NAMESPACE
+_GLIBCXX_BEGIN_NAMESPACE_LDBL
 
   template<typename _CharT, typename _InIter>
     _InIter
@@ -782,7 +784,7 @@ _GLIBCXX_BEGIN_LDBL_NAMESPACE
       __len = static_cast<int>(__w);
     }
 
-_GLIBCXX_END_LDBL_NAMESPACE
+_GLIBCXX_END_NAMESPACE_LDBL
 
   template<typename _CharT, typename _ValueT>
     int
@@ -826,7 +828,7 @@ _GLIBCXX_END_LDBL_NAMESPACE
       return __bufend - __buf;
     }
 
-_GLIBCXX_BEGIN_LDBL_NAMESPACE
+_GLIBCXX_BEGIN_NAMESPACE_LDBL
 
   template<typename _CharT, typename _OutIter>
     void
@@ -1177,7 +1179,7 @@ _GLIBCXX_BEGIN_LDBL_NAMESPACE
       return __s;
     }
 
-_GLIBCXX_END_LDBL_NAMESPACE
+_GLIBCXX_END_NAMESPACE_LDBL
 
   // Construct correctly padded string, as per 22.2.2.2.2
   // Assumes
@@ -1278,8 +1280,8 @@ _GLIBCXX_END_LDBL_NAMESPACE
 #if _GLIBCXX_EXTERN_TEMPLATE
   extern template class numpunct<char>;
   extern template class numpunct_byname<char>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE num_get<char>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE num_put<char>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL num_get<char>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL num_put<char>;
   extern template class ctype_byname<char>;
 
   extern template
@@ -1317,8 +1319,8 @@ _GLIBCXX_END_LDBL_NAMESPACE
 #ifdef _GLIBCXX_USE_WCHAR_T
   extern template class numpunct<wchar_t>;
   extern template class numpunct_byname<wchar_t>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE num_get<wchar_t>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE num_put<wchar_t>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL num_get<wchar_t>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL num_put<wchar_t>;
   extern template class ctype_byname<wchar_t>;
 
   extern template
@@ -1355,6 +1357,7 @@ _GLIBCXX_END_LDBL_NAMESPACE
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 2c6a8f7..be7c1a4 100644 (file)
@@ -38,7 +38,9 @@
 
 #include <ctime>       // For struct tm
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    *  @brief  Time format ordering data.
@@ -339,12 +341,15 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
                                 const tm*) const throw ();
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
   // Include host and configuration specific timepunct functions.
   #include <bits/time_members.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    *  @brief  Primary class template time_get.
@@ -1346,7 +1351,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   template<typename _CharT, bool _Intl>
     const bool moneypunct_byname<_CharT, _Intl>::intl;
 
-_GLIBCXX_BEGIN_LDBL_NAMESPACE
+_GLIBCXX_BEGIN_NAMESPACE_LDBL
 
   /**
    *  @brief  Primary class template money_get.
@@ -1654,7 +1659,7 @@ _GLIBCXX_BEGIN_LDBL_NAMESPACE
   template<typename _CharT, typename _OutIter>
     locale::id money_put<_CharT, _OutIter>::id;
 
-_GLIBCXX_END_LDBL_NAMESPACE
+_GLIBCXX_END_NAMESPACE_LDBL
 
   /**
    *  @brief  Messages facet base class providing catalog typedef.
@@ -1919,7 +1924,8 @@ _GLIBCXX_END_LDBL_NAMESPACE
       { }
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 // Include host and configuration specific messages functions.
 #include <bits/messages_members.h>
index 35869e3..3039907 100644 (file)
@@ -32,7 +32,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT, bool _Intl>
     struct __use_cache<__moneypunct_cache<_CharT, _Intl> >
@@ -122,7 +124,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        }
     }
 
-_GLIBCXX_BEGIN_LDBL_NAMESPACE
+_GLIBCXX_BEGIN_NAMESPACE_LDBL
 
   template<typename _CharT, typename _InIter>
     template<bool _Intl>
@@ -608,7 +610,7 @@ _GLIBCXX_BEGIN_LDBL_NAMESPACE
     { return __intl ? _M_insert<true>(__s, __io, __fill, __digits)
                    : _M_insert<false>(__s, __io, __fill, __digits); }
 
-_GLIBCXX_END_LDBL_NAMESPACE
+_GLIBCXX_END_NAMESPACE_LDBL
 
   // NB: Not especially useful. Without an ios_base object or some
   // kind of locale reference, we are left clawing at the air where
@@ -1219,8 +1221,8 @@ _GLIBCXX_END_LDBL_NAMESPACE
   extern template class moneypunct<char, true>;
   extern template class moneypunct_byname<char, false>;
   extern template class moneypunct_byname<char, true>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE money_get<char>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE money_put<char>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL money_get<char>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL money_put<char>;
   extern template class __timepunct<char>;
   extern template class time_put<char>;
   extern template class time_put_byname<char>;
@@ -1294,8 +1296,8 @@ _GLIBCXX_END_LDBL_NAMESPACE
   extern template class moneypunct<wchar_t, true>;
   extern template class moneypunct_byname<wchar_t, false>;
   extern template class moneypunct_byname<wchar_t, true>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE money_get<wchar_t>;
-  extern template class _GLIBCXX_LDBL_NAMESPACE money_put<wchar_t>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL money_get<wchar_t>;
+  extern template class _GLIBCXX_NAMESPACE_LDBL money_put<wchar_t>;
   extern template class __timepunct<wchar_t>;
   extern template class time_put<wchar_t>;
   extern template class time_put_byname<wchar_t>;
@@ -1366,6 +1368,7 @@ _GLIBCXX_END_LDBL_NAMESPACE
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index b7bf42e..38e7dd3 100644 (file)
@@ -43,7 +43,9 @@
 #include <iosfwd>            // For ostreambuf_iterator, istreambuf_iterator
 #include <cctype>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /** 
    *  @defgroup locales Locales
@@ -138,12 +140,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     class codecvt_byname;
 
   // 22.2.2 and 22.2.3 numeric
-_GLIBCXX_BEGIN_LDBL_NAMESPACE
+_GLIBCXX_BEGIN_NAMESPACE_LDBL
   template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
     class num_get;
   template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
     class num_put;
-_GLIBCXX_END_LDBL_NAMESPACE
+_GLIBCXX_END_NAMESPACE_LDBL
   template<typename _CharT> class numpunct;
   template<typename _CharT> class numpunct_byname;
 
@@ -166,12 +168,12 @@ _GLIBCXX_END_LDBL_NAMESPACE
 
   // 22.2.6 money
   class money_base;
-_GLIBCXX_BEGIN_LDBL_NAMESPACE
+_GLIBCXX_BEGIN_NAMESPACE_LDBL
   template<typename _CharT, typename _InIter =  istreambuf_iterator<_CharT> >
     class money_get;
   template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
     class money_put;
-_GLIBCXX_END_LDBL_NAMESPACE
+_GLIBCXX_END_NAMESPACE_LDBL
   template<typename _CharT, bool _Intl = false>
     class moneypunct;
   template<typename _CharT, bool _Intl = false>
@@ -184,6 +186,7 @@ _GLIBCXX_END_LDBL_NAMESPACE
   template<typename _CharT>
     class messages_byname;
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index e57adcc..8b652a8 100644 (file)
@@ -35,7 +35,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @addtogroup numeric_arrays
@@ -201,6 +203,7 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
 
   // @} group numeric_arrays
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _MASK_ARRAY_H */
index 5172f50..f591899 100644 (file)
@@ -33,7 +33,9 @@
 #include <bits/c++config.h>
 #include <bits/concept_check.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // Used, in C++03 mode too, by allocators, etc.
   template<typename _Tp>
@@ -44,12 +46,15 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        (&const_cast<char&>(reinterpret_cast<const volatile char&>(__r)));
     }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #ifdef __GXX_EXPERIMENTAL_CXX0X__
 #include <type_traits> // Brings in std::declval too.
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
   
   /// forward (as per N3143)
   template<typename _Tp>
@@ -91,7 +96,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     addressof(_Tp& __r)
     { return std::__addressof(__r); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #define _GLIBCXX_MOVE(__val) std::move(__val)
 #define _GLIBCXX_FORWARD(_Tp, __val) std::forward<_Tp>(__val)
@@ -100,7 +106,9 @@ _GLIBCXX_END_NAMESPACE
 #define _GLIBCXX_FORWARD(_Tp, __val) (__val)
 #endif
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    *  @brief Swaps two values.
@@ -131,6 +139,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        swap(__a[__n], __b[__n]);
     }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _MOVE_H */
index ec41595..6c59e3e 100644 (file)
@@ -40,7 +40,9 @@
 
 #include <bits/cxxabi_forced.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT, typename _Traits>
     basic_ostream<_CharT, _Traits>::sentry::
@@ -402,6 +404,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 3d7cf2d..97608a0 100644 (file)
@@ -35,7 +35,9 @@
 #include <iosfwd>
 #include <bits/cxxabi_forced.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _CharT, typename _Traits>
     inline void
@@ -122,6 +124,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _OSTREAM_INSERT_H */
index 46ef671..69235d9 100644 (file)
@@ -67,7 +67,9 @@
 
 #endif
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // The types streamoff, streampos and wstreampos and the class
   // template fpos<> are described in clauses 21.1.2, 21.1.3, 27.1.2,
@@ -236,6 +238,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   typedef fpos<mbstate_t> u32streampos;
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 9feb0f4..5c406a6 100644 (file)
@@ -33,7 +33,9 @@
 
 #include <vector>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // [26.4] Random number generation
 
@@ -55,11 +57,15 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     _RealType
     generate_canonical(_UniformRandomNumberGenerator& __g);
 
+_GLIBCXX_END_NAMESPACE_VERSION
+
   /*
    * Implementation-space details.
    */
   namespace __detail
   {
+  _GLIBCXX_BEGIN_NAMESPACE_VERSION
+
     template<typename _UIntType, size_t __w,
             bool = __w < static_cast<size_t>
                          (std::numeric_limits<_UIntType>::digits)>
@@ -116,8 +122,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       private:
        _Engine& _M_g;
       };
+
+  _GLIBCXX_END_NAMESPACE_VERSION
   } // namespace __detail
 
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
   /**
    * @addtogroup random_generators Random Number Generators
    * @ingroup random
@@ -5376,6 +5386,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   /* @} */ // group random_utilities
 
   /* @} */ // group random
-_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace std
 
 #endif
index 43fd0c8..20f7667 100644 (file)
@@ -1,6 +1,6 @@
 // random number generation (out of line) -*- C++ -*-
 
-// Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2009, 2010, 2011 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
 
 #include <numeric> // std::accumulate and std::partial_sum
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
-
+namespace std _GLIBCXX_VISIBILITY(default)
+{
   /*
    * (Further) implementation-space details.
    */
   namespace __detail
   {
+  _GLIBCXX_BEGIN_NAMESPACE_VERSION
+
     // General case for x = (ax + c) mod m -- use Schrage's algorithm to
     // avoid integer overflow.
     //
@@ -100,8 +102,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
          *__result = __unary_op(*__first);
        return __result;
       }
+
+  _GLIBCXX_END_NAMESPACE_VERSION
   } // namespace __detail
 
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _UIntType, _UIntType __a, _UIntType __c, _UIntType __m>
     constexpr _UIntType
@@ -2818,6 +2823,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        }
       return __sum / __tmp;
     }
-_GLIBCXX_END_NAMESPACE
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif
index 5c898ef..0463791 100644 (file)
@@ -34,7 +34,9 @@
 
 #ifdef __GXX_EXPERIMENTAL_CXX0X__
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    *  @brief  Return an iterator pointing to the first element of
@@ -95,7 +97,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     end(_Tp (&__arr)[_Nm])
     { return __arr + _Nm; }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif // __GXX_EXPERIMENTAL_CXX0X__
 
index ab05fc2..f21530f 100644 (file)
@@ -28,7 +28,9 @@
  *  Do not attempt to use it directly. @headername{regex}
  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 /**
  * @defgroup regex Regular Expressions
@@ -2421,5 +2423,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
   
   //@} // group regex
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
index 4219c8b..5cfd192 100644 (file)
@@ -28,7 +28,9 @@
  *  Do not attempt to use it directly. @headername{regex}
  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 namespace __regex
 {
@@ -1111,6 +1113,7 @@ namespace __regex
 
 } // namespace __regex
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 /* vim: set ts=8 sw=2 sts=2: */
index 1aeef52..1cdd93c 100644 (file)
@@ -1,6 +1,6 @@
 // class template regex -*- C++ -*-
 
-// Copyright (C) 2010 Free Software Foundation, Inc.
+// Copyright (C) 2010, 2011 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
  *  Do not attempt to use it directly. @headername{regex}
  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
-
+namespace std _GLIBCXX_VISIBILITY(default)
+{
 /**
  * @namespace std::regex_constants
  * @brief ISO C++-0x entities sub namespace for regex.
  */
 namespace regex_constants
 {
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
   /**
    * @name 5.1 Regular Expression Syntax Options
    */
@@ -293,7 +295,7 @@ namespace regex_constants
 
   //@}
 
+_GLIBCXX_END_NAMESPACE_VERSION
 } // namespace regex_constants
-
-_GLIBCXX_END_NAMESPACE
+} // namespace
 
index fee7b43..d9d5556 100644 (file)
@@ -28,7 +28,9 @@
  *  Do not attempt to use it directly. @headername{regex}
  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 namespace __regex
 {
@@ -88,4 +90,5 @@ namespace __regex
 
 } // namespace __regex
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 6308c30..ffbedd5 100644 (file)
@@ -1,6 +1,6 @@
 // class template regex -*- C++ -*-
 
-// Copyright (C) 2010 Free Software Foundation, Inc.
+// Copyright (C) 2010, 2011 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
  *  Do not attempt to use it directly. @headername{regex}
  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
-
+namespace std _GLIBCXX_VISIBILITY(default)
+{
 namespace regex_constants
 {
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
   /**
    * @name 5.3 Error Types
    */
@@ -114,7 +116,10 @@ namespace regex_constants
   static const error_type error_stack(_S_error_stack);
 
   //@}
-}
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace regex_constants
+
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   // [7.8] Class regex_error
   /**
@@ -155,4 +160,5 @@ namespace regex_constants
   __throw_regex_error(regex_constants::error_type __ecode)
   { throw regex_error(__ecode); }
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace std
index 67770e9..04d06e5 100644 (file)
@@ -28,7 +28,9 @@
  *  Do not attempt to use it directly. @headername{regex}
  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template<typename _BiIter>
     class sub_match;
@@ -124,6 +126,7 @@ namespace __regex
 
 } // namespace __regex
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #include <bits/regex_grep_matcher.tcc>
index 804473f..1c12594 100644 (file)
@@ -30,7 +30,9 @@
 
 #include <regex>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 namespace
 {
@@ -175,4 +177,5 @@ namespace __regex
 
 } // namespace __regex
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index 4a771ee..b1ae3fb 100644 (file)
@@ -28,7 +28,9 @@
  *  Do not attempt to use it directly. @headername{regex}
  */
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 namespace __regex
 {
@@ -398,7 +400,8 @@ namespace __regex
 
 } // namespace __regex
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #include <bits/regex_nfa.tcc>
 
index 392b2c3..211ddc7 100644 (file)
@@ -29,7 +29,9 @@
  */
 #include <regex>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
 namespace __regex
 {
@@ -169,4 +171,5 @@ _M_clone()
 
 } // namespace __regex
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
index c9095d5..628863c 100644 (file)
@@ -51,7 +51,9 @@
 
 #include <bits/shared_ptr_base.h>
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @addtogroup pointer_abstractions
@@ -557,6 +559,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // @} group pointer_abstractions
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif // _SHARED_PTR_H
index ba2f004..fa85280 100644 (file)
@@ -49,7 +49,9 @@
 #ifndef _SHARED_PTR_BASE_H
 #define _SHARED_PTR_BASE_H 1
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
  /**
    *  @brief  Exception possibly thrown by @c shared_ptr.
@@ -1376,6 +1378,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       { return std::hash<_Tp*>()(__s.get()); }
     };
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif // _SHARED_PTR_BASE_H
index b3df3c2..3afae22 100644 (file)
@@ -35,7 +35,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   /**
    * @addtogroup numeric_arrays
@@ -267,6 +269,7 @@ _DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
 
   // @} group numeric_arrays
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif /* _SLICE_ARRAY_H */
index bbeee71..8956e9e 100644 (file)
@@ -38,7 +38,9 @@
 
 #pragma GCC system_header
 
-_GLIBCXX_BEGIN_NAMESPACE(std)
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
   template <class _CharT, class _Traits, class _Alloc>
     typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
@@ -268,6 +270,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 #endif
 #endif
 
-_GLIBCXX_END_NAMESPACE
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
 
 #endif