re PR libstdc++/56834 (Errors in <array> with --enable-symvers=gnu-versioned-namespace and -D_GLIBCXX_DEBUG)

2013-04-03  Paolo Carlini  <paolo.carlini@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.

From-SVN: r197415
This commit is contained in:
Paolo Carlini 2013-04-03 15:07:12 +00:00 committed by Paolo Carlini
parent 4d85233e76
commit 169a7e85f0
4 changed files with 9 additions and 13 deletions

View File

@ -1,3 +1,11 @@
2013-04-03 Paolo Carlini <paolo.carlini@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.
2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
* libsupc++/exception (get_terminate(), get_unexpected()): Declare.

View File

@ -289,17 +289,11 @@ namespace __debug
// 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>>
{

View File

@ -251,17 +251,11 @@ namespace __profile
// 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>>
{

View File

@ -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 }