Define debug mode function for C++98

This function is declared unconditionally but was only defined for C++11
and later, leading to linker errors when the testsuite was run with
-std=gnu++98 -D_GLIBCXX_DEBUG added to the flags.

	* include/debug/vector (__niter_base): Define for C++98.

From-SVN: r263816
This commit is contained in:
Jonathan Wakely 2018-08-23 16:23:31 +01:00 committed by Jonathan Wakely
parent c07870270a
commit 568d5ee44d
2 changed files with 4 additions and 3 deletions

View File

@ -1,5 +1,7 @@
2018-08-23 Jonathan Wakely <jwakely@redhat.com>
* include/debug/vector (__niter_base): Define for C++98.
* testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
Fix C++98 test to not use C++11 features.
* testsuite/25_algorithms/fill_n/2.cc: Likewise.

View File

@ -774,9 +774,9 @@ namespace __debug
} // namespace __debug
#if __cplusplus >= 201103L
_GLIBCXX_BEGIN_NAMESPACE_VERSION
#if __cplusplus >= 201103L
// DR 1182.
/// std::hash specialization for vector<bool>.
template<typename _Alloc>
@ -787,6 +787,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator()(const __debug::vector<bool, _Alloc>& __b) const noexcept
{ return std::hash<_GLIBCXX_STD_C::vector<bool, _Alloc>>()(__b); }
};
#endif
template<typename _Iterator, typename _Container, typename _Sequence>
_Iterator
@ -796,8 +797,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return std::__niter_base(__it.base()); }
_GLIBCXX_END_NAMESPACE_VERSION
#endif
} // namespace std
namespace __gnu_debug