diff options
author | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-01-30 22:39:36 +0000 |
---|---|---|
committer | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-01-30 22:39:36 +0000 |
commit | 2948dd21a7947545dbf6c4a9656a3607242f0966 (patch) | |
tree | 6d218bc4cbdbfc108085ab6c6b673c951b45797c /libstdc++-v3/include/tr1 | |
parent | 7e44812a9719beaf834288013c2bb5f3b3cb5f35 (diff) | |
download | gcc-2948dd21a7947545dbf6c4a9656a3607242f0966.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169421 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/tr1')
36 files changed, 157 insertions, 65 deletions
diff --git a/libstdc++-v3/include/tr1/array b/libstdc++-v3/include/tr1/array index 3a1ff4caa8c..058fcfad60e 100644 --- a/libstdc++-v3/include/tr1/array +++ b/libstdc++-v3/include/tr1/array @@ -34,10 +34,12 @@ #include <bits/stl_algobase.h> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /** * @brief A standard container for storing a fixed size sequence of elements. * @@ -242,6 +244,8 @@ namespace tr1 inline const _Tp& get(const array<_Tp, _Nm>& __arr) { return __arr[_Int]; } + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/bessel_function.tcc b/libstdc++-v3/include/tr1/bessel_function.tcc index 4fb0b89cd41..b525ebc104b 100644 --- a/libstdc++-v3/include/tr1/bessel_function.tcc +++ b/libstdc++-v3/include/tr1/bessel_function.tcc @@ -49,16 +49,16 @@ #include "special_function_util.h" -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Compute the gamma functions required by the Temme series @@ -525,8 +525,8 @@ namespace tr1 * @param __x The argument of the spherical Bessel function. * @param __j_n The output spherical Bessel function. * @param __n_n The output spherical Neumann function. - * @param __jp_n The output derivative of the spherical Bessel function. - * @param __np_n The output derivative of the spherical Neumann function. + * @param __jp_n The output derivative of the spherical Bessel function. + * @param __np_n The output derivative of the spherical Neumann function. */ template <typename _Tp> void @@ -620,6 +620,7 @@ namespace tr1 } } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/beta_function.tcc b/libstdc++-v3/include/tr1/beta_function.tcc index e387d23f3e6..219f3cbd4d2 100644 --- a/libstdc++-v3/include/tr1/beta_function.tcc +++ b/libstdc++-v3/include/tr1/beta_function.tcc @@ -47,16 +47,16 @@ #ifndef _GLIBCXX_TR1_BETA_FUNCTION_TCC #define _GLIBCXX_TR1_BETA_FUNCTION_TCC 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Return the beta function: \f$B(x,y)\f$. @@ -190,6 +190,7 @@ namespace tr1 return __beta_lgamma(__x, __y); } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/cctype b/libstdc++-v3/include/tr1/cctype index ca9d18b669b..0cec3d9f455 100644 --- a/libstdc++-v3/include/tr1/cctype +++ b/libstdc++-v3/include/tr1/cctype @@ -36,7 +36,7 @@ #undef isblank -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/cfenv b/libstdc++-v3/include/tr1/cfenv index 14db2ca3f75..980a06c38a2 100644 --- a/libstdc++-v3/include/tr1/cfenv +++ b/libstdc++-v3/include/tr1/cfenv @@ -51,7 +51,7 @@ #undef fesetenv #undef feupdateenv -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/cinttypes b/libstdc++-v3/include/tr1/cinttypes index e0cd1718e6d..f1ca292790f 100644 --- a/libstdc++-v3/include/tr1/cinttypes +++ b/libstdc++-v3/include/tr1/cinttypes @@ -48,7 +48,7 @@ #ifdef _GLIBCXX_USE_C99_INTTYPES_TR1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/cmath b/libstdc++-v3/include/tr1/cmath index 36c9a733a6d..3cf1a106b0f 100644 --- a/libstdc++-v3/include/tr1/cmath +++ b/libstdc++-v3/include/tr1/cmath @@ -143,10 +143,12 @@ #endif -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + #if _GLIBCXX_USE_C99_MATH_TR1 // types @@ -997,13 +999,16 @@ namespace tr1 } #endif +_GLIBCXX_END_NAMESPACE_VERSION } } -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + // DR 550. What should the return type of pow(float,int) be? // NB: C++0x and TR1 != C++03. inline double @@ -1025,6 +1030,8 @@ namespace tr1 typedef typename __gnu_cxx::__promote_2<_Tp, _Up>::__type __type; return std::pow(__type(__x), __type(__y)); } + +_GLIBCXX_END_NAMESPACE_VERSION } } @@ -1044,10 +1051,12 @@ namespace tr1 #include <tr1/poly_laguerre.tcc> #include <tr1/riemann_zeta.tcc> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /** * @defgroup tr1_math_spec_func Mathematical Special Functions * @ingroup numerics @@ -1450,6 +1459,7 @@ namespace tr1 } /* @} */ // tr1_math_spec_func +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/complex b/libstdc++-v3/include/tr1/complex index 8cec0b11d8e..908b522e60a 100644 --- a/libstdc++-v3/include/tr1/complex +++ b/libstdc++-v3/include/tr1/complex @@ -33,10 +33,12 @@ #include <complex> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /** * @addtogroup complex_numbers * @{ @@ -401,6 +403,8 @@ namespace tr1 { return std::pow(__x, __y); } // @} group complex_numbers + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/cstdint b/libstdc++-v3/include/tr1/cstdint index d9675267055..55ce4bcefd0 100644 --- a/libstdc++-v3/include/tr1/cstdint +++ b/libstdc++-v3/include/tr1/cstdint @@ -56,7 +56,7 @@ #ifdef _GLIBCXX_USE_C99_STDINT_TR1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/cstdio b/libstdc++-v3/include/tr1/cstdio index e7963ae425c..415e8a4d67f 100644 --- a/libstdc++-v3/include/tr1/cstdio +++ b/libstdc++-v3/include/tr1/cstdio @@ -35,7 +35,7 @@ #if _GLIBCXX_USE_C99 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/cstdlib b/libstdc++-v3/include/tr1/cstdlib index a4b8eb1c0d6..6e3e16d0fa4 100644 --- a/libstdc++-v3/include/tr1/cstdlib +++ b/libstdc++-v3/include/tr1/cstdlib @@ -37,7 +37,7 @@ #if _GLIBCXX_USE_C99 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/cwchar b/libstdc++-v3/include/tr1/cwchar index c14111b0cf6..8bf775be196 100644 --- a/libstdc++-v3/include/tr1/cwchar +++ b/libstdc++-v3/include/tr1/cwchar @@ -35,7 +35,7 @@ #ifdef _GLIBCXX_USE_WCHAR_T -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/cwctype b/libstdc++-v3/include/tr1/cwctype index f9de1bea684..452a7b45631 100644 --- a/libstdc++-v3/include/tr1/cwctype +++ b/libstdc++-v3/include/tr1/cwctype @@ -35,7 +35,7 @@ #ifdef _GLIBCXX_USE_WCHAR_T -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { diff --git a/libstdc++-v3/include/tr1/ell_integral.tcc b/libstdc++-v3/include/tr1/ell_integral.tcc index c6b48d6a7f6..4dfe6169c64 100644 --- a/libstdc++-v3/include/tr1/ell_integral.tcc +++ b/libstdc++-v3/include/tr1/ell_integral.tcc @@ -43,16 +43,16 @@ #ifndef _GLIBCXX_TR1_ELL_INTEGRAL_TCC #define _GLIBCXX_TR1_ELL_INTEGRAL_TCC 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Return the Carlson elliptic function @f$ R_F(x,y,z) @f$ @@ -742,6 +742,7 @@ namespace tr1 } } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/exp_integral.tcc b/libstdc++-v3/include/tr1/exp_integral.tcc index e4f2847119b..cf3bd63536b 100644 --- a/libstdc++-v3/include/tr1/exp_integral.tcc +++ b/libstdc++-v3/include/tr1/exp_integral.tcc @@ -48,16 +48,16 @@ #include "special_function_util.h" -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Return the exponential integral @f$ E_1(x) @f$ @@ -517,6 +517,7 @@ namespace tr1 return __expint_Ei(__x); } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/functional b/libstdc++-v3/include/tr1/functional index 869150fd4c3..31e72d63ab5 100644 --- a/libstdc++-v3/include/tr1/functional +++ b/libstdc++-v3/include/tr1/functional @@ -1,6 +1,6 @@ // TR1 functional header -*- C++ -*- -// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010 +// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -44,10 +44,12 @@ #include <ext/type_traits.h> #include <bits/move.h> // for std::__addressof -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + template<typename _MemberPointer> class _Mem_fn; @@ -840,6 +842,8 @@ namespace tr1 /// The type of placeholder objects defined by libstdc++. template<int _Num> struct _Placeholder { }; +_GLIBCXX_END_NAMESPACE_VERSION + /** @namespace std::placeholders * @brief ISO C++ 0x entities sub namespace for functional. * @@ -849,6 +853,7 @@ namespace tr1 */ namespace placeholders { + _GLIBCXX_BEGIN_NAMESPACE_VERSION namespace { _Placeholder<1> _1; @@ -881,8 +886,10 @@ namespace tr1 _Placeholder<28> _28; _Placeholder<29> _29; } + _GLIBCXX_END_NAMESPACE_VERSION } +_GLIBCXX_BEGIN_NAMESPACE_VERSION /** * Partial specialization of is_placeholder that provides the placeholder * number for the placeholder objects defined by libstdc++. @@ -2134,6 +2141,8 @@ namespace tr1 inline void swap(function<_Signature>& __x, function<_Signature>& __y) { __x.swap(__y); } + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/functional_hash.h b/libstdc++-v3/include/tr1/functional_hash.h index e555acea4d3..1742e152788 100644 --- a/libstdc++-v3/include/tr1/functional_hash.h +++ b/libstdc++-v3/include/tr1/functional_hash.h @@ -32,10 +32,12 @@ #pragma GCC system_header -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /// Class template hash. // Declaration of default hash functor std::tr1::hash. The types for // which std::tr1::hash<T> is well-defined is in clause 6.3.3. of the PDTR. @@ -186,6 +188,8 @@ namespace tr1 _GLIBCXX_PURE size_t hash<const wstring&>::operator()(const wstring&) const; #endif + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/gamma.tcc b/libstdc++-v3/include/tr1/gamma.tcc index 6ded87b625e..a7c399cd445 100644 --- a/libstdc++-v3/include/tr1/gamma.tcc +++ b/libstdc++-v3/include/tr1/gamma.tcc @@ -49,13 +49,14 @@ #include "special_function_util.h" -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief This returns Bernoulli numbers from a table or by summation @@ -463,6 +464,7 @@ namespace tr1 } } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/hashtable.h b/libstdc++-v3/include/tr1/hashtable.h index 2dedc5cd16d..5d1e02c2592 100644 --- a/libstdc++-v3/include/tr1/hashtable.h +++ b/libstdc++-v3/include/tr1/hashtable.h @@ -1,6 +1,6 @@ // TR1 hashtable.h header -*- C++ -*- -// Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc. +// Copyright (C) 2007, 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,10 +35,12 @@ #include <tr1/hashtable_policy.h> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + // Class template _Hashtable, class definition. // Meaning of class template _Hashtable's template parameters @@ -1171,7 +1173,9 @@ namespace tr1 __throw_exception_again; } } -} -} + +_GLIBCXX_END_NAMESPACE_VERSION +} // namespace tr1 +} // namespace std #endif // _GLIBCXX_TR1_HASHTABLE_H diff --git a/libstdc++-v3/include/tr1/hashtable_policy.h b/libstdc++-v3/include/tr1/hashtable_policy.h index 967fb3c3377..82f8fde1841 100644 --- a/libstdc++-v3/include/tr1/hashtable_policy.h +++ b/libstdc++-v3/include/tr1/hashtable_policy.h @@ -1,6 +1,6 @@ // Internal policy header for TR1 unordered_set and unordered_map -*- 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 @@ -28,12 +28,14 @@ * @headername{tr1/unordered_map, tr1/unordered_set} */ -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { namespace __detail { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + // Helper function: return distance(first, last) for forward // iterators, or 0 for input iterators. template<class _Iterator> @@ -775,6 +777,7 @@ namespace __detail _H1 _M_h1; _H2 _M_h2; }; +_GLIBCXX_END_NAMESPACE_VERSION } // namespace __detail } } diff --git a/libstdc++-v3/include/tr1/hypergeometric.tcc b/libstdc++-v3/include/tr1/hypergeometric.tcc index bf6a0fdeded..b98b5b29c74 100644 --- a/libstdc++-v3/include/tr1/hypergeometric.tcc +++ b/libstdc++-v3/include/tr1/hypergeometric.tcc @@ -42,16 +42,16 @@ #ifndef _GLIBCXX_TR1_HYPERGEOMETRIC_TCC #define _GLIBCXX_TR1_HYPERGEOMETRIC_TCC 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief This routine returns the confluent hypergeometric function @@ -771,6 +771,7 @@ namespace tr1 return __hyperg_luke(__a, __b, __c, __x); } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/legendre_function.tcc b/libstdc++-v3/include/tr1/legendre_function.tcc index 7fed0ac2872..db41d4e0ac5 100644 --- a/libstdc++-v3/include/tr1/legendre_function.tcc +++ b/libstdc++-v3/include/tr1/legendre_function.tcc @@ -47,16 +47,16 @@ #include "special_function_util.h" -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Return the Legendre polynomial by recursion on order @@ -298,6 +298,7 @@ namespace tr1 } } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/modified_bessel_func.tcc b/libstdc++-v3/include/tr1/modified_bessel_func.tcc index 74e933fbd91..ec134d5763e 100644 --- a/libstdc++-v3/include/tr1/modified_bessel_func.tcc +++ b/libstdc++-v3/include/tr1/modified_bessel_func.tcc @@ -49,16 +49,16 @@ #include "special_function_util.h" -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Compute the modified Bessel functions @f$ I_\nu(x) @f$ and @@ -429,6 +429,7 @@ namespace tr1 return; } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/poly_hermite.tcc b/libstdc++-v3/include/tr1/poly_hermite.tcc index c8eefcdde0c..e86b3777c74 100644 --- a/libstdc++-v3/include/tr1/poly_hermite.tcc +++ b/libstdc++-v3/include/tr1/poly_hermite.tcc @@ -40,16 +40,16 @@ #ifndef _GLIBCXX_TR1_POLY_HERMITE_TCC #define _GLIBCXX_TR1_POLY_HERMITE_TCC 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief This routine returns the Hermite polynomial @@ -117,6 +117,7 @@ namespace tr1 return __poly_hermite_recursion(__n, __x); } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/poly_laguerre.tcc b/libstdc++-v3/include/tr1/poly_laguerre.tcc index fbbab58fb09..769923d34dc 100644 --- a/libstdc++-v3/include/tr1/poly_laguerre.tcc +++ b/libstdc++-v3/include/tr1/poly_laguerre.tcc @@ -42,17 +42,16 @@ #ifndef _GLIBCXX_TR1_POLY_LAGUERRE_TCC #define _GLIBCXX_TR1_POLY_LAGUERRE_TCC 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { - + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief This routine returns the associated Laguerre polynomial @@ -322,6 +321,7 @@ namespace tr1 return __poly_laguerre<unsigned int, _Tp>(__n, 0, __x); } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/random.h b/libstdc++-v3/include/tr1/random.h index 1b491b0461a..ace37929a0c 100644 --- a/libstdc++-v3/include/tr1/random.h +++ b/libstdc++-v3/include/tr1/random.h @@ -33,7 +33,7 @@ #pragma GCC system_header -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { @@ -50,6 +50,8 @@ namespace tr1 */ namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + template<typename _UIntType, int __w, bool = __w < std::numeric_limits<_UIntType>::digits> struct _Shift @@ -210,8 +212,12 @@ namespace tr1 private: _Engine* _M_g; }; + + _GLIBCXX_END_NAMESPACE_VERSION } // namespace __detail +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /** * Produces random numbers on a given distribution function using a * non-uniform random number generation engine. @@ -2404,6 +2410,7 @@ namespace tr1 /* @} */ // group tr1_random_distributions_continuous /* @} */ // group tr1_random_distributions /* @} */ // group tr1_random +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/random.tcc b/libstdc++-v3/include/tr1/random.tcc index d53737774d8..3d8c4fe1c10 100644 --- a/libstdc++-v3/include/tr1/random.tcc +++ b/libstdc++-v3/include/tr1/random.tcc @@ -31,7 +31,7 @@ #ifndef _GLIBCXX_TR1_RANDOM_TCC #define _GLIBCXX_TR1_RANDOM_TCC 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { @@ -40,6 +40,8 @@ namespace tr1 */ namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + // General case for x = (ax + c) mod m -- use Schrage's algorithm to avoid // integer overflow. // @@ -90,8 +92,10 @@ namespace tr1 __calc(_Tp __x) { return __a * __x + __c; } }; + _GLIBCXX_END_NAMESPACE_VERSION } // namespace __detail +_GLIBCXX_BEGIN_NAMESPACE_VERSION template<class _UIntType, _UIntType __a, _UIntType __c, _UIntType __m> const _UIntType @@ -1709,6 +1713,8 @@ namespace tr1 __os.precision(__precision); return __os; } + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/regex b/libstdc++-v3/include/tr1/regex index cc5ef05f74f..714a06d3381 100644 --- a/libstdc++-v3/include/tr1/regex +++ b/libstdc++-v3/include/tr1/regex @@ -43,7 +43,7 @@ #include <utility> #include <sstream> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { @@ -58,6 +58,8 @@ namespace tr1 */ namespace regex_constants { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /** * @name 5.1 Regular Expression Syntax Options */ @@ -395,8 +397,10 @@ namespace regex_constants static const error_type error_stack(_S_error_stack); //@} +_GLIBCXX_END_NAMESPACE_VERSION } +_GLIBCXX_BEGIN_NAMESPACE_VERSION // [7.8] Class regex_error /** @@ -1992,10 +1996,10 @@ namespace regex_constants /** * @name 10.4 Formatting * - * These functions perform formatted substitution of the matched character - * sequences into their target. The format specifiers and escape sequences - * accepted by these functions are determined by their @p flags parameter - * as documented above. + * These functions perform formatted substitution of the matched + * character sequences into their target. The format specifiers + * and escape sequences accepted by these functions are + * determined by their @p flags parameter as documented above. */ //@{ @@ -2718,6 +2722,8 @@ namespace regex_constants #endif //@} + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/riemann_zeta.tcc b/libstdc++-v3/include/tr1/riemann_zeta.tcc index 472025e96c8..18fe20ed82a 100644 --- a/libstdc++-v3/include/tr1/riemann_zeta.tcc +++ b/libstdc++-v3/include/tr1/riemann_zeta.tcc @@ -45,16 +45,16 @@ #include "special_function_util.h" -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // [5.2] Special functions // Implementation-space details. namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Compute the Riemann zeta function @f$ \zeta(s) @f$ @@ -428,6 +428,7 @@ namespace tr1 return __hurwitz_zeta_glob(__a, __s); } + _GLIBCXX_END_NAMESPACE_VERSION } // namespace std::tr1::__detail } } diff --git a/libstdc++-v3/include/tr1/shared_ptr.h b/libstdc++-v3/include/tr1/shared_ptr.h index a942fcd99ed..13b03842e5c 100644 --- a/libstdc++-v3/include/tr1/shared_ptr.h +++ b/libstdc++-v3/include/tr1/shared_ptr.h @@ -49,10 +49,12 @@ #ifndef _TR1_SHARED_PTR_H #define _TR1_SHARED_PTR_H 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /** * @brief Exception possibly thrown by @c shared_ptr. * @ingroup exceptions @@ -1169,6 +1171,8 @@ namespace tr1 mutable weak_ptr<_Tp> _M_weak_this; }; + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/special_function_util.h b/libstdc++-v3/include/tr1/special_function_util.h index a9626ea2be7..c90fc599f1a 100644 --- a/libstdc++-v3/include/tr1/special_function_util.h +++ b/libstdc++-v3/include/tr1/special_function_util.h @@ -37,13 +37,13 @@ #ifndef _GLIBCXX_TR1_SPECIAL_FUNCTION_UTIL_H #define _GLIBCXX_TR1_SPECIAL_FUNCTION_UTIL_H 1 -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - namespace __detail { + _GLIBCXX_BEGIN_NAMESPACE_VERSION /// A class to encapsulate type dependent floating point /// constants. Not everything will be able to be expressed as @@ -135,8 +135,8 @@ namespace tr1 #endif + _GLIBCXX_END_NAMESPACE_VERSION } // namespace __detail - } } diff --git a/libstdc++-v3/include/tr1/tuple b/libstdc++-v3/include/tr1/tuple index ff9f2206143..15ac642a19f 100644 --- a/libstdc++-v3/include/tr1/tuple +++ b/libstdc++-v3/include/tr1/tuple @@ -36,10 +36,12 @@ #include <utility> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + // Adds a const reference to a non-reference type. template<typename _Tp> struct __add_c_ref @@ -416,6 +418,8 @@ namespace tr1 { _Swallow_assign ignore; }; // anonymous namespace + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/type_traits b/libstdc++-v3/include/tr1/type_traits index 88aae7ad8b1..2825fe6f4e3 100644 --- a/libstdc++-v3/include/tr1/type_traits +++ b/libstdc++-v3/include/tr1/type_traits @@ -34,10 +34,12 @@ #include <bits/c++config.h> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + /** * @defgroup metaprogramming Type Traits * @ingroup utilities @@ -679,6 +681,8 @@ namespace tr1 #undef _DEFINE_SPEC_1_HELPER #undef _DEFINE_SPEC_2_HELPER #undef _DEFINE_SPEC + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/unordered_map.h b/libstdc++-v3/include/tr1/unordered_map.h index cdce7d0df0c..96404d3d07c 100644 --- a/libstdc++-v3/include/tr1/unordered_map.h +++ b/libstdc++-v3/include/tr1/unordered_map.h @@ -27,11 +27,13 @@ * Do not attempt to use it directly. @headername{tr1/unordered_map} */ -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // XXX When we get typedef templates these class definitions +_GLIBCXX_BEGIN_NAMESPACE_VERSION + + // NB: When we get typedef templates these class definitions // will be unnecessary. template<class _Key, class _Tp, class _Hash = hash<_Key>, @@ -270,5 +272,7 @@ namespace tr1 swap(unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>& __x, unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>& __y) { __x.swap(__y); } + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/unordered_set.h b/libstdc++-v3/include/tr1/unordered_set.h index 293adf194d4..e65a4cced27 100644 --- a/libstdc++-v3/include/tr1/unordered_set.h +++ b/libstdc++-v3/include/tr1/unordered_set.h @@ -27,11 +27,13 @@ * Do not attempt to use it directly. @headername{tr1/unordered_set} */ -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { - // XXX When we get typedef templates these class definitions +_GLIBCXX_BEGIN_NAMESPACE_VERSION + + // NB: When we get typedef templates these class definitions // will be unnecessary. template<class _Value, class _Hash = hash<_Value>, @@ -259,5 +261,7 @@ namespace tr1 swap(unordered_multiset<_Value, _Hash, _Pred, _Alloc>& __x, unordered_multiset<_Value, _Hash, _Pred, _Alloc>& __y) { __x.swap(__y); } + +_GLIBCXX_END_NAMESPACE_VERSION } } diff --git a/libstdc++-v3/include/tr1/utility b/libstdc++-v3/include/tr1/utility index 04ff67a3f8f..ef3673a44c3 100644 --- a/libstdc++-v3/include/tr1/utility +++ b/libstdc++-v3/include/tr1/utility @@ -1,6 +1,6 @@ // TR1 utility -*- C++ -*- -// Copyright (C) 2004, 2005, 2006, 2007, 2008. 2009, 2010 +// Copyright (C) 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 @@ -36,10 +36,12 @@ #include <bits/stl_relops.h> #include <bits/stl_pair.h> -namespace std +namespace std _GLIBCXX_VISIBILITY(default) { namespace tr1 { +_GLIBCXX_BEGIN_NAMESPACE_VERSION + template<class _Tp> class tuple_size; @@ -99,6 +101,8 @@ namespace tr1 inline const typename tuple_element<_Int, std::pair<_Tp1, _Tp2> >::type& get(const std::pair<_Tp1, _Tp2>& __in) { return __pair_get<_Int>::__const_get(__in); } + +_GLIBCXX_END_NAMESPACE_VERSION } } |