diff options
| author | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-03-05 01:15:28 +0000 |
|---|---|---|
| committer | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-03-05 01:15:28 +0000 |
| commit | 9c7351ae10e3e9401983af4ad6cb33fa14f9db5d (patch) | |
| tree | 6c290c31ed518698ccc30d08c831ee001d0cde00 /libstdc++-v3/include/debug/deque | |
| parent | 0fca2a367b6a129c7b05592a63bd9c860e346714 (diff) | |
| download | ppe42-gcc-9c7351ae10e3e9401983af4ad6cb33fa14f9db5d.tar.gz ppe42-gcc-9c7351ae10e3e9401983af4ad6cb33fa14f9db5d.zip | |
2012-03-04 Paolo Carlini <paolo.carlini@oracle.com>
Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/43813
* include/bits/stl_iterator_base_types.h (_RequireInputIter): New.
* include/ext/vstring.h (__versa_string<>::__versa_string
(_InputIterator, _InputIterator, const _Alloc&),
__versa_string<>::append(_InputIterator, _InputIterator),
__versa_string<>::assign(_InputIterator, _InputIterator),
__versa_string<>::insert(iterator, _InputIterator,
_InputIterator), __versa_string<>::replace(iterator, iterator,
_InputIterator, _InputIterator)): Use it.
* include/bits/stl_list.h (list<>::list(_InputIterator,
_InputIterator, const allocator_type&), list<>::assign(_InputIterator,
_InputIterator), list<>::insert(iterator, _InputIterator,
_InputIterator)): Likewise.
* include/bits/stl_vector.h (vector<>::vector(_InputIterator,
_InputIterator, const allocator_type&), vector<>::assign(_InputIterator,
_InputIterator), vectort<>::insert(iterator, _InputIterator,
_InputIterator)): Likewise.
* include/bits/stl_deque.h (deque<>::deque(_InputIterator,
_InputIterator, const allocator_type&), deque<>::deque(_InputIterator,
_InputIterator), deque<>::insert(iterator, _InputIterator,
_InputIterator)): Likewise.
* include/bits/stl_bvector.h (vector<>::vector(_InputIterator,
_InputIterator, const allocator_type&), vector<>::deque(_InputIterator,
_InputIterator), vector<>::insert(iterator, _InputIterator,
_InputIterator)): Likewise.
* include/bits/forward_list.h (forward_list<>::forward_list
(_InputIterator, _InputIterator, const allocator_type&),
forward_list<>::assign(_InputIterator, _InputIterator),
forward_list<>::insert_after(const_iterator, _InputIterator,
_InputIterator)): Likewise.
(forward_list<>::_M_initialize_dispatch(,, __true_type): Remove.
(forward_list<>::_M_range_initialize): Add, adjust everywhere.
* include/bits/forward_list.tcc: Adjust.
* include/debug/forward_list: Adjust.
* include/debug/vector: Likewise.
* include/debug/deque: Likewise.
* include/debug/list: Likewise.
* testsuite/ext/vstring/requirements/do_the_right_thing.cc: New.
* testsuite/23_containers/forward_list/requirements/
do_the_right_thing.cc: Likewise.
* testsuite/23_containers/vector/requirements/
do_the_right_thing.cc: Likewise.
* testsuite/23_containers/deque/requirements/
do_the_right_thing.cc: Likewise.
* testsuite/23_containers/list/requirements/
do_the_right_thing.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Adjust dg-error line number.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184911 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/debug/deque')
| -rw-r--r-- | libstdc++-v3/include/debug/deque | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/libstdc++-v3/include/debug/deque b/libstdc++-v3/include/debug/deque index 07b332b0191..ce09cb26ab7 100644 --- a/libstdc++-v3/include/debug/deque +++ b/libstdc++-v3/include/debug/deque @@ -1,6 +1,7 @@ // Debugging deque implementation -*- C++ -*- -// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 +// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, +// 2012 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -88,7 +89,12 @@ namespace __debug : _Base(__n, __value, __a) { } #endif +#ifdef __GXX_EXPERIMENTAL_CXX0X__ + template<class _InputIterator, + typename = std::_RequireInputIter<_InputIterator>> +#else template<class _InputIterator> +#endif deque(_InputIterator __first, _InputIterator __last, const _Allocator& __a = _Allocator()) : _Base(__gnu_debug::__base(__gnu_debug::__check_valid_range(__first, @@ -142,7 +148,12 @@ namespace __debug } #endif +#ifdef __GXX_EXPERIMENTAL_CXX0X__ + template<class _InputIterator, + typename = std::_RequireInputIter<_InputIterator>> +#else template<class _InputIterator> +#endif void assign(_InputIterator __first, _InputIterator __last) { @@ -413,7 +424,12 @@ namespace __debug this->_M_invalidate_all(); } +#ifdef __GXX_EXPERIMENTAL_CXX0X__ + template<class _InputIterator, + typename = std::_RequireInputIter<_InputIterator>> +#else template<class _InputIterator> +#endif void insert(iterator __position, _InputIterator __first, _InputIterator __last) |

