aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include
diff options
context:
space:
mode:
authorVille Voutilainen <ville.voutilainen@gmail.com>2017-11-20 16:21:42 +0200
committerVille Voutilainen <ville@gcc.gnu.org>2017-11-20 16:21:42 +0200
commit7b7b60c83047db2e4bde9e7f40ce3f1738694789 (patch)
tree18ee860194c5bf079e48a6f3b5f0de4836e5242b /libstdc++-v3/include
parent9cdcebf971e71e69a773d729b97cfb55652cca31 (diff)
downloadgcc-7b7b60c83047db2e4bde9e7f40ce3f1738694789.zip
gcc-7b7b60c83047db2e4bde9e7f40ce3f1738694789.tar.gz
gcc-7b7b60c83047db2e4bde9e7f40ce3f1738694789.tar.bz2
Implement LWG 2353
* include/bits/stl_iterator_base_funcs.h (next): Use InputIterator instead of ForwardIterator. * testsuite/24_iterators/operations/lwg2353.cc: New. * testsuite/24_iterators/operations/next_neg.cc: Remove. From-SVN: r254957
Diffstat (limited to 'libstdc++-v3/include')
-rw-r--r--libstdc++-v3/include/bits/stl_iterator_base_funcs.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
index 86a93d3..ad84b39 100644
--- a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
+++ b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
@@ -208,14 +208,13 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
#if __cplusplus >= 201103L
- template<typename _ForwardIterator>
- inline _GLIBCXX17_CONSTEXPR _ForwardIterator
- next(_ForwardIterator __x, typename
- iterator_traits<_ForwardIterator>::difference_type __n = 1)
+ template<typename _InputIterator>
+ inline _GLIBCXX17_CONSTEXPR _InputIterator
+ next(_InputIterator __x, typename
+ iterator_traits<_InputIterator>::difference_type __n = 1)
{
// concept requirements
- __glibcxx_function_requires(_ForwardIteratorConcept<
- _ForwardIterator>)
+ __glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
std::advance(__x, __n);
return __x;
}