Commit Graph

45 Commits

Author SHA1 Message Date
Richard Sandiford
aa118a03c4 Update copyright years in libstdc++-v3/
From-SVN: r206301
2014-01-02 22:30:10 +00:00
Paolo Carlini
4f03875418 re PR libstdc++/58415 (__sso_string_base move constructor does not null terminate local data when moving from empty string)
2013-09-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/58415
	* include/ext/sso_string_base.h (__sso_string_base<>::
	__sso_string_base(__sso_string_base&&)): Fix thinkos about
	_M_length vs _M_set_length.
	* testsuite/ext/vstring/cons/58415-1.cc: New.
	* testsuite/ext/vstring/cons/58415-2.cc: Likewise.

From-SVN: r202574
2013-09-13 18:32:42 +00:00
Paolo Carlini
56b5d3b48b re PR libstdc++/58163 ([C++11] Pedantic assert on str[str.size()] is wrong in C++11)
2013-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/58163
	* include/bits/basic_string.h (basic_string<>::operator[]): Fix
	_GLIBCXX_DEBUG_PEDASSERT check vs C++11.
	* include/ext/vstring.h: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/58163.cc:
	New.
	* testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
	Likewise.
	* testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
	* testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.

From-SVN: r201755
2013-08-15 00:15:12 +00:00
Paolo Carlini
019fdb7923 stl_list.h (list<>::insert(iterator, size_type, const value_type&), [...]): Adjust C++11 signatures to take const_iterator(s).
2013-07-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_list.h (list<>::insert(iterator,
	size_type, const value_type&), list<>::insert(iterator,
	initializer_list<>), list<>::insert(iterator, _InputIterator,
	_InputIterator), list<>::splice(iterator, list&&),
	list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
	iterator), list<>::splice(iterator, list&, iterator),
	list<>::splice(iterator, list&&, iterator, iterator),
	list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
	signatures to take const_iterator(s).
	* include/bits/list.tcc (list<>::insert(const_iterator, size_type,
	const value_type&), list<>::insert(const_iterator, _InputIterator,
	_InputIterator)): Define.
	* include/ext/vstring.h (__versa_string<>::insert(iterator,
	size_type, _CharT), __versa_string<>::insert(iterator,
	_InputIterator, _InputIterator), __versa_string<>::insert(iterator,
	std::initializer_list<>), __versa_string<>::replace(iterator,
	iterator, _InputIterator, _InputIterator), __versa_string<>::
	replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
	signatures to take const_iterator(s).
	(__versa_string<>::_M_replace_dispatch): Take const_iterators.
	* include/ext/vstring.tcc: Likewise.
	* include/debug/list: Adjust.
	* include/profile/list: Likewise.
	* testsuite/23_containers/list/operations/splice/const_iterator.cc:
	New.
	* testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
	Extend.
	* testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
	Likewise.
	* testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
	Likewise.
	* testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
	Likewise.
	* testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
	Likewise.

	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r200580
2013-07-01 16:17:46 +00:00
Paolo Carlini
17ee10dbec *: Move inside testsuite/21_strings/basic_string/modifiers/.
2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/append/*: Move inside
	testsuite/21_strings/basic_string/modifiers/.
	* testsuite/21_strings/basic_string/assign/*: Likewise.
	* testsuite/21_strings/basic_string/insert/*: Likewise.
	* testsuite/21_strings/basic_string/replace/*: Likewise.
	* testsuite/21_strings/basic_string/modifiers/pop_back/char/
	pop_back.cc: Rename to 1.cc.
	* testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/
	pop_back.cc: Likewise.
	* testsuite/ext/vstring/assign/*: Move inside
	testsuite/ext/vstring/modifiers/.

From-SVN: r200465
2013-06-27 12:15:34 +00:00
Paolo Carlini
7b61c5a9cb stl_deque.h (deque<>::insert(iterator, const value_type&), [...]): Adjust C++11 signatures to take a const_iterator.
2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_deque.h (deque<>::insert(iterator,
	const value_type&), deque<>::insert(iterator, value_type&&),
	deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to
	take a const_iterator.
	(deque<>::erase): Simplify.
	* include/bits/stl_list.h: Likewise.
	(_List_iterator<>::_M_const_cast): Add.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	(_Bit_iterator::_M_const_cast): Add.
	* include/bits/deque.tcc: Adjust definitions.
	* include/bits/list.tcc: Likewise.
	* include/bits/vector.tcc: Likewise.
	* include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
	Define trivial version in C++98 mode.
	* include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT),
	__versa_string<>::replace(iterator, iterator, const __versa_string&),
	__versa_string<>::replace(iterator, iterator, const _CharT*,
	size_type), __versa_string<>::replace(iterator, iterator,
	const _CharT*), __versa_string<>::replace(iterator, iterator,
	size_type, _CharT)): Adjust C++11 signatures to take a pair of
	const_iterators.
	* include/debug/deque: Adjust.
	* include/debug/list: Likewise.
	* include/debug/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/list: Likewise.
	* include/profile/vector: Likewise.
	(vector<>::emplace): Add.
	* testsuite/util/exception/safety.h: Update.
	* testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
	New.
	* testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
	Likewise.
	* testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
	Likewise.
	* testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
	Likewise.
	* testsuite/23_containers/vector/bool/modifiers/insert/
	const_iterator.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
	Likewise.
	* testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
	Likewise.
	* testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
	Likewise.
	* testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
	Likewise.
	* testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
	Likewise.
	* testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
	Likewise.

	* testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/
	ext/vstring/modifiers/erase/char/.
	* testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/
	ext/vstring/modifiers/wchar_t/.
	* testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/
	ext/vstring/modifiers/pop_back/char/.
	* testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to
	testsuite/ext/vstring/modifiers/pop_back/wchar_t/.

	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* 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/deque/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/assign_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.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_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/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r200458
2013-06-27 09:51:21 +00:00
Paolo Carlini
94938aec1a re PR libstdc++/54577 (deque<T>::erase() still takes iterator instead of const_iterator)
2013-05-10  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/54577
	* include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
	(_Deque_iterator<>::_M_const_cast): Add.
	(deque<>::_M_erase): Declare.
	* include/bits/deque.tcc: ... and define.
	* include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
	(_List_const_iterator<>::_M_const_cast): Add.
	* include/bits/list.tcc (erase (iterator)): Fix.
	* include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
	Add; include <ext/cast.h>.
	* include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
	(vector<>::_M_erase): Declare.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/vector.tcc (vector<>::_M_erase): Define.
	* include/ext/vstring.h (erase): Fix signatures in C++11 mode.
	* include/debug/deque: Adjust.
	* include/debug/list: Likewise.
	* include/debug/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/list: Likewise.
	* include/profile/vector: Likewise.
	* testsuite/util/exception/safety.h (erase_base<deque>,
	erase_base<deque>, erase_base<vector>): Remove.
	(erase_base<__versa_string>): Update.
	* testsuite/ext/vstring/modifiers/char/54577.cc: New.
	* testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
	* testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
	* testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
	Likewise.
	* testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-error line numbers.
	* 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/deque/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/assign_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.
	* testsuite/23_containers/list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_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/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r198790
2013-05-10 15:18:33 +00:00
Richard Sandiford
405feeb871 Update copyright in libstdc++-v3.
From-SVN: r195701
2013-02-03 17:54:05 +00:00
Jakub Jelinek
90d04a445c Update Copyright years for files modified in 2011 and/or 2012.
From-SVN: r194903
2013-01-04 13:49:55 +01:00
Jonathan Wakely
2328b1de5e range_access.cc: Fix copying permission statement.
* testsuite/18_support/initializer_list/range_access.cc: Fix copying
	permission statement.
	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
	808590.cc: Likewise.
	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
	move_iterators/1.cc: Likewise.
	* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
	move_iterators/1.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
	Likewise.
	* testsuite/21_strings/basic_string/range_access/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
	Likewise.
	* testsuite/23_containers/array/element_access/at_neg.cc: Likewise.
	* testsuite/23_containers/array/range_access.cc: Likewise.
	* testsuite/23_containers/deque/capacity/29134-2.cc: Likewise.
	* testsuite/23_containers/deque/capacity/29134.cc: Likewise.
	* testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/deque/range_access.cc: Likewise.
	* testsuite/23_containers/deque/requirements/do_the_right_thing.cc:
	Likewise.
	* testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/1.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/10.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/11.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/12.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/2.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/3.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/4.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/5.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/6.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/7.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/8.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/9.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/clear.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/move_constructor.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/swap.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/1.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/6.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/1.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/2.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/3.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/4.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/5.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/6.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/7.cc: Likewise.
	* testsuite/23_containers/forward_list/range_access.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	do_the_right_thing.cc: Likewise.
	* testsuite/23_containers/list/capacity/1.cc: Likewise.
	* testsuite/23_containers/list/capacity/1.h: Likewise.
	* testsuite/23_containers/list/capacity/29134.cc: Likewise.
	* testsuite/23_containers/list/modifiers/1.cc: Likewise.
	* testsuite/23_containers/list/modifiers/1.h: Likewise.
	* testsuite/23_containers/list/modifiers/1_c++0x.cc: Likewise.
	* testsuite/23_containers/list/modifiers/2.cc: Likewise.
	* testsuite/23_containers/list/modifiers/2.h: Likewise.
	* testsuite/23_containers/list/modifiers/3.cc: Likewise.
	* testsuite/23_containers/list/modifiers/3.h: Likewise.
	* testsuite/23_containers/list/modifiers/insert/25288.cc: Likewise.
	* testsuite/23_containers/list/modifiers/insert/25288.h: Likewise.
	* testsuite/23_containers/list/operations/1.cc: Likewise.
	* testsuite/23_containers/list/operations/1.h: Likewise.
	* testsuite/23_containers/list/operations/2.cc: Likewise.
	* testsuite/23_containers/list/operations/2.h: Likewise.
	* testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
	* testsuite/23_containers/list/operations/3.cc: Likewise.
	* testsuite/23_containers/list/operations/3.h: Likewise.
	* testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
	* testsuite/23_containers/list/operations/4.cc: Likewise.
	* testsuite/23_containers/list/operations/4.h: Likewise.
	* testsuite/23_containers/list/operations/42352.cc: Likewise.
	* testsuite/23_containers/list/operations/5.cc: Likewise.
	* testsuite/23_containers/list/operations/5.h: Likewise.
	* testsuite/23_containers/list/range_access.cc: Likewise.
	* testsuite/23_containers/list/requirements/do_the_right_thing.cc:
	Likewise.
	* testsuite/23_containers/map/capacity/29134.cc: Likewise.
	* testsuite/23_containers/map/range_access.cc: Likewise.
	* testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
	* testsuite/23_containers/multimap/range_access.cc: Likewise.
	* testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
	* testsuite/23_containers/multiset/range_access.cc: Likewise.
	* testsuite/23_containers/set/capacity/29134.cc: Likewise.
	* testsuite/23_containers/set/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_map/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_map/observers.cc: Likewise.
	* testsuite/23_containers/unordered_map/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/52942.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/requirements/53067.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/requirements/53339.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/53339.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_set/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/observers.cc: Likewise.
	* testsuite/23_containers/unordered_set/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/52942.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/requirements/53067.cc:
	Likewise.
	* testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
	* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
	Likewise.
	* testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
	* testsuite/23_containers/vector/capacity/29134.cc: Likewise.
	* testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: Likewise.
	* testsuite/23_containers/vector/range_access.cc: Likewise.
	* testsuite/23_containers/vector/requirements/do_the_right_thing.cc:
	Likewise.
	* testsuite/24_iterators/range_access.cc: Likewise.
	* testsuite/25_algorithms/copy/1.cc: Likewise.
	* testsuite/25_algorithms/copy/2.cc: Likewise.
	* testsuite/25_algorithms/copy/3.cc: Likewise.
	* testsuite/25_algorithms/copy/34595.cc: Likewise.
	* testsuite/25_algorithms/copy/4.cc: Likewise.
	* testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
	Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
	Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
	Likewise.
	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
	Likewise.
	* testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/copy_n/1.cc: Likewise.
	* testsuite/25_algorithms/copy_n/2.cc: Likewise.
	* testsuite/25_algorithms/copy_n/3.cc: Likewise.
	* testsuite/25_algorithms/copy_n/4.cc: Likewise.
	* testsuite/25_algorithms/copy_n/50119.cc: Likewise.
	* testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/fill/4.cc: Likewise.
	* testsuite/25_algorithms/fill_n/1.cc: Likewise.
	* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc:
	Likewise.
	* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc:
	Likewise.
	* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
	Likewise.
	* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
	Likewise.
	* testsuite/25_algorithms/heap/1.cc: Likewise.
	* testsuite/25_algorithms/heap/moveable.cc: Likewise.
	* testsuite/25_algorithms/heap/moveable2.cc: Likewise.
	* testsuite/25_algorithms/is_heap/1.cc: Likewise.
	* testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
	* testsuite/25_algorithms/is_sorted/1.cc: Likewise.
	* testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
	* testsuite/25_algorithms/move/1.cc: Likewise.
	* testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/move_backward/1.cc: Likewise.
	* testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/partition/1.cc: Likewise.
	* testsuite/25_algorithms/partition/moveable.cc: Likewise.
	* testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
	* testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
	* testsuite/25_algorithms/stable_partition/1.cc: Likewise.
	* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
	* testsuite/25_algorithms/stable_partition/pr52822.cc: Likewise.
	* testsuite/26_numerics/valarray/range_access.cc: Likewise.
	* testsuite/28_regex/range_access.cc: Likewise.
	* testsuite/ext/vstring/capacity/29134.cc: Likewise.
	* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/ext/vstring/hash/char/1.cc: Likewise.
	* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
	* testsuite/ext/vstring/range_access.cc: Likewise.
	* testsuite/ext/vstring/requirements/do_the_right_thing.cc: Likewise.
	* testsuite/performance/25_algorithms/copy_backward_deque_iterators.cc:
	Likewise.
	* testsuite/performance/25_algorithms/copy_deque_iterators.cc:
	Likewise.
	* testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
	Likewise.
	* testsuite/tr1/6_containers/unordered_multimap/capacity/
	29134-multimap.cc: Likewise.
	* testsuite/tr1/6_containers/unordered_multiset/capacity/
	29134-multiset.cc: Likewise.
	* testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
	Likewise.

From-SVN: r193076
2012-11-01 23:20:37 +00:00
Paolo Carlini
2203cb90fb re PR libstdc++/43813 ([DR1234] vector<T*>(3, NULL) fails to compile)
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.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>

From-SVN: r184911
2012-03-05 01:15:28 +00:00
Jonathan Wakely
f1e09f0d14 basic_string.h (basic_string::at): Move adjacent to other overload.
* include/bits/basic_string.h (basic_string::at): Move adjacent to other
	overload.
	(basic_string::pop_back): Define.
	* include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
	* include/ext/vstring.h (__versa_string::pop_back): Likewise.
	* config/abi/pre/gnu.ver: Add new symbols.
	* testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
	* testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
	* testsuite/21_strings/basic_string/range_access.cc: Split to ...
	* testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
	* testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
	* testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
	* testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.

From-SVN: r181049
2011-11-07 00:06:23 +00:00
Paolo Carlini
6f59ea252b hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Use std::move on the allocator, use noexcept.
2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
	Use std::move on the allocator, use noexcept.
	(_Hashtable<>::~_Hashtable): Use noexcept.
	* include/bits/stl_list.h: Likewise.
	* include/bits/forward_list.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_map.h (map<>::map(map&&)): Use noexcept. 
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
	std::move on the allocator.
	(_Rb_tree<>::~_Rb_tree): Use noexcept.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/basic_string.h (basic_string<>::~basic_string): Use
	noexcept.
	* include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
	* include/debug/set.h: Adjust.
	* include/debug/unordered_map: Likewise.
	* include/debug/multiset.h: Likewise.
	* include/debug/forward_list: Likewise.
	* include/debug/vector: Likewise.
	* include/debug/unordered_set: Likewise.
	* include/debug/deque: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/string: Likewise.
	* include/debug/list: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/profile/set.h: Likewise.
	* include/profile/unordered_map: Likewise.
	* include/profile/multiset.h: Likewise.
	* include/profile/forward_list: Likewise.
	* include/profile/unordered_set: Likewise.
	* include/profile/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/map.h: Likewise.
	* include/profile/list: Likewise.
	* include/profile/multimap.h: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/
	noexcept_move_construct.cc: New.
	* testsuite/21_strings/basic_string/cons/char/
	noexcept_move_construct.cc: Likewise.
	* testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_map/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/multimap/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/set/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_set/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/vector/bool/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/vector/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/multiset/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/list/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/map/cons/noexcept_move_construct.cc
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Adjust dg-error line numbers.
	* 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.

	* include/bits/move.h (swap): Use __and_ in the noexcept.
	* include/bits/algorithmfwd.h: Adjust.

From-SVN: r174525
2011-06-01 14:16:19 +00:00
Paolo Carlini
11436beb87 propagation_consistent.cc: Fix vs POD-ness of value_type.
2011-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/requirements/exception/
	propagation_consistent.cc: Fix vs POD-ness of value_type.
	* testsuite/21_strings/basic_string/requirements/exception/
	basic.cc: Likewise.
	* testsuite/ext/vstring/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.

From-SVN: r173992
2011-05-21 00:30:57 +00:00
Paolo Carlini
11514ce0fb re PR libstdc++/47776 (New libstc++ test failures)
2011-02-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/47776
	* testsuite/ext/vstring/hash/char/1.cc: Fix.
	* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.

From-SVN: r170242
2011-02-17 08:38:11 +00:00
Paolo Carlini
bde8d7f701 re PR libstdc++/47773 (Versatile string lacks a default hash function)
2011-02-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/47773
	* include/ext/vstring.h (hash<__gnu_cxx::__vstring>,
	hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>,
	hash<__gnu_cxx::__u32vstring>): Add.
	* testsuite/ext/vstring/hash/char/1.cc: New.
	* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.

From-SVN: r170235
2011-02-17 01:24:37 +00:00
Paolo Carlini
2f8bed1613 4.cc: New.
2010-12-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/operators/char/4.cc: New.
	* testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
	* testsuite/ext/vstring/operators/2.cc: Likewise.

From-SVN: r168048
2010-12-19 12:15:47 +00:00
Paolo Carlini
3ca4d07dff vstring.h (operator+(__versa_string<>&&, const __versa_string<>&), [...]): Add.
2010-12-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/vstring.h (operator+(__versa_string<>&&,
	const __versa_string<>&), operator+(const __versa_string<>&,
	__versa_string<>&&), operator+(__versa_string<>&&,
	__versa_string<>&&), operator+(const _CharT*,
	__versa_string<>&&), operator+(_CharT, __versa_string<>&&),
	operator+(__versa_string<>&&, const _CharT*),
	operator+(__versa_string<>&&, _CharT)): Add.
	* testsuite/ext/vstring/operators/1.cc: New.

From-SVN: r167853
2010-12-15 12:59:05 +00:00
Paolo Carlini
f67a9881a8 [multiple changes]
2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/vstring_util.h: Include bits/range_access.h.
	* testsuite/ext/vstring/range_access.cc: New test.

2010-07-27  Ed Smith-Rowland  <3dw4rd@verizon.net>

	* include/bits/range_access.h: New.
	* include/Makefile.in: Add bits/range_access.h.
	* include/Makefile.am: Regenerate.
	* include/std/array: Include bits/range_access.h.
	* include/std/deque: Ditto.
	* include/std/forward_list: Ditto.
	* include/std/iterator: Ditto.
	* include/std/list: Ditto.
	* include/std/map: Ditto.
	* include/std/regex: Ditto.
	* include/std/set: Ditto.
	* include/std/string: Ditto.
	* include/std/unordered_map: Ditto.
	* include/std/unordered_set: Ditto.
	* include/std/vector: Ditto.
	* include/std/valarray: Add begin() and end().
	* libsupc++/initializer_list: Ditto.
	* include/tr1_impl/utility: Add begin() and end().
	* include/std/tuple: Ditto.
	* testsuite/24_iterators/headers/iterator/range_access.cc: New test.
	* testsuite/24_iterators/range_access.cc: Ditto.
	* testsuite/28_regex/range_access.cc: Ditto.
	* testsuite/18_support/initializer_list/range_access.cc: Ditto.
	* testsuite/21_strings/basic_string/range_access.cc: Ditto.
	* testsuite/26_numerics/valarray/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_map/range_access.cc: Ditto.
	* testsuite/23_containers/multimap/range_access.cc: Ditto.
	* testsuite/23_containers/set/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_multimap/range_access.cc: Ditto.
	* testsuite/23_containers/forward_list/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_set/range_access.cc: Ditto.
	* testsuite/23_containers/vector/range_access.cc: Ditto.
	* testsuite/23_containers/deque/range_access.cc: Ditto.
	* testsuite/23_containers/multiset/range_access.cc: Ditto.
	* testsuite/23_containers/list/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_multiset/range_access.cc: Ditto.
	* testsuite/23_containers/map/range_access.cc: Ditto.
	* testsuite/23_containers/array/range_access.cc: Ditto.
	* testsuite/20_util/tuple/range_access.cc: Ditto.
	* testsuite/20_util/pair/range_access.cc: Ditto.

From-SVN: r162578
2010-07-27 17:27:06 +00:00
Paolo Carlini
10154e0d52 basic_string.h (basic_string<>:: basic_string(basic_string&&), [...]): Add.
2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/basic_string.h (basic_string<>::
	basic_string(basic_string&&), operator=(basic_string&&),
	assign(basic_string&&)): Add.
	* config/abi/pre/gnu.ver: Export new symbols.
	* include/ext/vstring.h (__versa_string<>::assign(__versa_string&&)):
	Add.
	(operator=(__versa_string&&)): Don't call clear unnecessarily.
	* include/ext/rc_string_base.h (__rc_string_base<>::
	__rc_string_base(__rc_string_base&&)): Simplify a tad.
	* testsuite/21_strings/basic_string/cons/char/moveable.cc: New.
	* testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
	* testsuite/ext/vstring/assign/move_assign.cc: Likewise.
	* testsuite/21_strings/basic_string/assign/char/move_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/assign/wchar_t/move_assign.cc:
	Likewise.

From-SVN: r155788
2010-01-10 13:38:47 +00:00
Paolo Carlini
0462fd5e01 set.h: Revert last change, per DR 1204 [Ready]; mention the latter in comment.
2010-01-09  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/set.h: Revert last change, per DR 1204 [Ready];
	mention the latter in comment.
	* include/debug/unordered_map: Likewise.
 	* include/debug/multiset.h: Likewise.
 	* include/debug/vector: Likewise.
	* include/debug/unordered_set: Likewise.
	* include/debug/deque: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/list: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/tr1_impl/unordered_map: Likewise.
	* include/tr1_impl/unordered_set: Likewise.
	* include/profile/set.h: Likewise.
	* include/profile/unordered_map: Likewise.
	* include/profile/multiset.h: Likewise.
	* include/profile/unordered_set: Likewise.
	* include/profile/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/map.h: Likewise.
	* include/profile/list: Likewise.
	* include/profile/multimap.h: Likewise.
	* include/ext/vstring.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.

	* include/bits/forward_list.h: Remove pre-existing check.
	* include/ext/vstring.h: Likewise.

	* testsuite/ext/vstring/cons/self_move_assign.cc: Remove.
	* testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
	Likewise.
	* testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/cons/
	self_move_assign.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/self_move_assign.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
	Likewise.
 	* testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/
	self_move_assign.cc: Likewise.
	* testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.

	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line numbers.
 	* 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/forward_list/requirements/dr438/
	assign_neg.cc: Likewise.
	* 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/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.

From-SVN: r155756
2010-01-09 11:16:42 +00:00
Paolo Carlini
6b592ab357 set.h: Protect move assignment operator vs self assignment.
2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/set.h: Protect move assignment operator vs self
	assignment.
	* include/debug/unordered_map: Likewise.
 	* include/debug/multiset.h: Likewise.
 	* include/debug/vector: Likewise.
	* include/debug/unordered_set: Likewise.
	* include/debug/deque: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/list: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/tr1_impl/unordered_map: Likewise.
	* include/tr1_impl/unordered_set: Likewise.
	* include/profile/set.h: Likewise.
	* include/profile/unordered_map: Likewise.
	* include/profile/multiset.h: Likewise.
	* include/profile/unordered_set: Likewise.
	* include/profile/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/map.h: Likewise.
	* include/profile/list: Likewise.
	* include/profile/multimap.h: Likewise.
	* include/ext/vstring.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/ext/vstring.h: Use clear(). 
	* testsuite/ext/vstring/cons/self_move_assign.cc: New.
	* testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
	Likewise.
	* testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/cons/
	self_move_assign.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/self_move_assign.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
	Likewise.
 	* testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/
	self_move_assign.cc: Likewise.
	* testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.

	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line numbers.
 	* 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.

	* testsuite/ext/vstring/moveable.cc: Move to...
	* testsuite/ext/vstring/cons/moveable.cc: ... here.
	* testsuite/23_containers/unordered_map/moveable.cc: Move to...
	* testsuite/23_containers/unordered_map/cons/moveable.cc ... here.
	* testsuite/23_containers/multimap/moveable.cc: Move to...
	* testsuite/23_containers/multimap/cons/moveable.cc: ... here.
	* testsuite/23_containers/set/moveable.cc: Move to...
	* testsuite/23_containers/set/cons/moveable.cc: ... here.
	* testsuite/23_containers/unordered_multimap/moveable.cc: Move to...
	* testsuite/23_containers/unordered_multimap/cons/moveable.cc:
	... here.
	* testsuite/23_containers/forward_list/moveable.cc: Move to...
	* testsuite/23_containers/forward_list/cons/moveable.cc: ... here.
	* testsuite/23_containers/unordered_set/moveable.cc Move to...
	* testsuite/23_containers/unordered_set/moveable.cc: ... here.
	* testsuite/23_containers/vector/cons/moveable.cc Move to...
	* testsuite/23_containers/vector/cons/moveable2.cc: ... this.
	* testsuite/23_containers/deque/cons/moveable.cc Move to...
	* testsuite/23_containers/deque/cons/moveable2.cc: ... this.
	* testsuite/23_containers/multiset/moveable.cc Move to...
	* testsuite/23_containers/multiset/cons/moveable.cc: ... here.
	* testsuite/23_containers/list/moveable.h Move to...
	* testsuite/23_containers/list/cons/moveable.h: ... here.
	* testsuite/23_containers/list/moveable.cc Move to...
	* testsuite/23_containers/list/cons/moveable.cc: ... here.
	* testsuite/23_containers/unordered_multiset/moveable.cc Move to...
	* testsuite/23_containers/unordered_multiset/cons/moveable.cc:
	... here.
	* testsuite/23_containers/map/moveable.cc Move to...
	* testsuite/23_containers/map/cons/moveable.cc: ... here.
	* testsuite/23_containers/vector/moveable.cc: Move to...
	* testsuite/23_containers/vector/cons/moveable.cc: ... here.
	* testsuite/23_containers/deque/moveable.cc: Move to...
	* testsuite/23_containers/deque/cons/moveable.cc: ... here.

From-SVN: r155754
2010-01-09 02:49:53 +00:00
Paolo Carlini
79667f82ad re PR libstdc++/42573 ([C++0x] shrink_to_fit() missing)
2010-01-08  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42573
	* include/bits/allocator.h (struct __shrink_to_fit): Add.
	* include/bits/stl_deque.h (deque<>::shrink_to_fit): Add.
	* include/bits/stl_vector.h (vector<>::shrink_to_fit): Likewise.
	* include/bits/stl_bvector.h (vector<bool>::shrink_to_fit): Likewise.
	* include/bits/basic_string.h (basic_string<>::shrink_to_fit):
	Likewise.
	* include/ext/vstring.h (__versa_string<>::shrink_to_fit): Likewise.
	* include/debug/deque: Add corresponding using declaration.
	* include/debug/vector: Likewise.
	* include/debug/string: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/vector: Likewise.
	* config/abi/pre/gnu.ver: Export new symbols.
	* testsuite/23_containers/deque/capacity/shrink_to_fit.cc: New.
	* testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
	Likewise.
	* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* 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/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* 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.

From-SVN: r155733
2010-01-08 13:01:24 +00:00
Paolo Carlini
6ab94513d5 2010-01-01 Paolo Carlini <paolo.carlini@oracle.com>
Revert last change, reinstantiate basic_string and vstring tests.

From-SVN: r155547
2010-01-01 11:27:50 +00:00
Paolo Carlini
c2744d090c propagation_consistent.cc: Remove, cannot instantiate basic_string for non-PODs (21/1).
2010-01-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/requirements/exception/
	propagation_consistent.cc: Remove, cannot instantiate basic_string
	for non-PODs (21/1).
	* testsuite/21_strings/basic_string/requirements/exception/
	basic.cc: Likewise.
	* testsuite/21_strings/basic_string/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/ext/vstring/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/ext/vstring/requirements/exception/basic.cc:
	Likewise.
	* testsuite/ext/vstring/requirements/exception/
	generation_prohibited.cc: Likewise.

From-SVN: r155546
2010-01-01 10:20:53 +00:00
Benjamin Kosnik
3c0f2830ac PR libstdc++/21772 part 3
2009-12-31  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21772 part 3
	* include/ext/throw_allocator.h: Add _GLIBCXX_IS_AGGREGATE.
	* testsuite/util/testsuite_container_traits.h (traits<std::map>):
	Add has_insert.
	(traits<std::multimap>): Add has_insert.
	(traits<std::multiset>): Add has_size_type_constructor.
	* testsuite/23_containers/array/requirements/exception/
	generation_prohibited.cc: New.
	* testsuite/21_strings/basic_string/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/ext/vstring/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/unordered_map/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/multimap/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/set/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/unordered_multimap/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/forward_list/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/unordered_set/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/vector/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/deque/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/multiset/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/unordered_multiset/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.
	* testsuite/23_containers/map/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.

From-SVN: r155545
2010-01-01 03:38:58 +00:00
Benjamin Kosnik
439a0f5a2a basic_string.h (basic_string): Add cbegin(), cend(), crbegin(), crend() in C++0x mode.
2009-08-25  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/basic_string.h (basic_string): Add cbegin(),
	cend(), crbegin(), crend() in C++0x mode.
	* config/abi/pre/gnu.ver: Add exports.

	* testsuite/util/testsuite_containers.h: New.
	* testsuite/util/testsuite_container_traits.h: New.
	* testsuite/21_strings/basic_string/requirements/citerators.cc: New.
	* testsuite/21_strings/basic_string/requirements/typedefs.cc: New.
	* testsuite/ext/vstring/requirements/citerators.cc: Edit.
	* testsuite/ext/vstring/requirements/typedefs.cc: New.
	* testsuite/23_containers/unordered_map/requirements/
	cliterators.cc: Edit.
	* testsuite/23_containers/unordered_map/requirements/
	citerators.cc: Edit.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/2.cc: New.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/3.cc: New.
	* testsuite/23_containers/unordered_map/requirements/typedefs.cc: Edit.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation.cc: Move to nested directory.
	* testsuite/23_containers/queue/requirements/typedefs.cc: New.
	* testsuite/23_containers/priority_queue/requirements/typedefs.cc: New.
	* testsuite/23_containers/multimap/requirements/citerators.cc: Edit.
	* testsuite/23_containers/multimap/requirements/typedefs.cc: New.
	* testsuite/23_containers/set/requirements/citerators.cc: Edit.
	* testsuite/23_containers/set/requirements/typedefs.cc: New.
	* testsuite/23_containers/unordered_multimap/requirements/
	cliterators.cc: Edit.
	* testsuite/23_containers/unordered_multimap/requirements/
	citerators.cc: Edit.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/2.cc: Edit.: New.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/3.cc: New.
	* testsuite/23_containers/unordered_multimap/requirements/
	typedefs.cc: Edit.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation.cc: Move to nested.
	* testsuite/23_containers/forward_list/requirements/citerators.cc: New.
	* testsuite/23_containers/forward_list/requirements/1.cc: Remove.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: New.
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: New.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: New.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: New.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor.cc: New.
	* testsuite/23_containers/forward_list/requirements/typedefs.cc: New.
	* testsuite/23_containers/unordered_set/requirements/
	cliterators.cc: Edit.
	* testsuite/23_containers/unordered_set/requirements/
	citerators.cc: Edit.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/2.cc: New.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/3.cc: New.
	* testsuite/23_containers/unordered_set/requirements/typedefs.cc: Edit.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation.cc: Move to nested.
	* testsuite/23_containers/vector/requirements/citerators.cc: Edit.
	* testsuite/23_containers/vector/requirements/dr438/bool/
	constructor.cc: Move.
	* testsuite/23_containers/vector/requirements/typedefs.cc: New.
	* testsuite/23_containers/vector/bool/requirements/citerators.cc: Edit.
	* testsuite/23_containers/vector/bool/requirements/dr438/
	constructor.cc: New.
	* testsuite/23_containers/deque/requirements/citerators.cc: Edit.
	* testsuite/23_containers/deque/requirements/typedefs.cc
	* testsuite/23_containers/stack/requirements/typedefs.cc
	* testsuite/23_containers/multiset/requirements/citerators.cc: Edit.
	* testsuite/23_containers/multiset/requirements/typedefs.cc: New.
	* testsuite/23_containers/list/requirements/citerators.cc: Edit.
	* testsuite/23_containers/list/requirements/typedefs.cc: New.
	* testsuite/23_containers/unordered_multiset/requirements/
	cliterators.cc: Edit.
	* testsuite/23_containers/unordered_multiset/requirements/
	citerators.cc: Edit.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation.cc: Move.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/2.cc: New.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/3.cc: New.
	* testsuite/23_containers/unordered_multiset/requirements/typedefs.cc
	* testsuite/23_containers/map/requirements/citerators.cc: Edit.
	* testsuite/23_containers/map/requirements/typedefs.cc: New.
	* testsuite/23_containers/array/requirements/citerators.cc: Edit.
	* testsuite/23_containers/array/requirements/explicit_instantiation.cc:
	Move.
	* testsuite/23_containers/array/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/23_containers/array/requirements/
	explicit_instantiation/2.cc: New.
	* testsuite/23_containers/array/requirements/typedefs.cc: New.

From-SVN: r151106
2009-08-25 22:29:08 +00:00
Joseph Myers
aded0ed0dd *
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoi.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stol.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stold.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoll.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoul.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoull.cc,
	testsuite/21_strings/basic_string/numeric_conversions/wchar_t/to_wstring.cc,
	testsuite/ext/vstring/element_access/char/front_back.cc,
	testsuite/ext/vstring/element_access/wchar_t/front_back.cc,
	testsuite/ext/vstring/init-list.cc,
	testsuite/ext/vstring/moveable.cc,
	testsuite/ext/vstring/requirements/citerators.cc,
	testsuite/ext/vstring/requirements/explicit_instantiation/char16_t/1.cc,
	testsuite/ext/vstring/requirements/explicit_instantiation/char32_t/1.cc:
	Use dg-require-string-conversions.

From-SVN: r149260
2009-07-05 18:59:29 +01:00
Jakub Jelinek
748086b7b2 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Mark Mitchell
92da2d44d6 28277.cc: Likewise.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/28277.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/28277-3.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/28277-4.cc:
	Likewise.
	* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc:
	Likewise.

From-SVN: r145027
2009-03-24 06:37:16 +00:00
Mark Mitchell
51d3ad7eda iterator.cc: Update copyright year(s).
* testsuite/25_algorithms/search_n/iterator.cc: Update copyright
	year(s).
	* testsuite/25_algorithms/heap/moveable.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/28277.cc
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
	Likewise.
	* testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.

From-SVN: r145026
2009-03-24 04:29:20 +00:00
Mark Mitchell
8ef20caeb4 iterator.cc: Condition iterations for simulators.
* testsuite/25_algorithms/search_n/iterator.cc: Condition
	iterations for simulators.
	* testsuite/25_algorithms/heap/moveable.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/28277.cc
	Condition stream width for simulators.
	* testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
	Likewise.
	* testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.

From-SVN: r144999
2009-03-22 16:02:44 +00:00
Paolo Carlini
5e44d591c8 PR libstdc++/33979 (partial)
2008-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/33979 (partial)
	* include/bits/postypes.h (u16streampos, u32streampos): Add.
	* include/bits/char_traits.h (char_traits<char16_t>,
	char_traits<char32_t>): Add.
	* include/bits/stringfwd.h (u16string, u32string): Add.
	* include/ext/vstring_fwd.h: Add typedefs for char16_t/char32_t.
	* testsuite/21_strings/char_traits/requirements/char32_t/typedefs.cc:
	New.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/short/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/char32_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/char16_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/
	explicit_instantiation/char/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/char16_t/typedefs.cc:
	Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/char32_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/char16_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/requirements/
	explicit_instantiation/char/1.cc: Likewise.
	* testsuite/21_strings/headers/string/types_std_c++0x.cc: Likewise.
	* testsuite/ext/vstring/requirements/explicit_instantiation/
	char32_t/1.cc: Likewise.
	* testsuite/ext/vstring/requirements/explicit_instantiation/
	char16_t/1.cc: Likewise.

From-SVN: r139339
2008-08-20 19:29:54 +00:00
Jason Merrill
988499f434 Add initializer_list support as per N2679.
* include/debug/unordered_map: Add initializer_list support.
        * include/debug/safe_association.h: Likewise.
        * include/debug/unordered_set: Likewise.
        * include/debug/vector: Likewise.
        * include/debug/deque: Likewise.
        * include/debug/map.h: Likewise.
        * include/debug/set.h: Likewise.
        * include/debug/string: Likewise.
        * include/debug/list: Likewise.
        * include/debug/multimap.h: Likewise.
        * include/tr1_impl/unordered_map: Likewise.
        * include/tr1_impl/hashtable: Likewise.
        * include/tr1_impl/unordered_set: Likewise.
        * include/tr1_impl/regex: Likewise.
        * include/std/valarray: Likewise.
        * include/std/unordered_map: Likewise.
        * include/std/unordered_set: Likewise.
        * include/bits/stl_list.h: Likewise.
        * include/bits/stl_map.h: Likewise.
        * include/bits/stl_set.h: Likewise.
        * include/bits/basic_string.h: Likewise.
        * include/bits/basic_string.tcc: Likewise.
        * include/bits/stl_multimap.h: Likewise.
        * include/bits/stl_vector.h: Likewise.
        * include/bits/stl_deque.h: Likewise.
        * include/bits/stl_multiset.h: Likewise.
        * include/bits/stl_bvector.h: Likewise.
        * include/ext/vstring.h: Likewise.
        * include/ext/rc_string_base.h: Likewise.
        * include/ext/sso_string_base.h: Likewise.
        * src/Makefile.am (w?string-inst): Build with -std=gnu++0x.
        * src/Makefile.in: Likewise.
        * config/abi/pre/gnu.ver: Add new w?string exports.
...

From-SVN: r138043
2008-07-21 15:40:39 -04:00
Paolo Carlini
7919bb2fba [multiple changes]
2007-12-10  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/25_algorithms/nth_element/2.cc: Avoid -Wall warnings.
	* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
	* testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
	* testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
	* testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
	28277-2.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
	28277-3.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
	28277-4.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/char/
	28277-3.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/char/
	28277-4.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Likewise.
	* testsuite/18_support/headers/cstddef/macros.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/
	wchar_t/28277.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/
	char/28277.cc: Likewise.
	* testsuite/26_numerics/headers/cmath/25913.cc: Likewise.
	* testsuite/ext/pb_ds/example/priority_queue_xref.cc: Likewise.
	* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
	* testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
	* testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
	* testsuite/22_locale/collate/compare/char/2.cc: Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
	* testsuite/22_locale/time_put/put/char/5.cc: Likewise.
	* testsuite/22_locale/time_put/put/char/6.cc: Likewise.
	* testsuite/22_locale/time_put/put/char/7.cc: Likewise.
	* testsuite/22_locale/time_put/put/char/8.cc: Likewise.
	* testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
	* testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
	* testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
	* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
	* testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
	* testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/num_get/get/char/1.cc: Likewise.
	* testsuite/tr1/5_numerical_facilities/random/uniform_int/
	33128.cc: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
	mutex_weaktoshared.cc: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
	default_weaktoshared.cc: Likewise.
	* testsuite/tr1/7_regular_expressions/basic_regex/assign/wchar_t/
	range.cc: Likewise.
	* testsuite/tr1/7_regular_expressions/basic_regex/assign/char/
	range.cc: Likewise.
	* testsuite/tr1/7_regular_expressions/basic_regex/ctors/wchar_t/
	range.cc: Likewise.
	* testsuite/tr1/7_regular_expressions/basic_regex/ctors/char/
	range.cc: Likewise.
	* testsuite/23_containers/multimap/operations/1.cc: Likewise.
	* testsuite/23_containers/set/operations/1.cc: Likewise.
	* testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/erase/1.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/erase/2.cc: Likewise.
	* testsuite/23_containers/multiset/operations/1.cc: Likewise.
	* testsuite/23_containers/map/operations/1.cc: Likewise.
	* testsuite/util/testsuite_hooks.cc: Likewise.
	* testsuite/util/testsuite_rvalref.h: Likewise.

2007-12-10  Jakub Jelinek  <jakub@redhat.com>

	* include/ext/throw_allocator.h (print_to_string): Change sprintf
	format to %lu and cast ref.second.{first,second} to long.
	* include/debug/safe_iterator.tcc (_M_can_advance): Add parens to
	avoid warnings.

From-SVN: r130743
2007-12-10 13:53:10 +00:00
Paolo Carlini
07d8d70f3f vstring.h (__versa_string<>::front, [...]): Add.
2007-10-16  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/vstring.h (__versa_string<>::front, 
	__versa_string<>::back): Add.
	* testsuite/ext/vstring/element_access/char/front_back.cc: New.
	* testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.

From-SVN: r129399
2007-10-17 00:46:27 +00:00
Paolo Carlini
053cc3801b vstring.h (__versa_string<>:: __versa_string(__versa_string&&), [...]): Add.
2007-10-16  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/vstring.h (__versa_string<>::
	__versa_string(__versa_string&&),
	__versa_string<>::operator=(__versa_string&&,
	swap(__versa_string<>&&, __versa_string<>&),
	swap(__versa_string<>(&, __versa_string<>&&)): Add.
	(__versa_string<>::swap(__versa_string&&)): Adjust for C++0x.
	* include/ext/sso_string_base.h
	(__sso_string_base(__sso_string_base&&)): Add.
	(__sso_string_base()): Use _Alloc_hider(_CharT*).
	* include/ext/rc_string_base.h (__rc_string_base(__rc_string_base&&)):
	Add.
	(__rc_string_base()): Use _Alloc_hider(_CharT*).
	* include/ext/vstring_util.h (_Alloc_hider::_Alloc_hider(_CharT*)):
	Add.
	* testsuite/ext/vstring/moveable.cc: Add.

	* include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Add.
	* include/bits/stl_map.h (map<>::map(map&&)): Forward to the latter.
	* include/bits/stl_set.h (set<>::set(set&&)): Likewise.
	* include/bits/stl_multimap.h (multimap<>::multimap(multimap&&)):
	Likewise.
	* include/bits/stl_multiset.h (multiset<>::multiset(multiset&&)):
	Likewise.
	* include/bits/stl_deque.h (_Deque_base<>::_Deque_base(_Deque_base&&)):
	Add.
	(deque<>::deque(deque&&)): Forward to the latter.
	* include/bits/stl_list.h (_List_base<>::_List_base(_List_base&&)):
	Add.
	(list<>::list(list&&)): Forward to the latter.
	* include/bits/stl_vector.h
	(_Vector_base<>::_Vector_base(_Vector_base&&)): Add.
	(vector<>::vector(vector&&)): Forward to the latter.
	* include/bits/stl_bvector.h
	(_Bvector_base<>::_Bvector_base(_Bvector_base&&)): Add.
	(vector<bool>::vector(vector&&)): Forward to the latter.

	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error lines.
	* 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.

From-SVN: r129381
2007-10-16 15:20:09 +00:00
Paolo Carlini
0cd50f8913 set.h (set<>::cbegin, [...]): Add.
2007-10-15  Paolo Carlini  <pcarlini@suse.de>

	* include/debug/set.h (set<>::cbegin, cend, crbegin, crend): Add.
	* include/debug/multiset.h (set<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/debug/vector (vector<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/debug/map.h (map<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/debug/deque (deque<>::cbegin, cend, crbegin, crend): 
	Likewise.
	* include/debug/list (list<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/debug/multimap.h (multimap<>::cbegin, cend, crbegin,
	crend): Likewise.
	* include/tr1_impl/array (array<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/ext/vstring.h (__versa_string<>::cbegin, cend, crbegin,
	crend): Likewise.
	* include/bits/stl_list.h (list<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/bits/stl_map.h (map<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/bits/stl_set.h (set<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/bits/stl_multimap.h (multimap<>::cbegin, cend, crbegin,
	crend): Likewise.
	* include/bits/stl_vector.h (vector<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/bits/stl_deque.h (deque<>::cbegin, cend, crbegin, crend):
	Likewise.
	* include/bits/stl_multiset.h (multiset<>::cbegin, cend, crbegin,
	crend): Likewise.
	* include/bits/stl_bvector.h (vector<bool>::cbegin, cend, crbegin,
	crend): Likewise.
	* include/tr1_impl/hashtable (_Hashtable<>::cbegin, cend): Add.	

	* testsuite/ext/vstring/requirements/citerators.cc: Add.
	* testsuite/23_containers/unordered_map/requirements/citerators.cc:
	Likewise.
	* testsuite/23_containers/multimap/requirements/citerators.cc:
	Likewise.
	* testsuite/23_containers/set/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/citerators.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/vector/bool/requirements/citerators.cc:
	Likewise.
	* testsuite/23_containers/deque/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/citerators.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/map/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/array/requirements/citerators.cc: Likewise.

	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error lines.
	* 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.

From-SVN: r129370
2007-10-15 20:51:53 +00:00
Paolo Carlini
25959e29ee DR 438, [DR].
2007-04-27  Paolo Carlini  <pcarlini@suse.de>

	DR 438, [DR].
	* include/bits/basic_string.h (_S_construct_aux(_InIterator,
	_InIterator, const _Alloc&, __true_type)): Do not cast the
	second argument.
	* include/ext/rc_string_base.h (_S_construct_aux(_Integer,
	_Integer, const _Alloc&, std::__true_type)): Likewise.
	* include/ext/sso_string_base.h (_M_construct_aux(_InIterator,
	_InIterator, std::__true_type)): Likewise.
	* include/bits/stl_deque.h (_M_initialize_dispatch(_Integer,
	_Integer, __true_type)): Cast the first argument.
	(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
	not cast the arguments.
	(_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
	Likewise.
	* include/bits/stl_list.h (_M_initialize_dispatch(_Integer,
	_Integer, __true_type)): Likewise.
	(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
	not cast both arguments.
	* include/bits/stl_bvector.h (_M_initialize_dispatch(_Integer,
	_Integer, __true_type)): Cast the first argument.
	(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
	cast the arguments.
	* include/bits/stl_vector.h (_M_initialize_dispatch(_Integer,
	_Integer, __true_type)): Cast the first argument.
	(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
	cast the arguments.
	(_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
	Likewise.
	* testsuite/21_strings/basic_string/requirements/dr438/
	constructor.cc: New.
	* testsuite/ext/vstring/requirements/dr438/constructor.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/deque/
	assign_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/deque/
	constructor.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/deque/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/deque/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/deque/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/list/
	assign_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/list/
	constructor.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/list/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/list/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/list/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/vector/
	assign_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/vector/
	constructor.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/vector/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/vector/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/vector/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/requirements/sequences/dr438/vector/
	bool/constructor.cc: Likewise.
	* docs/html/ext/howto.html: Add an entry for DR 438.

From-SVN: r124243
2007-04-27 22:59:36 +00:00
Paolo Carlini
11202768fe PR libstdc++/28277 (partial: vstring bits)
2007-04-10  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/28277 (partial: vstring bits)
	* include/bits/ostream_insert.h: New.
	* include/Makefile.am: Add.
	* include/ext/vstring.h (operator<<(basic_ostream<>&,
	const __versa_string<>&): Forward to __ostream_insert.
	* include/bits/basic_string.h (operator<<(basic_ostream<>&,
	const string<>&)): Likewise.
	* include/std/ostream (operator<<(basic_ostream<>&, _CharT),
	operator<<(basic_ostream<char,>&, char), operator<<(basic_ostream<>&,
	const _CharT*), operator<<(basic_ostream<char,>&, const char*)):
	Likewise.
	* include/ext/vstring.tcc (operator<<(basic_ostream<>&,
	const __versa_string<>&)): Remove.
	(class basic_ostream): Remove friend declarations.
	(basic_ostream<>::_M_write(char_type, streamsize),
	_M_insert(const char_type*, streamsize)): Remove.
	* include/bits/ostream.tcc (_M_insert(const char_type*, streamsize)):
	Remove definition.
	(operator<<(basic_ostream<>&, const char*)): Use __ostream_insert.
	* config/abi/pre/gnu.ver: Adjust.
	* src/ostream-inst.cc: Add __ostream_insert instantiations.
	* include/bits/locale_facets.h (__pad<>::_S_pad): Remove __num
	parameter.
	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Adjust.
	(num_put<>::_M_pad(_CharT, streamsize, ios_base&, _CharT*,
	const _CharT*, int&)): Likewise.
	* include/Makefile.in: Rebuild.
	* testsuite/ext/vstring/inserters_extractors/char/28277.cc: New.
	* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: New.

	* include/ext/vstring_util.h: Do not include the whole <locale>.
	* include/ext/vstring.tcc (operator>>(basic_istream<>&,
	__versa_string<>&, getline(basic_istream<>&, __versa_string<>&,
	_CharT)): Tweak to refer to ios_base as a base of istream; do not
	refer to non-standard types of istream.
	* include/bits/istream.tcc (operator>>(basic_istream<>&, _CharT*),
	ws(basic_istream<>&)): Do not refer to non-standard types of istream.
	* include/std/bitset (operator>>(std::basic_istream<>&, bitset<>&)):
	Avoid using basic_streambuf<>*.

	* include/bits/istream.tcc (operator>>(basic_istream<>&,
	basic_string<>&), getline(basic_istream<>&, basic_string<>&, _CharT)):
	Move...
	* include/bits/basic_string.tcc: ... here; tweak to refer to ios_base
	as a base of istream; do not refer to non-standard types of istream.
	* include/std/string: Tweak includes.

	* include/ext/type_traits.h (__is_null_pointer): Add.
	* include/ext/rc_string_base.h: Use it.
	* include/ext/sso_string_base.h: Likewise.
	* include/bits/basic_string.tcc (__is_null_pointer): Remove, use
	the above.
	* include/ext/vstring_util.h (__vstring_utility<>::_S_is_null_pointer):
	Remove.

From-SVN: r123692
2007-04-10 10:38:50 +00:00
Benjamin Kosnik
a024740df4 [multiple changes]
2007-02-20  Benjamin Kosnik  <bkoz@redhat.com>

	Revamp library API testing.
	Added:
	* 17_intro/headers
	* 17_intro/headers/all_assert_neg.cc
	* 17_intro/headers/all_c++200x_compatibility.cc
	* 17_intro/headers/all.cc
	* 17_intro/headers/c++1998
	* 17_intro/headers/c++1998/all.cc
	* 17_intro/headers/c++1998/all_multiple_inclusion.cc
	* 17_intro/headers/c++1998/c++_for_c.tar
	* 17_intro/headers/c++1998/c++.tar
	* 17_intro/using_namespace_std.cc
	* 18_support/headers
	* 18_support/headers/cfloat
	* 18_support/headers/cfloat/values.cc
	* 18_support/headers/climits
	* 18_support/headers/climits/values.cc
	* 18_support/headers/csetjmp
	* 18_support/headers/csetjmp/functions_std.cc
	* 18_support/headers/csetjmp/macros.cc
	* 18_support/headers/csetjmp/types_std.cc
	* 18_support/headers/csignal
	* 18_support/headers/csignal/functions_std.cc
	* 18_support/headers/csignal/macros.cc
	* 18_support/headers/csignal/types_std.cc
	* 18_support/headers/cstdarg
	* 18_support/headers/cstdarg/macros.cc
	* 18_support/headers/cstdarg/types_std.cc
	* 18_support/headers/cstddef
	* 18_support/headers/cstddef/macros.cc
	* 18_support/headers/cstddef/types_std.cc
	* 18_support/headers/cstdlib
	* 18_support/headers/cstdlib/functions_std.cc
	* 18_support/headers/cstdlib/macros.cc
	* 18_support/headers/ctime
	* 18_support/headers/ctime/functions_std.cc
	* 18_support/headers/ctime/macros.cc
	* 18_support/headers/ctime/types_std.cc
	* 18_support/headers/exception
	* 18_support/headers/exception/synopsis.cc
	* 18_support/headers/exception/types_std.cc
	* 18_support/headers/limits
	* 18_support/headers/limits/synopsis.cc
	* 18_support/headers/new
	* 18_support/headers/new/synopsis.cc
	* 18_support/headers/new/types_std.cc
	* 18_support/headers/typeinfo
	* 18_support/headers/typeinfo/synopsis.cc
	* 18_support/headers/typeinfo/types_std.cc
	* 18_support/numeric_limits/is_signed.cc
	* 18_support/numeric_limits/requirements
	* 18_support/numeric_limits/requirements/explicit_instantiation
	* 18_support/numeric_limits/requirements/explicit_instantiation/1.cc
	* 18_support/numeric_limits/specialization_default_values.cc
	* 19_diagnostics/headers
	* 19_diagnostics/headers/cassert
	* 19_diagnostics/headers/cassert/macros.cc
	* 19_diagnostics/headers/cerrno
	* 19_diagnostics/headers/cerrno/macros.cc
	* 19_diagnostics/headers/stdexcept
	* 19_diagnostics/headers/stdexcept/synopsis.cc
	* 19_diagnostics/headers/stdexcept/types_std.cc
	* 20_util/headers
	* 20_util/headers/cstdlib
	* 20_util/headers/cstdlib/functions_std.cc
	* 20_util/headers/cstring
	* 20_util/headers/cstring/functions_std.cc
	* 20_util/headers/cstring/macros.cc
	* 20_util/headers/cstring/types_std.cc
	* 20_util/headers/ctime
	* 20_util/headers/ctime/functions_std.cc
	* 20_util/headers/ctime/macros.cc
	* 20_util/headers/ctime/types_std.cc
	* 20_util/headers/functional
	* 20_util/headers/functional/synopsis.cc
	* 20_util/headers/memory
	* 20_util/headers/memory/synopsis.cc
	* 20_util/headers/utility
	* 20_util/headers/utility/synopsis.cc
	* 20_util/headers/utility/using_namespace_std_rel_ops.cc
	* 20_util/memory/allocator/requirements
	* 20_util/memory/allocator/requirements/explicit_instantiation
	* 20_util/memory/allocator/requirements/explicit_instantiation/1.cc
	* 20_util/memory/auto_ptr/requirements
	* 20_util/memory/auto_ptr/requirements/explicit_instantiation
	* 20_util/memory/auto_ptr/requirements/explicit_instantiation/1.cc
	* 20_util/memory/raw_storage_iterator
	* 20_util/memory/raw_storage_iterator/requirements
	* 20_util/memory/raw_storage_iterator/requirements/base_classes.cc
	* 20_util/memory/raw_storage_iterator/requirements/
	explicit_instantiation
	* 20_util/memory/raw_storage_iterator/requirements/
	explicit_instantiation/1.cc
	* 20_util/memory/raw_storage_iterator/requirements/typedefs.cc
	* 20_util/utility/pair/requirements
	* 20_util/utility/pair/requirements/explicit_instantiation
	* 20_util/utility/pair/requirements/explicit_instantiation/1.cc
	* 21_strings/basic_string/requirements
	* 21_strings/basic_string/requirements/explicit_instantiation
	* 21_strings/basic_string/requirements/explicit_instantiation/1.cc
	* 21_strings/basic_string/requirements/explicit_instantiation/debug.cc
	* 21_strings/headers
	* 21_strings/headers/cctype
	* 21_strings/headers/cctype/functions_std.cc
	* 21_strings/headers/cstdlib
	* 21_strings/headers/cstdlib/functions_std.cc
	* 21_strings/headers/cstdlib/macros.cc
	* 21_strings/headers/cstring
	* 21_strings/headers/cstring/functions_std.cc
	* 21_strings/headers/cstring/macros.cc
	* 21_strings/headers/cstring/types_std.cc
	* 21_strings/headers/cwchar
	* 21_strings/headers/cwchar/functions_std.cc
	* 21_strings/headers/cwchar/macros.cc
	* 21_strings/headers/cwchar/types_std.cc
	* 21_strings/headers/cwctype
	* 21_strings/headers/cwctype/functions_std.cc
	* 21_strings/headers/cwctype/macros.cc
	* 21_strings/headers/cwctype/types_std.cc
	* 21_strings/headers/string
	* 21_strings/headers/string/synopsis.cc
	* 21_strings/headers/string/types_std.cc
	* 22_locale/codecvt_byname/requirements
	* 22_locale/codecvt_byname/requirements/base_classes.cc
	* 22_locale/codecvt_byname/requirements/explicit_instantiation.cc
	* 22_locale/codecvt_byname/requirements/typedefs.cc
	* 22_locale/codecvt/requirements
	* 22_locale/codecvt/requirements/base_classes.cc
	* 22_locale/codecvt/requirements/explicit_instantiation.cc
	* 22_locale/codecvt/requirements/typedefs.cc
	* 22_locale/collate_byname/requirements
	* 22_locale/collate_byname/requirements/base_classes.cc
	* 22_locale/collate_byname/requirements/explicit_instantiation.cc
	* 22_locale/collate_byname/requirements/typedefs.cc
	* 22_locale/collate/requirements
	* 22_locale/collate/requirements/base_classes.cc
	* 22_locale/collate/requirements/explicit_instantiation.cc
	* 22_locale/collate/requirements/typedefs.cc
	* 22_locale/ctype_base/mask.cc
	* 22_locale/ctype/requirements
	* 22_locale/ctype/requirements/base_classes.cc
	* 22_locale/ctype/requirements/explicit_instantiation.cc
	* 22_locale/ctype/requirements/typedefs.cc
	* 22_locale/headers
	* 22_locale/headers/clocale
	* 22_locale/headers/clocale/functions_std.cc
	* 22_locale/headers/clocale/macros.cc
	* 22_locale/headers/clocale/types_std.cc
	* 22_locale/headers/locale
	* 22_locale/headers/locale/synopsis.cc
	* 22_locale/headers/locale/types_std.cc
	* 22_locale/messages_byname/requirements
	* 22_locale/messages_byname/requirements/base_classes.cc
	* 22_locale/messages_byname/requirements/explicit_instantiation.cc
	* 22_locale/messages_byname/requirements/typedefs.cc
	* 22_locale/messages/requirements
	* 22_locale/messages/requirements/base_classes.cc
	* 22_locale/messages/requirements/explicit_instantiation.cc
	* 22_locale/messages/requirements/typedefs.cc
	* 22_locale/money_get/cons
	* 22_locale/money_get/cons/3.cc
	* 22_locale/money_get/requirements
	* 22_locale/money_get/requirements/base_classes.cc
	* 22_locale/money_get/requirements/explicit_instantiations.cc
	* 22_locale/money_get/requirements/typedefs.cc
	* 22_locale/moneypunct_byname/requirements
	* 22_locale/moneypunct_byname/requirements/base_classes.cc
	* 22_locale/moneypunct_byname/requirements/explicit_instantiation.cc
	* 22_locale/moneypunct_byname/requirements/typedefs.cc
	* 22_locale/moneypunct/requirements
	* 22_locale/moneypunct/requirements/false
	* 22_locale/moneypunct/requirements/false/base_classes.cc
	* 22_locale/moneypunct/requirements/false/explicit_instantiation.cc
	* 22_locale/moneypunct/requirements/false/intl.cc
	* 22_locale/moneypunct/requirements/false/typedefs.cc
	* 22_locale/moneypunct/requirements/true
	* 22_locale/moneypunct/requirements/true/base_classes.cc
	* 22_locale/moneypunct/requirements/true/explicit_instantiation.cc
	* 22_locale/moneypunct/requirements/true/intl.cc
	* 22_locale/moneypunct/requirements/true/typedefs.cc
	* 22_locale/money_put/cons
	* 22_locale/money_put/cons/3.cc
	* 22_locale/money_put/requirements
	* 22_locale/money_put/requirements/base_classes.cc
	* 22_locale/money_put/requirements/explicit_instantiation.cc
	* 22_locale/money_put/requirements/typedefs.cc
	* 22_locale/num_get/cons
	* 22_locale/num_get/cons/3.cc
	* 22_locale/num_get/requirements
	* 22_locale/num_get/requirements/base_classes.cc
	* 22_locale/num_get/requirements/explicit_instantiation.cc
	* 22_locale/num_get/requirements/typedefs.cc
	* 22_locale/numpunct_byname/requirements
	* 22_locale/numpunct_byname/requirements/base_classes.cc
	* 22_locale/numpunct_byname/requirements/explicit_instantiations.cc
	* 22_locale/numpunct_byname/requirements/typedefs.cc
	* 22_locale/numpunct/requirements
	* 22_locale/numpunct/requirements/base_classes.cc
	* 22_locale/numpunct/requirements/explicit_instantiations.cc
	* 22_locale/numpunct/requirements/typedefs.cc
	* 22_locale/num_put/cons
	* 22_locale/num_put/cons/3.cc
	* 22_locale/num_put/requirements
	* 22_locale/num_put/requirements/base_classes.cc
	* 22_locale/num_put/requirements/explicit_instantiations.cc
	* 22_locale/num_put/requirements/typedefs.cc
	* 22_locale/time_get/requirements
	* 22_locale/time_get/requirements/base_classes.cc
	* 22_locale/time_get/requirements/explicit_instantiations.cc
	* 22_locale/time_get/requirements/typedefs.cc
	* 22_locale/time_put/requirements
	* 22_locale/time_put/requirements/base_classes.cc
	* 22_locale/time_put/requirements/explicit_instantiations.cc
	* 22_locale/time_put/requirements/typedefs.cc
	* 23_containers/bitset/requirements
	* 23_containers/bitset/requirements/explicit_instantiation
	* 23_containers/bitset/requirements/explicit_instantiation/1.cc
	* 23_containers/deque/requirements
	* 23_containers/deque/requirements/explicit_instantiation
	* 23_containers/deque/requirements/partial_specialization
	* 23_containers/deque/requirements/partial_specialization/1.cc
	* 23_containers/headers
	* 23_containers/headers/bitset
	* 23_containers/headers/bitset/synopsis.cc
	* 23_containers/headers/deque
	* 23_containers/headers/deque/synopsis.cc
	* 23_containers/headers/list
	* 23_containers/headers/list/synopsis.cc
	* 23_containers/headers/map
	* 23_containers/headers/map/synopsis.cc
	* 23_containers/headers/queue
	* 23_containers/headers/queue/synopsis.cc
	* 23_containers/headers/set
	* 23_containers/headers/set/synopsis.cc
	* 23_containers/headers/stack
	* 23_containers/headers/stack/synopsis.cc
	* 23_containers/headers/vector
	* 23_containers/headers/vector/synopsis.cc
	* 23_containers/list/requirements
	* 23_containers/list/requirements/explicit_instantiation
	* 23_containers/list/requirements/partial_specialization
	* 23_containers/list/requirements/partial_specialization/1.cc
	* 23_containers/map/requirements
	* 23_containers/map/requirements/explicit_instantiation
	* 23_containers/map/requirements/partial_specialization
	* 23_containers/map/requirements/partial_specialization/1.cc
	* 23_containers/multimap/requirements
	* 23_containers/multimap/requirements/explicit_instantiation
	* 23_containers/multimap/requirements/partial_specialization
	* 23_containers/multimap/requirements/partial_specialization/1.cc
	* 23_containers/multiset/requirements
	* 23_containers/multiset/requirements/explicit_instantiation
	* 23_containers/multiset/requirements/partial_specialization
	* 23_containers/multiset/requirements/partial_specialization/1.cc
	* 23_containers/priority_queue/requirements
	* 23_containers/priority_queue/requirements/explicit_instantiation
	* 23_containers/priority_queue/requirements/explicit_instantiation/1.cc
	* 23_containers/queue/requirements
	* 23_containers/queue/requirements/explicit_instantiation
	* 23_containers/queue/requirements/explicit_instantiation/1.cc
	* 23_containers/set/requirements
	* 23_containers/set/requirements/explicit_instantiation
	* 23_containers/set/requirements/partial_specialization
	* 23_containers/set/requirements/partial_specialization/1.cc
	* 23_containers/stack/requirements
	* 23_containers/stack/requirements/explicit_instantiation
	* 23_containers/stack/requirements/explicit_instantiation/1.cc
	* 23_containers/vector/requirements
	* 23_containers/vector/requirements/explicit_instantiation
	* 23_containers/vector/requirements/partial_specialization
	* 23_containers/vector/requirements/partial_specialization/1.cc
	* 24_iterators/back_insert_iterator
	* 24_iterators/back_insert_iterator/2.cc
	* 24_iterators/back_insert_iterator/requirements
	* 24_iterators/back_insert_iterator/requirements/base_classes.cc
	* 24_iterators/back_insert_iterator/requirements/container.cc
	* 24_iterators/back_insert_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/back_insert_iterator/requirements/typedefs.cc
	* 24_iterators/front_insert_iterator
	* 24_iterators/front_insert_iterator/2.cc
	* 24_iterators/front_insert_iterator/requirements
	* 24_iterators/front_insert_iterator/requirements/base_classes.cc
	* 24_iterators/front_insert_iterator/requirements/container.cc
	* 24_iterators/front_insert_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/front_insert_iterator/requirements/typedefs.cc
	* 24_iterators/headers
	* 24_iterators/headers/iterator
	* 24_iterators/headers/iterator/synopsis.cc
	* 24_iterators/headers/iterator/types_std.cc
	* 24_iterators/insert_iterator
	* 24_iterators/insert_iterator/2.cc
	* 24_iterators/insert_iterator/requirements
	* 24_iterators/insert_iterator/requirements/base_classes.cc
	* 24_iterators/insert_iterator/requirements/container.cc
	* 24_iterators/insert_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/insert_iterator/requirements/typedefs.cc
	* 24_iterators/istreambuf_iterator/requirements
	* 24_iterators/istreambuf_iterator/requirements/base_classes.cc
	* 24_iterators/istreambuf_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/istreambuf_iterator/requirements/typedefs.cc
	* 24_iterators/istream_iterator
	* 24_iterators/istream_iterator/2.cc
	* 24_iterators/istream_iterator/requirements
	* 24_iterators/istream_iterator/requirements/base_classes.cc
	* 24_iterators/istream_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/istream_iterator/requirements/typedefs.cc
	* 24_iterators/ostreambuf_iterator/requirements
	* 24_iterators/ostreambuf_iterator/requirements/base_classes.cc
	* 24_iterators/ostreambuf_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/ostreambuf_iterator/requirements/typedefs.cc
	* 24_iterators/ostream_iterator
	* 24_iterators/ostream_iterator/requirements
	* 24_iterators/ostream_iterator/requirements/base_classes.cc
	* 24_iterators/ostream_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/ostream_iterator/requirements/typedefs.cc
	* 24_iterators/random_access_iterator
	* 24_iterators/random_access_iterator/26020.cc
	* 24_iterators/random_access_iterator/string_vector_iterators.cc
	* 24_iterators/reverse_iterator/requirements
	* 24_iterators/reverse_iterator/requirements/base_classes.cc
	* 24_iterators/reverse_iterator/requirements/current.cc
	* 24_iterators/reverse_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/reverse_iterator/requirements/typedefs.cc
	* 25_algorithms/headers
	* 25_algorithms/headers/algorithm
	* 25_algorithms/headers/algorithm/synopsis.cc
	* 25_algorithms/headers/cstdlib
	* 25_algorithms/headers/cstdlib/functions_std.cc
	* 26_numerics/headers
	* 26_numerics/headers/cmath
	* 26_numerics/headers/cmath/19322.cc
	* 26_numerics/headers/cmath/c99_classification_macros_c.cc
	* 26_numerics/headers/cmath/c99_classification_macros_c++.cc
	* 26_numerics/headers/cmath/c_math.cc
	* 26_numerics/headers/cmath/c_math_dynamic.cc
	* 26_numerics/headers/cmath/fabs_inline.cc
	* 26_numerics/headers/cmath/functions_std.cc
	* 26_numerics/headers/cmath/macros.cc
	* 26_numerics/headers/cmath/overloads.cc
	* 26_numerics/headers/cmath/powi.cc
	* 26_numerics/headers/complex
	* 26_numerics/headers/complex/synopsis.cc
	* 26_numerics/headers/cstdlib
	* 26_numerics/headers/cstdlib/13943.cc
	* 26_numerics/headers/cstdlib/2190.cc
	* 26_numerics/headers/cstdlib/functions_std.cc
	* 26_numerics/headers/cstdlib/macros.cc
	* 26_numerics/headers/cstdlib/types_std.cc
	* 26_numerics/headers/numeric
	* 26_numerics/headers/numeric/synopsis.cc
	* 26_numerics/headers/valarray
	* 26_numerics/headers/valarray/synopsis.cc
	* 26_numerics/headers/valarray/types_std.cc
	* 26_numerics/numeric_arrays
	* 26_numerics/numeric_operations
	* 27_io/basic_filebuf/cons/2020.cc
	* 27_io/basic_filebuf/requirements
	* 27_io/basic_filebuf/requirements/base_classes.cc
	* 27_io/basic_filebuf/requirements/explicit_instantiation.cc
	* 27_io/basic_filebuf/requirements/typedefs.cc
	* 27_io/basic_fstream/cons
	* 27_io/basic_fstream/cons/3.cc
	* 27_io/basic_fstream/requirements
	* 27_io/basic_fstream/requirements/base_classes.cc
	* 27_io/basic_fstream/requirements/explicit_instantiation.cc
	* 27_io/basic_fstream/requirements/typedefs.cc
	* 27_io/basic_ifstream/cons/2020.cc
	* 27_io/basic_ifstream/requirements
	* 27_io/basic_ifstream/requirements/base_classes.cc
	* 27_io/basic_ifstream/requirements/explicit_instantiation.cc
	* 27_io/basic_ifstream/requirements/typedefs.cc
	* 27_io/basic_ios/cons/2020.cc
	* 27_io/basic_ios/requirements
	* 27_io/basic_ios/requirements/base_classes.cc
	* 27_io/basic_ios/requirements/explicit_instantiation.cc
	* 27_io/basic_ios/requirements/typedefs.cc
	* 27_io/basic_iostream/cons
	* 27_io/basic_iostream/cons/2020.cc
	* 27_io/basic_iostream/requirements
	* 27_io/basic_iostream/requirements/base_classes.cc
	* 27_io/basic_iostream/requirements/explicit_instantiation.cc
	* 27_io/basic_iostream/requirements/typedefs.cc
	* 27_io/basic_istream/cons
	* 27_io/basic_istream/cons/3.cc
	* 27_io/basic_istream/requirements
	* 27_io/basic_istream/requirements/base_classes.cc
	* 27_io/basic_istream/requirements/explicit_instantiation.cc
	* 27_io/basic_istream/requirements/typedefs.cc
	* 27_io/basic_istringstream/cons
	* 27_io/basic_istringstream/cons/2020.cc
	* 27_io/basic_istringstream/requirements
	* 27_io/basic_istringstream/requirements/base_classes.cc
	* 27_io/basic_istringstream/requirements/explicit_instantiation.cc
	* 27_io/basic_istringstream/requirements/typedefs.cc
	* 27_io/basic_ofstream/cons/2020.cc
	* 27_io/basic_ofstream/requirements
	* 27_io/basic_ofstream/requirements/base_classes.cc
	* 27_io/basic_ofstream/requirements/explicit_instantiations.cc
	* 27_io/basic_ofstream/requirements/typedefs.cc
	* 27_io/basic_ostream/cons/2020.cc
	* 27_io/basic_ostream/requirements
	* 27_io/basic_ostream/requirements/base_classes.cc
	* 27_io/basic_ostream/requirements/explicit_instantiation.cc
	* 27_io/basic_ostream/requirements/typedefs.cc
	* 27_io/basic_ostringstream/cons/2020.cc
	* 27_io/basic_ostringstream/requirements
	* 27_io/basic_ostringstream/requirements/base_classes.cc
	* 27_io/basic_ostringstream/requirements/explicit_instantiation.cc
	* 27_io/basic_ostringstream/requirements/typedefs.cc
	* 27_io/basic_streambuf/cons/2020.cc
	* 27_io/basic_streambuf/requirements
	* 27_io/basic_streambuf/requirements/base_classes.cc
	* 27_io/basic_streambuf/requirements/typedefs.cc
	* 27_io/basic_stringbuf/cons/2020.cc
	* 27_io/basic_stringbuf/requirements
	* 27_io/basic_stringbuf/requirements/base_classes.cc
	* 27_io/basic_stringbuf/requirements/explicit_instantiation
	* 27_io/basic_stringbuf/requirements/explicit_instantiation/2.cc
	* 27_io/basic_stringbuf/requirements/explicit_instantiation/4.cc
	* 27_io/basic_stringbuf/requirements/typedefs.cc
	* 27_io/basic_stringstream/cons
	* 27_io/basic_stringstream/cons/2020.cc
	* 27_io/basic_stringstream/requirements
	* 27_io/basic_stringstream/requirements/base_classes.cc
	* 27_io/basic_stringstream/requirements/explicit_instantiation.cc
	* 27_io/basic_stringstream/requirements/typedefs.cc
	* 27_io/fpos/requirements
	* 27_io/fpos/requirements/explicit_instantiation.cc
	* 27_io/headers
	* 27_io/headers/cstdio
	* 27_io/headers/cstdio/functions_std.cc
	* 27_io/headers/cstdio/macros.cc
	* 27_io/headers/cstdio/types_std.cc
	* 27_io/headers/cstdlib
	* 27_io/headers/fstream
	* 27_io/headers/fstream/synopsis.cc
	* 27_io/headers/fstream/types_std.cc
	* 27_io/headers/iomanip
	* 27_io/headers/iomanip/synopsis.cc
	* 27_io/headers/ios
	* 27_io/headers/ios/synopsis.cc
	* 27_io/headers/iostream
	* 27_io/headers/iostream/synopsis.cc
	* 27_io/headers/iostream/types_std.cc
	* 27_io/headers/ios/types_std.cc
	* 27_io/headers/istream
	* 27_io/headers/istream/synopsis.cc
	* 27_io/headers/istream/types_std.cc
	* 27_io/headers/ostream
	* 27_io/headers/ostream/synopsis.cc
	* 27_io/headers/ostream/types_std.cc
	* 27_io/headers/sstream
	* 27_io/headers/sstream/synopsis.cc
	* 27_io/headers/sstream/types_std.cc
	* 27_io/headers/streambuf
	* 27_io/headers/streambuf/synopsis.cc
	* 27_io/headers/streambuf/types_std.cc
	* ext/debug_allocator/explicit_instantiation.cc
	* ext/hash_map/requirements
	* ext/hash_map/requirements/explicit_instantiation.cc
	* ext/hash_set/requirements
	* ext/hash_set/requirements/explicit_instantiation.cc
	* ext/malloc_allocator/explicit_instantiation.cc
	* ext/mt_allocator/explicit_instantiation.cc
	* ext/pool_allocator/explicit_instantiation.cc
	* ext/slist/requirements
	* ext/slist/requirements/explicit_instantiation.cc
	* ext/stdio_filebuf/requirements
	* ext/stdio_filebuf/requirements/explicit_instantiation.cc
	* ext/vstring/requirements
	* ext/vstring/requirements/explicit_instantiation
	* tr1/2_general_utilities/headers
	* tr1/2_general_utilities/headers/functional
	* tr1/2_general_utilities/headers/functional/synopsis.cc
	* tr1/2_general_utilities/headers/memory
	* tr1/2_general_utilities/headers/memory/synopsis.cc
	* tr1/2_general_utilities/headers/memory/types_std_tr1.cc
	* tr1/2_general_utilities/memory/enable_shared_from_this/requirements
	* tr1/2_general_utilities/memory/enable_shared_from_this/
	requirements/explicit_instantiation
	* tr1/2_general_utilities/memory/shared_ptr/requirements
	* tr1/2_general_utilities/memory/shared_ptr/requirements/
	explicit_instantiation
	* tr1/2_general_utilities/memory/weak_ptr/requirements
	* tr1/2_general_utilities/memory/weak_ptr/requirements/
	explicit_instantiation
	* tr1/3_function_objects/headers
	* tr1/3_function_objects/headers/functional
	* tr1/3_function_objects/headers/functional/synopsis.cc
	* tr1/3_function_objects/headers/functional/types_std_tr1.cc
	* tr1/3_function_objects/headers/functional/
	using_namespace_std_tr1_placeholders.cc
	* tr1/4_metaprogramming/headers
	* tr1/4_metaprogramming/headers/type_traits
	* tr1/4_metaprogramming/headers/type_traits/synopsis.cc
	* tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc
	* tr1/5_numerical_facilities/headers
	* tr1/5_numerical_facilities/headers/random
	* tr1/5_numerical_facilities/headers/random/synopsis.cc
	* tr1/5_numerical_facilities/headers/random/types_std_tr1.cc
	* tr1/5_numerical_facilities/random/discard_block/
	requirements/typedefs.cc
	* tr1/6_containers/array/requirements/explicit_instantiation.cc
	* tr1/6_containers/hash
	* tr1/6_containers/hash/requirements
	* tr1/6_containers/hash/requirements/base_classes.cc
	* tr1/6_containers/hash/requirements/explicit_instantiation.cc
	* tr1/6_containers/headers
	* tr1/6_containers/headers/array
	* tr1/6_containers/headers/array/synopsis.cc
	* tr1/6_containers/headers/functional
	* tr1/6_containers/headers/functional/synopsis.cc
	* tr1/6_containers/headers/tuple
	* tr1/6_containers/headers/tuple/synopsis.cc
	* tr1/6_containers/headers/tuple/types_std_tr1.cc
	* tr1/6_containers/headers/unordered_map
	* tr1/6_containers/headers/unordered_map/synopsis.cc
	* tr1/6_containers/headers/unordered_set
	* tr1/6_containers/headers/unordered_set/synopsis.cc
	* tr1/6_containers/tuple/requirements
	* tr1/6_containers/tuple/requirements/explicit_instantiation.cc
	* tr1/6_containers/unordered_map
	* tr1/6_containers/unordered_map/24064.cc
	* tr1/6_containers/unordered_map/capacity
	* tr1/6_containers/unordered_map/capacity/29134-map.cc
	* tr1/6_containers/unordered_map/erase
	* tr1/6_containers/unordered_map/erase/24061-map.cc
	* tr1/6_containers/unordered_map/find
	* tr1/6_containers/unordered_map/find/map1.cc
	* tr1/6_containers/unordered_map/insert
	* tr1/6_containers/unordered_map/insert/24061-map.cc
	* tr1/6_containers/unordered_map/insert/array_syntax.cc
	* tr1/6_containers/unordered_map/insert/map_range.cc
	* tr1/6_containers/unordered_map/insert/map_single.cc
	* tr1/6_containers/unordered_map/requirements
	* tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc
	* tr1/6_containers/unordered_map/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_map/swap
	* tr1/6_containers/unordered_map/swap/1.cc
	* tr1/6_containers/unordered_map/swap/2.cc
	* tr1/6_containers/unordered_multimap
	* tr1/6_containers/unordered_multimap/capacity
	* tr1/6_containers/unordered_multimap/capacity/29134-multimap.cc
	* tr1/6_containers/unordered_multimap/erase
	* tr1/6_containers/unordered_multimap/erase/24061-multimap.cc
	* tr1/6_containers/unordered_multimap/find
	* tr1/6_containers/unordered_multimap/find/multimap1.cc
	* tr1/6_containers/unordered_multimap/insert
	* tr1/6_containers/unordered_multimap/insert/24061-multimap.cc
	* tr1/6_containers/unordered_multimap/insert/multimap_range.cc
	* tr1/6_containers/unordered_multimap/insert/multimap_single.cc
	* tr1/6_containers/unordered_multimap/requirements
	* tr1/6_containers/unordered_multimap/requirements/
	explicit_instantiation.cc
	* tr1/6_containers/unordered_multimap/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_multimap/swap
	* tr1/6_containers/unordered_multimap/swap/1.cc
	* tr1/6_containers/unordered_multimap/swap/2.cc
	* tr1/6_containers/unordered_multiset
	* tr1/6_containers/unordered_multiset/24054.cc
	* tr1/6_containers/unordered_multiset/capacity
	* tr1/6_containers/unordered_multiset/capacity/29134-multiset.cc
	* tr1/6_containers/unordered_multiset/erase
	* tr1/6_containers/unordered_multiset/erase/24061-multiset.cc
	* tr1/6_containers/unordered_multiset/find
	* tr1/6_containers/unordered_multiset/find/multiset1.cc
	* tr1/6_containers/unordered_multiset/insert
	* tr1/6_containers/unordered_multiset/insert/24061-multiset.cc
	* tr1/6_containers/unordered_multiset/insert/multiset_range.cc
	* tr1/6_containers/unordered_multiset/insert/multiset_single.cc
	* tr1/6_containers/unordered_multiset/requirements
	* tr1/6_containers/unordered_multiset/requirements/
	explicit_instantiation.cc
	* tr1/6_containers/unordered_multiset/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_multiset/swap
	* tr1/6_containers/unordered_multiset/swap/1.cc
	* tr1/6_containers/unordered_multiset/swap/2.cc
	* tr1/6_containers/unordered_set
	* tr1/6_containers/unordered_set/23053.cc
	* tr1/6_containers/unordered_set/23465.cc
	* tr1/6_containers/unordered_set/26127.cc
	* tr1/6_containers/unordered_set/26132.cc
	* tr1/6_containers/unordered_set/capacity
	* tr1/6_containers/unordered_set/capacity/29134-set.cc
	* tr1/6_containers/unordered_set/erase
	* tr1/6_containers/unordered_set/erase/24061-set.cc
	* tr1/6_containers/unordered_set/find
	* tr1/6_containers/unordered_set/find/set1.cc
	* tr1/6_containers/unordered_set/insert
	* tr1/6_containers/unordered_set/insert/24061-set.cc
	* tr1/6_containers/unordered_set/insert/set_range.cc
	* tr1/6_containers/unordered_set/insert/set_single.cc
	* tr1/6_containers/unordered_set/requirements
	* tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc
	* tr1/6_containers/unordered_set/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_set/requirements/
	iterators_default_constructor.cc
	* tr1/6_containers/unordered_set/swap
	* tr1/6_containers/unordered_set/swap/1.cc
	* tr1/6_containers/unordered_set/swap/2.cc
	* tr1/using_namespace_std_tr1.cc

	Deleted:
	* 17_intro/header_cassert.cc
	* 17_intro/header_cerrno.cc
	* 17_intro/header_csetjmp.cc
	* 17_intro/header_cstdarg.cc
	* 17_intro/header_cstddef.cc
	* 17_intro/header_cstdio.cc
	* 17_intro/header_cstdlib.cc
	* 17_intro/header_cstring.cc
	* 17_intro/header_ctime.cc
	* 17_intro/header_cwchar.cc
	* 17_intro/header_cwctype.cc
	* 17_intro/header_fstream.cc
	* 17_intro/header_iomanip.cc
	* 17_intro/header_ios.cc
	* 17_intro/header_iosfwd.cc
	* 17_intro/header_iostream.cc
	* 17_intro/header_istream.cc
	* 17_intro/header_ostream.cc
	* 17_intro/headers.cc
	* 17_intro/headers_c++_c++0x_compat.cc
	* 17_intro/headers_c.cc
	* 17_intro/headers_c++.cc
	* 17_intro/header_sstream.cc
	* 17_intro/header_streambuf.cc
	* 17_intro/no_assert_neg.cc
	* 18_support/numeric_limits/sign.cc
	* 18_support/numeric_limits/specialization.cc
	* 20_util/memory/raw_storage_iterator.cc
	* 21_strings/basic_string/1.cc
	* 21_strings/basic_string/2.cc
	* 22_locale/codecvt/1.cc
	* 22_locale/codecvt/2.cc
	* 22_locale/codecvt_byname/1.cc
	* 22_locale/collate/1.cc
	* 22_locale/collate/2.cc
	* 22_locale/collate_byname/1.cc
	* 22_locale/ctype/1.cc
	* 22_locale/ctype_base/1.cc
	* 22_locale/messages/1.cc
	* 22_locale/messages/2.cc
	* 22_locale/messages_byname/1.cc
	* 22_locale/money_get/1.cc
	* 22_locale/money_get/2.cc
	* 22_locale/money_get/3.cc
	* 22_locale/moneypunct/1.cc
	* 22_locale/moneypunct/2.cc
	* 22_locale/moneypunct/3.cc
	* 22_locale/moneypunct_byname/1.cc
	* 22_locale/money_put/1.cc
	* 22_locale/money_put/2.cc
	* 22_locale/money_put/3.cc
	* 22_locale/num_get/1.cc
	* 22_locale/num_get/2.cc
	* 22_locale/num_get/3.cc
	* 22_locale/numpunct/1.cc
	* 22_locale/numpunct/2.cc
	* 22_locale/numpunct_byname/1.cc
	* 22_locale/num_put/1.cc
	* 22_locale/num_put/2.cc
	* 22_locale/num_put/3.cc
	* 22_locale/time_get/1.cc
	* 22_locale/time_get/2.cc
	* 22_locale/time_put/1.cc
	* 22_locale/time_put/2.cc
	* 23_containers/deque/1.cc
	* 23_containers/deque/explicit_instantiation
	* 23_containers/deque/explicit_instantiation/1.cc
	* 23_containers/deque/explicit_instantiation/2.cc
	* 23_containers/deque/explicit_instantiation/3.cc
	* 23_containers/list/1.cc
	* 23_containers/list/explicit_instantiation
	* 23_containers/list/explicit_instantiation/1.cc
	* 23_containers/list/explicit_instantiation/2.cc
	* 23_containers/list/explicit_instantiation/3.cc
	* 23_containers/map/1.cc
	* 23_containers/map/explicit_instantiation
	* 23_containers/map/explicit_instantiation/1.cc
	* 23_containers/map/explicit_instantiation/2.cc
	* 23_containers/map/explicit_instantiation/3.cc
	* 23_containers/multimap/1.cc
	* 23_containers/multimap/explicit_instantiation
	* 23_containers/multimap/explicit_instantiation/1.cc
	* 23_containers/multimap/explicit_instantiation/2.cc
	* 23_containers/multimap/explicit_instantiation/3.cc
	* 23_containers/multiset/1.cc
	* 23_containers/multiset/explicit_instantiation
	* 23_containers/multiset/explicit_instantiation/1.cc
	* 23_containers/multiset/explicit_instantiation/2.cc
	* 23_containers/multiset/explicit_instantiation/3.cc
	* 23_containers/set/1.cc
	* 23_containers/set/explicit_instantiation
	* 23_containers/set/explicit_instantiation/1.cc
	* 23_containers/set/explicit_instantiation/2.cc
	* 23_containers/set/explicit_instantiation/3.cc
	* 23_containers/vector/1.cc
	* 23_containers/vector/explicit_instantiation
	* 23_containers/vector/explicit_instantiation/1.cc
	* 23_containers/vector/explicit_instantiation/2.cc
	* 23_containers/vector/explicit_instantiation/3.cc
	* 24_iterators/26020.cc
	* 24_iterators/back_insert_iterator.cc
	* 24_iterators/front_insert_iterator.cc
	* 24_iterators/insert_iterator.cc
	* 24_iterators/istreambuf_iterator/1.cc
	* 24_iterators/istream_iterator.cc
	* 24_iterators/iterator.cc
	* 24_iterators/ostreambuf_iterator/1.cc
	* 24_iterators/ostream_iterator.cc
	* 24_iterators/reverse_iterator/1.cc
	* 26_numerics/cmath
	* 26_numerics/cmath/19322.cc
	* 26_numerics/cmath/c99_classification_macros_c.cc
	* 26_numerics/cmath/c99_classification_macros_c++.cc
	* 26_numerics/cmath/c_math.cc
	* 26_numerics/cmath/c_math_dynamic.cc
	* 26_numerics/cmath/fabs_inline.cc
	* 26_numerics/cmath/overloads.cc
	* 26_numerics/cmath/powi.cc
	* 26_numerics/cstdlib
	* 26_numerics/cstdlib/13943.cc
	* 26_numerics/numeric
	* 26_numerics/numeric/sum_diff.cc
	* 26_numerics/valarray
	* 26_numerics/valarray/27867.cc
	* 26_numerics/valarray/28277.cc
	* 26_numerics/valarray/30416.cc
	* 26_numerics/valarray/binary_closure.cc
	* 26_numerics/valarray/dr543.cc
	* 26_numerics/valarray/slice_array_assignment.cc
	* 26_numerics/valarray/slice.cc
	* 26_numerics/valarray/valarray.cc
	* 26_numerics/valarray/valarray_const_bracket.cc
	* 26_numerics/valarray/valarray_name_lookup.cc
	* 26_numerics/valarray/valarray_operators.cc
	* 26_numerics/valarray/valarray_subset_assignment.cc
	* 27_io/basic_filebuf/1.cc
	* 27_io/basic_filebuf/2.cc
	* 27_io/basic_filebuf/3.cc
	* 27_io/basic_filebuf/4.cc
	* 27_io/basic_fstream/1.cc
	* 27_io/basic_fstream/2.cc
	* 27_io/basic_fstream/3.cc
	* 27_io/basic_fstream/4.cc
	* 27_io/basic_ifstream/1.cc
	* 27_io/basic_ifstream/2.cc
	* 27_io/basic_ifstream/3.cc
	* 27_io/basic_ifstream/4.cc
	* 27_io/basic_ios/1.cc
	* 27_io/basic_ios/2.cc
	* 27_io/basic_ios/3.cc
	* 27_io/basic_ios/4.cc
	* 27_io/basic_iostream/1.cc
	* 27_io/basic_iostream/2.cc
	* 27_io/basic_iostream/3.cc
	* 27_io/basic_iostream/4.cc
	* 27_io/basic_istream/1.cc
	* 27_io/basic_istream/2.cc
	* 27_io/basic_istream/3.cc
	* 27_io/basic_istream/4.cc
	* 27_io/basic_istringstream/1.cc
	* 27_io/basic_istringstream/2.cc
	* 27_io/basic_istringstream/3.cc
	* 27_io/basic_istringstream/4.cc
	* 27_io/basic_ofstream/1.cc
	* 27_io/basic_ofstream/2.cc
	* 27_io/basic_ofstream/3.cc
	* 27_io/basic_ofstream/4.cc
	* 27_io/basic_ostream/1.cc
	* 27_io/basic_ostream/2.cc
	* 27_io/basic_ostream/3.cc
	* 27_io/basic_ostream/4.cc
	* 27_io/basic_ostringstream/1.cc
	* 27_io/basic_ostringstream/2.cc
	* 27_io/basic_ostringstream/3.cc
	* 27_io/basic_ostringstream/4.cc
	* 27_io/basic_streambuf/1.cc
	* 27_io/basic_streambuf/2.cc
	* 27_io/basic_streambuf/3.cc
	* 27_io/basic_stringbuf/1.cc
	* 27_io/basic_stringbuf/2.cc
	* 27_io/basic_stringbuf/3.cc
	* 27_io/basic_stringbuf/4.cc
	* 27_io/basic_stringbuf/5.cc
	* 27_io/basic_stringstream/1.cc
	* 27_io/basic_stringstream/2.cc
	* 27_io/basic_stringstream/3.cc
	* 27_io/basic_stringstream/4.cc
	* 27_io/fpos/1.cc
	* ext/debug_allocator/instantiate.cc
	* ext/hash_map/instantiate.cc
	* ext/hash_set/instantiate.cc
	* ext/malloc_allocator/instantiate.cc
	* ext/mt_allocator/instantiate.cc
	* ext/pool_allocator/instantiate.cc
	* ext/slist/instantiate.cc
	* ext/stdio_filebuf/char/1.cc
	* ext/vstring/explicit_instantiation
	* ext/vstring/explicit_instantiation/1.cc
	* ext/vstring/explicit_instantiation/2.cc
	* ext/vstring/explicit_instantiation/char
	* ext/vstring/explicit_instantiation/char/1.cc
	* ext/vstring/explicit_instantiation/wchar_t
	* ext/vstring/explicit_instantiation/wchar_t/1.cc
	* tr1/2_general_utilities/memory/enable_shared_from_this/
	explicit_instantiation
	* tr1/2_general_utilities/memory/enable_shared_from_this/
	explicit_instantiation/1.cc
	* tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation
	* tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation/1.cc
	* tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation
	* tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation/1.cc
	* tr1/5_numerical_facilities/random/discard_block/requirements/
	requirements.cc
	* tr1/6_containers/array/requirements/instantiate.cc
	* tr1/6_containers/unordered
	* tr1/6_containers/unordered/23781.cc
	* tr1/6_containers/unordered/capacity
	* tr1/6_containers/unordered/capacity/29134-map.cc
	* tr1/6_containers/unordered/capacity/29134-multimap.cc
	* tr1/6_containers/unordered/capacity/29134-multiset.cc
	* tr1/6_containers/unordered/capacity/29134-set.cc
	* tr1/6_containers/unordered/erase
	* tr1/6_containers/unordered/erase/24061-map.cc
	* tr1/6_containers/unordered/erase/24061-multimap.cc
	* tr1/6_containers/unordered/erase/24061-multiset.cc
	* tr1/6_containers/unordered/erase/24061-set.cc
	* tr1/6_containers/unordered/find
	* tr1/6_containers/unordered/find/map1.cc
	* tr1/6_containers/unordered/find/multimap1.cc
	* tr1/6_containers/unordered/find/multiset1.cc
	* tr1/6_containers/unordered/find/set1.cc
	* tr1/6_containers/unordered/hash
	* tr1/6_containers/unordered/hash/24799.cc
	* tr1/6_containers/unordered/hashtable
	* tr1/6_containers/unordered/hashtable/23053.cc
	* tr1/6_containers/unordered/hashtable/23465.cc
	* tr1/6_containers/unordered/hashtable/24054.cc
	* tr1/6_containers/unordered/hashtable/24064.cc
	* tr1/6_containers/unordered/hashtable/26127.cc
	* tr1/6_containers/unordered/hashtable/26132.cc
	* tr1/6_containers/unordered/hashtable/iterators_default_constructor.cc
	* tr1/6_containers/unordered/insert
	* tr1/6_containers/unordered/insert/24061-map.cc
	* tr1/6_containers/unordered/insert/24061-multimap.cc
	* tr1/6_containers/unordered/insert/24061-multiset.cc
	* tr1/6_containers/unordered/insert/24061-set.cc
	* tr1/6_containers/unordered/insert/array_syntax.cc
	* tr1/6_containers/unordered/insert/map_range.cc
	* tr1/6_containers/unordered/insert/map_single.cc
	* tr1/6_containers/unordered/insert/multimap_range.cc
	* tr1/6_containers/unordered/insert/multimap_single.cc
	* tr1/6_containers/unordered/insert/multiset_range.cc
	* tr1/6_containers/unordered/insert/multiset_single.cc
	* tr1/6_containers/unordered/insert/set_range.cc
	* tr1/6_containers/unordered/insert/set_single.cc
	* tr1/6_containers/unordered/instantiate
	* tr1/6_containers/unordered/instantiate/hash.cc
	* tr1/6_containers/unordered/instantiate/map.cc
	* tr1/6_containers/unordered/instantiate/multimap.cc
	* tr1/6_containers/unordered/instantiate/multiset.cc
	* tr1/6_containers/unordered/instantiate/set.cc
	* tr1/6_containers/unordered/swap
	* tr1/6_containers/unordered/swap/unordered_map
	* tr1/6_containers/unordered/swap/unordered_map/1.cc
	* tr1/6_containers/unordered/swap/unordered_map/2.cc
	* tr1/6_containers/unordered/swap/unordered_multimap
	* tr1/6_containers/unordered/swap/unordered_multimap/1.cc
	* tr1/6_containers/unordered/swap/unordered_multimap/2.cc
	* tr1/6_containers/unordered/swap/unordered_multiset
	* tr1/6_containers/unordered/swap/unordered_multiset/1.cc
	* tr1/6_containers/unordered/swap/unordered_multiset/2.cc
	* tr1/6_containers/unordered/swap/unordered_set
	* tr1/6_containers/unordered/swap/unordered_set/1.cc
	* tr1/6_containers/unordered/swap/unordered_set/2.cc
	* tr1/6_containers/unordered/types
	* tr1/6_containers/unordered/types/map_iterator.cc
	* tr1/6_containers/unordered/types/multimap_iterator.cc
	* tr1/6_containers/unordered/types/multiset_iterator.cc
	* tr1/6_containers/unordered/types/set_iterator.cc

	* 24_iterators/reverse_iterator/2.cc: To just one
	non-requirements test.
	* ext/headers.cc: Add new includes.
	
2007-02-18  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/28080 (partial)
	* include/bits/stl_algobase.h: Do not include <climits>, use
	std::numeric_limits.
	* include/bits/stl_bvector.h: Use __CHAR_BIT__.
	* config/locale/gnu/codecvt_members.cc: Include <climits>.
	* config/locale/generic/codecvt_members.cc: Likewise.
	* include/std/string: Do not include <algorithm>; do not include
	<memory>, include <bits/allocator.h> instead.
	* include/ext/vstring_fwd.h: Likewise.
	* include/ext/vstring_util.h: Do not include <algorithm>.
	* include/tr1/hashtable_policy.h: Include <algorithm>.
	* testsuite/21_strings/basic_string/replace/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise.
	* testsuite/23_containers/bitset/cons/1.cc: Likewise.
	* testsuite/util/testsuite_character.h: Likewise.

	* config/locale/gnu/codecvt_members.cc: Also include <cstdlib>,
	for MB_CUR_MAX.
	* config/locale/generic/codecvt_members.cc: Likewise.

From-SVN: r122168
2007-02-20 18:15:01 +00:00
Paolo Carlini
3ad7074772 PR libstdc++/29134 (ext/vstring bits)
2006-09-21  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/29134 (ext/vstring bits)
	* include/ext/sso_string_base.h (__sso_string_base<>::_S_max_size):
	Remove.
	(__sso_string_base<>::_M_max_size): Use allocator' max_size.
	(__sso_string_base<>::_M_create): Adjust.
	* include/ext/vstring.h: Minor comment tweak.
	* testsuite/ext/vstring/capacity/29134.cc: New.

From-SVN: r117109
2006-09-21 10:34:48 +00:00
Paolo Carlini
2bcec7298e re PR libstdc++/23767 (std::vector iterator implementation wrong)
2005-09-12  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23767
	* include/bits/stl_iterator.h (__normal_iterator::
	__normal_iterator<>(const __normal_iterator<_Iter, _Container>&)):
	Enable only when _Iter is equal to _Container::pointer.
	* testsuite/21_strings/basic_string/types/23767.cc: New.
	* testsuite/23_containers/vector/types/23767.cc: Likewise.
	* testsuite/ext/vstring/types/23767.cc: Likewise.

From-SVN: r104167
2005-09-12 09:42:34 +00:00
Kelley Cook
83f517994d All files: Update FSF address.
2005-08-17  Kelley Cook  <kcook@gcc.gnu.org>

	* All files: Update FSF address.

From-SVN: r103192
2005-08-17 02:28:44 +00:00
Paolo Carlini
872d8fea40 Add class __versa_string, a versatile "basic_string-type" class...
2005-07-05  Paolo Carlini  <pcarlini@suse.de>

	Add class __versa_string, a versatile "basic_string-type" class:
	an additional, non-standard, template parameter allows to specify
	the preferred base class. Two are provided: __rc_string_base,
	which implements a behavior very similar to our standard string,
	and __sso_string_base, not reference-counted and optimized for
	short strings.
	* include/ext/rc_string_base.h: New.
	* include/ext/sso_string_base.h: Likewise.
	* include/ext/vstring.h: Likewise.
	* include/ext/vstring.tcc: Likewise.
	* include/ext/vstring_fwd.h: Likewise.
	* include/ext/vstring_util.h: Likewise.
	* include/Makefile.am: Add.
	* include/Makefile.in: Regenerate.
	* testsuite/ext/vstring/explicit_instantiation/1.cc: New.
	* testsuite/ext/vstring/explicit_instantiation/2.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/char/1.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/wchar_t/1.cc: Likewise.

	* Makefile.in: Regenerate with autotools 1.9.3 (to date, the version
	officially used by v3).
	* aclocal.m4: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

From-SVN: r101639
2005-07-05 23:07:18 +00:00