Hi,
admittedly, I'm still missing some details of the
--enable-symvers=gnu-versioned-namespace configuration, but this is
straightforweard enough. Applied mainline and 4_8-branch.
Thanks,
Paolo.
///////////////////////
2013-04-03 Paolo Carlini <paolo.carl...@oracle.com>
PR libstdc++/56834
* include/debug/array (tuple_size, tuple_element): Do not declare.
* include/profile/array: Likewise.
* testsuite/23_containers/array/tuple_interface/
tuple_element_debug_neg.cc: Adjust dg-error line number.
Index: include/debug/array
===================================================================
--- include/debug/array (revision 197411)
+++ include/debug/array (working copy)
@@ -289,17 +289,11 @@
// Tuple interface to class template array.
/// tuple_size
- template<typename _Tp>
- class tuple_size;
-
template<typename _Tp, std::size_t _Nm>
struct tuple_size<__debug::array<_Tp, _Nm>>
: public integral_constant<std::size_t, _Nm> { };
/// tuple_element
- template<std::size_t _Int, typename _Tp>
- class tuple_element;
-
template<std::size_t _Int, typename _Tp, std::size_t _Nm>
struct tuple_element<_Int, __debug::array<_Tp, _Nm>>
{
Index: include/profile/array
===================================================================
--- include/profile/array (revision 197411)
+++ include/profile/array (working copy)
@@ -251,17 +251,11 @@
// Tuple interface to class template array.
/// tuple_size
- template<typename _Tp>
- class tuple_size;
-
template<typename _Tp, std::size_t _Nm>
struct tuple_size<__profile::array<_Tp, _Nm>>
: public integral_constant<std::size_t, _Nm> { };
/// tuple_element
- template<std::size_t _Int, typename _Tp>
- class tuple_element;
-
template<std::size_t _Int, typename _Tp, std::size_t _Nm>
struct tuple_element<_Int, __profile::array<_Tp, _Nm>>
{
Index: testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc
===================================================================
--- testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc
(revision 197411)
+++ testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc
(working copy)
@@ -23,4 +23,4 @@
typedef std::tuple_element<1, std::array<int, 1>>::type type;
-// { dg-error "static assertion failed" "" { target *-*-* } 306 }
+// { dg-error "static assertion failed" "" { target *-*-* } 300 }