Commit Graph

133 Commits

Author SHA1 Message Date
Paolo Carlini 266a2cbaec re PR libstdc++/32233 (warning in stl_vector.h:832)
2007-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/32233
	* include/bits/stl_vector.h (_M_fill_initialize): Fix return type.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r125499
2007-06-06 18:44:02 +00:00
Paolo Carlini f4c5578ffb PR c++/32158 (libstdc++ bits)
2007-05-31  Paolo Carlini  <pcarlini@suse.de>

	PR c++/32158 (libstdc++ bits)
	* include/bits/stl_uninitialized.h (__uninitialized_copy_aux,
	__uninitialized_fill_aux, __uninitialized_fill_n_aux):
	Remove.
	(struct __uninitialized_copy, struct __uninitialized_fill,
	struct __uninitialized_fill_n): Add.
	(uninitialized_copy, uninitialized_fill, uninitialized_fill_n):
	Adjust.
	* testsuite/20_util/specialized_algorithms/32158.cc: New.

	* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
	_InputIterator, _ForwardIterator)): Robustify vs non-POD input.

	* include/bits/stl_vector.h (_M_fill_initialize): New.
	(vector(size_type, const value_type&, const allocator_type&),
	_M_initialize_dispatch(_Integer, _Integer, __true_type)): Use it.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line.
	* 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: r125223
2007-05-31 11:13:57 +00:00
Paolo Carlini 360721e336 stl_algobase.h: Do not include <cstring>.
2007-05-07  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h: Do not include <cstring>.
	(copy(const _Tp*, const _Tp*, _Tp*), __copy_b(const _Tp*, const _Tp*,
	_Tp*)): Use __builtin_memmove.
	(__fill_aux): Use __builtin_memset.
	(equal(const _Tp*, const _Tp*, const _Tp*),
	lexicographical_compare(const unsigned char*, const unsigned char*,
	const unsigned char*, const unsigned char*)): Use __builtin_memcmp.
	*  include/bits/valarray_array.h: Do not include <cstring>.
	(_Array_default_ctor<, true>::_S_do_it): Use __builtin_memset.
	(_Array_copy_ctor<, true>::_S_do_it, _Array_copier<, true>::_S_do_it):
	Use __builtin_memcpy.
	* include/ext/algorithm
	(__lexicographical_compare_3way(const unsigned char*,
	const unsigned char*, const unsigned char*, const unsigned char*)):
	Use __builtin_memcmp.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Adjust dg-error line number.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.

From-SVN: r124511
2007-05-07 20:36:40 +00:00
Benjamin Kosnik 7b50cdeffb type_traits (enable_if): New.
2007-05-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/type_traits (enable_if): New.
	(conditional): New.
	(__decay_selector, decay): New.
	(__cv_selector, __match_cv_qualifiers): New.
	(__make_unsigned, __make_unsigned_selector, make_unsigned): New.
	(__make_signed, __make_signed_selector, make_signed): New.
	(has_trivial_constructor): ... to has_trivial_default_constructor.
	(has_nothrow_constructor): ... to has_nothrow_default_constructor.
	(has_trivial_copy): ... to has_trivial_copy_constructor.
	(has_nothrow_copy): ... to has_nothrow_copy_constructor.

	* include/tr1/type_traits_fwd: Move to...
	* include/tr1/type_traitsfwd: ... this, consistency with
	ios/string/locale forward headers.
	* include/tr1/type_traits: Adjust include.	
	* include/Makefile.am (tr1_headers): Change type_traits_fwd.h to
	type_traitsfwd.h.
	* include/Makefile.in: Regenerate.

	* testsuite/23_containers/tuple: Move...
	* testsuite/20_util/tuple:... here.

	* testsuite/20_util/conditional: New.
	* testsuite/20_util/conditional/requirements: Same.
	* testsuite/20_util/conditional/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/conditional/requirements/typedefs.cc: Same.
	* testsuite/20_util/decay: Same.
	* testsuite/20_util/decay/requirements: Same.
	* testsuite/20_util/decay/requirements/explicit_instantiation.cc: Same.
	* testsuite/20_util/decay/requirements/typedefs.cc: Same.
	* testsuite/20_util/enable_if: Same.
	* testsuite/20_util/enable_if/requirements: Same.
	* testsuite/20_util/enable_if/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/enable_if/requirements/typedefs.cc: Same.
	* testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Same.
	* testsuite/20_util/has_nothrow_copy_constructor: Same.
	* testsuite/20_util/has_nothrow_copy_constructor/requirements: Same.
	* testsuite/20_util/has_nothrow_copy_constructor/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/has_nothrow_copy_constructor/requirements/
	typedefs.cc: Same.
	* testsuite/20_util/has_nothrow_copy_constructor/value.cc: Same.
	* testsuite/20_util/has_nothrow_default_constructor: Same.
	* testsuite/20_util/has_nothrow_default_constructor/requirements: Same.
	* testsuite/20_util/has_nothrow_default_constructor/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/has_nothrow_default_constructor/requirements/
	typedefs.cc: Same.
	* testsuite/20_util/has_nothrow_default_constructor/value.cc: Same.
	* testsuite/20_util/has_trivial_copy_constructor: Same.
	* testsuite/20_util/has_trivial_copy_constructor/requirements: Same.
	* testsuite/20_util/has_trivial_copy_constructor/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/has_trivial_copy_constructor/requirements/
	typedefs.cc: Same.
	* testsuite/20_util/has_trivial_copy_constructor/value.cc: Same.
	* testsuite/20_util/has_trivial_default_constructor: Same.
	* testsuite/20_util/has_trivial_default_constructor/requirements: Same.
	* testsuite/20_util/has_trivial_default_constructor/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/has_trivial_default_constructor/requirements/
	typedefs.cc: Same.
	* testsuite/20_util/has_trivial_default_constructor/value.cc: Same.
	* testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc: Same.
	* testsuite/20_util/make_signed: Same.
	* testsuite/20_util/make_signed/requirements: Same.
	* testsuite/20_util/make_signed/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/make_signed/requirements/typedefs.cc: Same.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
	* testsuite/20_util/make_unsigned: Same.
	* testsuite/20_util/make_unsigned/requirements: Same.
	* testsuite/20_util/make_unsigned/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.

From-SVN: r124374
2007-05-03 11:49:12 +00:00
Benjamin Kosnik d0700ca3a4 *: Move to...
2007-05-01  Benjamin Kosnik  <bkoz@redhat.com>
	
	* 23_containers/requirements/sequences/dr438/deque/*: Move to...
	* 23_containers/deque/requirements/dr438: ...here.
	
	* 23_containers/requirements/sequences/dr438/list/*: Move to...
	* 23_containers/list/requirements/dr438: ...here.
	
	* 23_containers/requirements/sequences/dr438/vector/*: Move to...
	* 23_containers/vector/requirements/dr438: ...here.

From-SVN: r124319
2007-05-01 09:04:35 +00:00
Paolo Carlini d22a31664d PR libstdc++/30449 (equal)
2007-04-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/30449 (equal)
	* include/bits/stl_algobase.h (struct __niter_base): Add.
	(copy(_II, _II, _OI), copy_backward(_BI1, _BI1, _BI2),
	fill(_ForwardIterator, _ForwardIterator, const _Tp&),
	fill_n(_OI, _Size, const _Tp&), equal(_II1, _II1, _II2)):
	Use it.
	(struct __copy_normal, __copy_backward_normal,
	struct __fill_normal, struct __fill_n_normal): Remove.
	(struct __equal, struct __equal_aux): Add.
	* include/bits/stl_iterator.h: Add _Iterator_type typedef.

	* include/bits/stl_algobase.h (__fill_aux(wchar_t*,
	wchar_t*, wchar_t), __fill_n_aux(wchar_t*, _Size, wchar_t)):
	Remove.

	* testsuite/23_containers/requirements/sequences/dr438/vector/
	constructor_1_neg.cc: Adjust dg-error line number.
	* testsuite/23_containers/requirements/sequences/dr438/vector/
	constructor_2_neg.cc: Likewise.

From-SVN: r124295
2007-04-30 13:10:54 +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 6725add54e numeric_traits.h: Do not include <limits>.
2007-04-13  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/numeric_traits.h: Do not include <limits>.
	(__numeric_traits_integer::__is_signed, __digits): Add.
	(__numeric_traits_floating::__digits10, __max_exponent10): Add.
	* src/istream.cc (ignore<char>(streamsize, int_type), operator>>
	(basic_istream<char>&, char*), ignore<wchar_t>(streamsize,
	int_type)): Use the latter.
	* src/compatibility.cc (ignore<char>(streamsize),
	ignore<wchar_t>(streamsize)): Likewise.
	* include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
	Likewise.
	* include/bits/stl_memory.h (__get_temporary_buffer): Likewise.
	* include/bits/stl_algobase.h (lexicographical_compare(const char*,
	const char*, const char*, const char*)): Likewise.
	* include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
	_InIter, ios_base&, ios_base::iostate&, _ValueT&),
	num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT),
	num_put<>::_M_insert_float(_OutIter, ios_base&, _CharT, char,
	_ValueT), collate<>::do_hash(const _CharT*, const _CharT*)): Likewise.
	* include/bits/basic_string.h (basic_string<>::_S_compare): Likewise.
	* include/bits/istream.tcc (operator>>(short&), operator>>(int&),
	ignore(streamsize), ignore(streamsize, int_type), operator>>
	(basic_istream<>&, _CharT*)): Likewise.
	* include/bits/stl_bvector.h (vector<bool>::max_size): Likewise.
	* include/tr1/functional_hash.h (struct hash<long double>): Likewise.
	* include/std/istream: Do not include <limits>.
	* include/tr1/cmath: Include <limits>.
	* testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
	Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
	Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
	Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
	Likewise.
	* testsuite/27_io/ios_base/storage/2.cc: Likewise.

	* include/tr1/hashtable: Do not include the whole <iterator>.

From-SVN: r123779
2007-04-13 10:54:37 +00:00
Paolo Carlini f7e5257713 re PR libstdc++/31440 (libstdc++-g++-v3 discarded qualifiers)
2007-04-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/31440
	* include/bits/stl_tree.h (_M_lower_bound(_Link_type, _Link_type,
	const _Key&), _M_upper_bound(_Link_type, _Link_type, const _Key&)):
	Add.
	(_M_equal_range(const _Key&) const): Remove.
	(lower_bound(const key_type&), lower_bound(const key_type&) const,
	upper_bound(const key_type&), upper_bound(const key_type&) const,
	equal_range(const key_type&), equal_range(const key_type&) const):
	Adjust.
	(find(const _Key&), find(const _Key&) const): Tweak.
	* testsuite/23_containers/map/operations/31440.cc: New.

From-SVN: r123452
2007-04-03 08:32:31 +00:00
Matthew Levine be1088fa6a re PR libstdc++/31370 (resizing bugs in std::vector<bool>)
2007-04-02  Matthew Levine  <gcc@severeweblint.org>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/31370
	* include/bits/stl_bvector.h (vector<bool>::max_size): Fix.
	(vector<bool>::_M_check_len): Add.
	* include/bits/vector.tcc (_M_fill_insert(iterator, size_type, bool),
	_M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
	std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
	* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: New.
	* testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust.

	* include/bits/stl_vector.h (vector<>::_M_check_len): Add.
	* include/bits/vector.tcc (_M_insert_aux(iterator, const _Tp&),
	_M_fill_insert(iterator, size_type, const value_type&),
	_M_range_insert(iterator, _ForwardIterator, _ForwardIterator,
	std::forward_iterator_tag)): Use it.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r123424
2007-04-02 10:15:50 +00:00
Benjamin Kosnik 3422222a02 types_std_c++0x.cc: Use -std=gnu++0x instead of -std=c++0x for testing.
2007-03-16  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Use
	-std=gnu++0x instead of -std=c++0x for testing.
	* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
	* testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
	* testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
	* testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
	* testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
	* testsuite/17_intro/headers/c++200x/all.cc: Same.
	* testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
	* testsuite/23_containers/hash/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/tuple/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/array/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/enable_shared_from_this/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
	* testsuite/20_util/headers/functional/
	using_namespace_std_placeholders.cc: Same.
	* testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
	* testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
	* testsuite/20_util/shared_ptr/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/weak_ptr/requirements/
	explicit_instantiation.cc: Same.

From-SVN: r122996
2007-03-16 19:44:00 +00:00
Benjamin Kosnik af13a7a6ec acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
	* configure.host (c_model): Set default to c_global.
	* configure: Regenerate.
	* include/Makefile.am (c_compatibility_headers_extra): Make
	conditional on GLIBCXX_C_HEADERS_COMPATIBILITY.
	(c_base_headers_extra): Make conditional on GLIBCXX_C_HEADERS_EXTRA.
	(c_compatibility_headers): Make conditional on c/c_std/c_global.
	* include/Makefile.in: Regenerate.
	* docs/html/configopts.html: Add c_global information to
	--enable-cheaders. Eventually, "c_std" should mean "C" includes
	that are in namespace std, with optional C++ "C" compatibility
	includes to inject into global scope. And "c_global" should mean
	"C" includes that are in the global namespace, with C++ includes
	injecting into namespace std and no C++ "C" compatibility
	includes.
 
2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/c++config: Add _GLIBCXX_NAMEPACE_C.
	Add _GLIBCXX_NAMESPACE_ASSOCIATION_CXX200x.
	Add _GLIBCXX_TR1 as namespace macro.
	Add namespace associations for std::__cxx200x conditionally.

	* include/c_compatibility/assert.h: Correct doxygen markup,
	conditionalize the global injections on _GLIBCXX_NAMESPACE_C.
	* include/c_compatibility/ctype.h: Same.
	* include/c_compatibility/errno.h: Same.
	* include/c_compatibility/float.h: Same.
	* include/c_compatibility/iso646.h: Same.
	* include/c_compatibility/limits.h: Same.
	* include/c_compatibility/locale.h: Same.
	* include/c_compatibility/math.h: Same.
	* include/c_compatibility/setjmp.h: Same.
	* include/c_compatibility/signal.h: Same.
	* include/c_compatibility/stdarg.h: Same.
	* include/c_compatibility/stddef.h: Same.
	* include/c_compatibility/stdio.h: Same.
	* include/c_compatibility/stdlib.h: Same.
	* include/c_compatibility/string.h: Same.
	* include/c_compatibility/time.h: Same.
	* include/c_compatibility/wchar.h: Same.
	* include/c_compatibility/wctype.h: Same.

	* include/c_compatibility/complex.h: Add.
	* include/c_compatibility/fenv.h: Same.
	* include/c_compatibility/inttypes.h: Same.
	* include/c_compatibility/stdbool.h: Same.
	* include/c_compatibility/stdint.h: Same.
	* include/c_compatibility/tgmath.h: Same.

	* include/c_global/cassert: Add, use include_next, use C++0x features
	if -std=c++0x.
	* include/c_global/cctype: Same.
	* include/c_global/cerrno: Same.
	* include/c_global/cfloat: Same.
	* include/c_global/ciso646: Same.
	* include/c_global/climits: Same.
	* include/c_global/clocale: Same.
	* include/c_global/cmath: Same.
	* include/c_global/cmath.tcc: Same.
	* include/c_global/csetjmp: Same.
	* include/c_global/csignal: Same.
	* include/c_global/cstdarg: Same.
	* include/c_global/cstddef: Same.
	* include/c_global/cstdio: Same.
	* include/c_global/cstdlib: Same.
	* include/c_global/cstring: Same.
	* include/c_global/ctime: Same.
	* include/c_global/cwchar: Same.
	* include/c_global/cwctype: Same.

	* include/c_global/ccomplex: Add.
	* include/c_global/cfenv: Add.
	* include/c_global/cinttypes: Add. 
	* include/c_global/cstdbool: Add.
	* include/c_global/cstdint: Add.
	* include/c_global/ctgmath: Add.

	* include/std/algorithm: Use C++0x features if -std=c++0x.	
	* include/std/bitset: Same.
	* include/std/complex: Same.
	* include/std/deque: Same.
	* include/std/fstream: Same.
	* include/std/functional: Same.
	* include/std/iomanip: Same.
	* include/std/ios: Same.
	* include/std/iosfwd: Same.
	* include/std/iostream: Same.
	* include/std/istream: Same.
	* include/std/iterator: Same.
	* include/std/limits: Same.
	* include/std/list: Same.
	* include/std/locale: Same.
	* include/std/map: Same.
	* include/std/memory: Same.
	* include/std/numeric: Same.
	* include/std/ostream: Same.
	* include/std/queue: Same.
	* include/std/set: Same.
	* include/std/sstream: Same.
	* include/std/stack: Same.
	* include/std/stdexcept: Same.
	* include/std/streambuf: Same.
	* include/std/string: Same.
	* include/std/utility: Same.
	* include/std/valarray: Same.
	* include/std/vector: Same.

	* include/std/array: Add.
	* include/std/random: Add.
	* include/std/regex: Add.
	* include/std/tuple: Add.
	* include/std/type_traits: Add.
	* include/std/unordered_map: Add.
	* include/std/unordered_set: Add.
	* include/std/c++0x_warning.h: Add.
	
	* include/tr1/array: Switch namespaces based on _GLIBCXX_TR1.
	* include/tr1/boost_shared_ptr.h: Same.
	* include/tr1/cctype: Same.
	* include/tr1/cfenv: Same.
	* include/tr1/cinttypes: Same.
	* include/tr1/cmath: Same.
	* include/tr1/common.h: Same.
	* include/tr1/complex: Same.
	* include/tr1/cstdint: Same.
	* include/tr1/cstdio: Same.
	* include/tr1/cstdlib: Same.
	* include/tr1/cwchar: Same.
	* include/tr1/cwctype: Same.
	* include/tr1/functional: Same.
	* include/tr1/functional_hash.h: Same.
	* include/tr1/functional_iterate.h: Same.
	* include/tr1/hashtable: Same.
	* include/tr1/hashtable_policy.h: Same.
	* include/tr1/math.h: Same.
	* include/tr1/memory: Same.
	* include/tr1/random: Same.
	* include/tr1/random.tcc: Same.
	* include/tr1/ref_fwd.h: Same.
	* include/tr1/repeat.h: Same.
	* include/tr1/stdlib.h: Same.
	* include/tr1/tuple: Same.
	* include/tr1/tuple_iterate.h: Same.
	* include/tr1/type_traits: Same.
	* include/tr1/type_traits_fwd.h: Same.
	* include/tr1/unordered_map: Same.
	* include/tr1/unordered_set: Same.
	* include/tr1/utility: Same.

	* include/tr1/ccomplex: Add.
	* include/tr1/complex.h: Add.
	* include/tr1/regex: Add.

	* include/Makefile.am: Add C++0x headers, "C" compatibility headers.
	* include/Makefile.in: Regenerate.

	* testsuite/tr1/headers.cc: Add in regex/complex.

	* testsuite/17_intro/headers/c++200x/all.cc: New.
	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
	* testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
	* testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Same.
	* testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Same.
	* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
	* testsuite/20_util/enable_shared_from_this/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
	* testsuite/20_util/headers/functional/
	using_namespace_std_placeholders.cc: Same.
	* testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
	* testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Same.
	* testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
	* testsuite/20_util/shared_ptr/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/20_util/weak_ptr/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/array/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/hash/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/headers/array/std_c++0x_neg.cc: Same.
	* testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Same.
	* testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
	* testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc: Same.
	* testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc: Same.
	* testsuite/23_containers/tuple/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation.cc: Same.
	* testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Same.
	* testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Same.
	* testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
	* testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
	* testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
	* testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Same.
	* testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Same.
	* testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
	* testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Same.
	* testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Same.
	* testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Same.

	* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Rename ...
	* testsuite/tr1/8_c_compatibility/cinttypes/types.cc: Same.
	* testsuite/tr1/8_c_compatibility/cmath/types.cc: Same.
	* testsuite/tr1/8_c_compatibility/cstdint/types.cc: Same.
	* testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Same.
	* testsuite/tr1/8_c_compatibility/cfenv/types_std_tr1.cc: ...to this.
	* testsuite/tr1/8_c_compatibility/cinttypes/types_std_tr1.cc: Same.
	* testsuite/tr1/8_c_compatibility/cmath/types_std_tr1.cc: Same.
	* testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Same.
	* testsuite/tr1/8_c_compatibility/cstdlib/types_std_tr1.cc: Same.

From-SVN: r122533
2007-03-04 22:59:49 +00:00
Paolo Carlini 39b8cd70c2 PR libstdc++/28080 (partial)
2007-03-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/28080 (partial)
	* include/bits/stl_algobase.h: Do not include <iosfwd>,
	<bits/functexcept.h> is enough; adjust __copy_aux declarations;
	remove declaration of copy overload for istreambuf_iterator /
	ostreambuf_iterator.
	* src/debug.cc: Include <cstdio>.
	* include/ext/rope: Include <iosfwd>.
	* include/bits/char_traits.h: Include <cstdio> and <cwchar>.
	* include/bits/stl_algo.h: Remove declaration of find overload
	for istreambuf_iterator.
	* include/std/queue: Clean up includes.
	* include/std/stack: Likewise.
	* include/std/memory: Likewise.
	* include/std/algorithm: Likewise.
	* include/std/vector: Likewise.
	* include/std/deque: Likewise.
	* include/std/list: Likewise.
	* include/bits/stl_tree.h: Likewise.
	* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Adjust
	dg-error markers.
	* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
	* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
	* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
	* testsuite/23_containers/map/operators/1_neg.cc: Likewise.
	* testsuite/20_util/auto_ptr/assign_neg.cc: Likewise.

	* include/ext/type_traits.h: Fix type of __max_digits10; clean up
	includes.

	* testsuite/util/testsuite_hooks.h: Do not include <cstddef>.
	* testsuite/util/testsuite_hooks.cc: Do it here.

From-SVN: r122502
2007-03-03 10:29:14 +00:00
Paolo Carlini debac9f40d 9661-1.cc: Include <cstdlib>.
2007-03-02  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/27_io/objects/wchar_t/9661-1.cc: Include <cstdlib>.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
	* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
	11.cc: Likewise.
	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
	4.cc: Likewise.
	* testsuite/27_io/basic_istream/extractors_character/char/
	4.cc: Likewise.
	* testsuite/27_io/basic_ostream/seekp/wchar_t/
	2346-fstream.cc: Likewise.
	* testsuite/27_io/basic_ostream/seekp/char/
	2346-fstream.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/
	wchar_t/10.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/
	wchar_t/11.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/
	char/10.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/
	char/11.cc: Likewise.
	* testsuite/ext/pb_ds/example/trie_dna.cc: Likewise.
	* testsuite/ext/new_allocator/deallocate_global.cc: Likewise.
	* testsuite/ext/new_allocator/deallocate_local.cc: Likewise.
	* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Likewise.
	* testsuite/performance/27_io/ifstream_getline.cc: Likewise.
	* testsuite/22_locale/locale/cons/4.cc: Likewise.
	* testsuite/22_locale/locale/cons/5.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/thread/pthread5.cc: Likewise.
	* testsuite/thread/pthread1.cc: Likewise.
	* testsuite/23_containers/deque/cons/assign/1.cc: Likewise.

From-SVN: r122482
2007-03-02 18:11:15 +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 f56fe8ff92 PR libstdc++/28080 (partial)
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: r122089
2007-02-18 11:32:44 +00:00
Hans-Peter Nilsson ed445ba30e 1.cc: Use only 10000 iterations for simulator targets.
* testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Use only
	10000 iterations for simulator targets.
	* testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Use only 5
	iterations for simulator targets.
	* testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Ditto.
	* testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Ditto.
	* testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Ditto.
	* testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Ditto.
	* testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Ditto.
	* testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Ditto.
	* testsuite/23_containers/set/modifiers/16728.cc: Use only 10
	iterations for simulator targets.

From-SVN: r121682
2007-02-07 10:08:04 +00:00
Steve LoBasso 45dc23a66b deque.tcc (deque<>::erase(iterator, iterator)): Fix condition.
2007-01-24   Steve LoBasso <slobasso@yahoo.com>
	     Paolo Carlini  <pcarlini@suse.de>

	* include/bits/deque.tcc (deque<>::erase(iterator, iterator)):
	Fix condition.
	* testsuite/23_containers/deque/modifiers/erase/3.cc: New.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r121147
2007-01-24 23:52:37 +00:00
Paolo Carlini 639b490be5 PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
2006-11-26  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
	* include/bits/stl_tree.h (_Rb_tree<>::_M_equal_range): Add.
	(equal_range(const key_type&)): Use it.

2006-11-26  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/23_containers/multiset/operations/1.cc: New.
	* testsuite/23_containers/set/operations/1.cc: Likewise.
	* testsuite/23_containers/multimap/operations/1.cc: Likewise.
	* testsuite/23_containers/map/operations/1.cc: Likewise.

From-SVN: r119221
2006-11-26 10:04:25 +00:00
Benjamin Kosnik 58e93a261f 2.cc: Fail on Darwin 8.[0-4].* only.
2006-10-04  Benjamin Kosnik  <bkoz@redhat.com>
	    Mike Stump  <mrs@apple.com>
	
	* testsuite/27_io/ios_base/storage/2.cc: Fail on Darwin 8.[0-4].* only.
	* testsuite/23_containers/vector/resize/1.cc: Same.


Co-Authored-By: Mike Stump <mrs@apple.com>

From-SVN: r117428
2006-10-04 07:57:34 +00:00
Benjamin Kosnik 9f9900dbb6 testsuite_allocator.h (allocation_tracker): To tracker_allocator_counter.
2006-10-03  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/util/testsuite_allocator.h (allocation_tracker): To
	tracker_allocator_counter.
	(allocation_tracker::allocationTotal): To get_allocation_count.
	(allocation_tracker::deallocationTotal): To get_deallocation_count.
	(allocation_tracker::constructCount): To get_construct_count.
	(allocation_tracker::destructCount): To get_destruct_count.	
	(allocation_tracker::resetCounts): To reset.
	(tracker_alloc): To tracker_allocator.
	* testsuite/util/performance/mem: Remove.
	* testsuite/util/performance/mem/mem_track_allocator_base.hpp: Remove.
	* testsuite/util/performance/mem/mem_track_allocator.hpp: Remove.
	* testsuite/27_io/basic_stringbuf/4.cc: Adjust for new names
	or includes.
	* testsuite/ext/hash_set/check_construct_destroy.cc: Same.
	* testsuite/ext/slist/check_construct_destroy.cc: Same.
	* testsuite/performance/ext/pb_ds/
	hash_random_int_erase_mem_usage.cc: Same.
	* testsuite/performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
	* testsuite/performance/ext/pb_ds/
	priority_queue_text_pop_mem_usage.cc: Same.
	* testsuite/23_containers/vector/capacity/2.cc: Same.
	* testsuite/23_containers/vector/cons/4.cc: Same.
	* testsuite/23_containers/vector/check_construct_destroy.cc: Same.
	* testsuite/23_containers/deque/cons/2.cc: Same.
	* testsuite/23_containers/deque/check_construct_destroy.cc: Same.
	* testsuite/23_containers/list/check_construct_destroy.cc: Same.
	* testsuite/23_containers/set/check_construct_destroy.cc: Same.
	* testsuite/util/testsuite_allocator.h
	* testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp
	* testsuite/util/performance/assoc/mem_usage/multimap_insert_test.hpp
	* testsuite/util/performance/assoc/mem_usage/erase_test.hpp
	* testsuite/util/testsuite_allocator.cc: Same.

From-SVN: r117408
2006-10-03 17:01:57 +00:00
Paolo Carlini 3b83e64bd3 PR libstdc++/29134 (vector<bool> bits)
2006-09-22  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/29134 (vector<bool> bits)
	* include/bits/stl_bvector.h (vector<bool>::max_size):
	Use allocator' max_size.
	* testsuite/23_containers/vector/bool/capacity/29134.cc: New.

	* testsuite/23_containers/deque/capacity/29134-2.cc: Minor tweak.
	* testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.

From-SVN: r117148
2006-09-22 17:51:01 +00:00
Paolo Carlini 1f9c69a9a3 re PR libstdc++/29134 (Has there been a serious attempt to define the max_size() member functions?)
2006-09-20  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/29134
	* include/bits/stl_list.h (list<>::max_size): Forward to allocator'
	max_size.
	* include/bits/stl_vector.h (vector<>::max_size): Likewise.
	* include/bits/stl_deque.h (deque<>::max_size): Likewise.
	* include/bits/stl_tree.h (_Rb_tree<>::max_size): Likewise.
	* include/tr1/hashtable (_Hashtable<>::max_size): Likewise.
	* testsuite/23_containers/vector/capacity/29134.cc: Add.
	* testsuite/23_containers/deque/capacity/29134.cc: Likewise.
	* testsuite/23_containers/list/capacity/29134.cc: Likewise.
	* testsuite/23_containers/set/capacity/29134.cc: Likewise.
	* testsuite/23_containers/map/capacity/29134.cc: Likewise.
	* testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
	* testsuite/23_containers/multimap/capacity/29134.cc: Likewise.	
	* testsuite/tr1/6_containers/unordered/capacity/29134-set.cc: Likewise.
	* testsuite/tr1/6_containers/unordered/capacity/29134-map.cc: Likewise.
	* testsuite/tr1/6_containers/unordered/capacity/29134-multiset.cc:
	Likewise.
	* testsuite/tr1/6_containers/unordered/capacity/29134-multimap.cc:
	Likewise.

	* include/bits/deque.tcc (deque<>::_M_new_elements_at_front,
	deque<>::_M_new_elements_at_back): Check for length errors.
	* testsuite/23_containers/deque/capacity/29134-2.cc: New.
	* testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.

	* include/tr1/hashtable (_Hashtable<>::_M_get_Value_allocator): Add.
	(_Hashtable<>::_M_allocate_node, _M_deallocate_node): Use it.
	* testsuite/tr1/6_containers/unordered/instantiate/set.cc: Add test.
	* testsuite/tr1/6_containers/unordered/instantiate/map.cc: Likewise.
	* testsuite/tr1/6_containers/unordered/instantiate/multiset.cc:
	Likewise.
	* testsuite/tr1/6_containers/unordered/instantiate/multimap.cc:
	Likewise.

From-SVN: r117099
2006-09-21 00:11:52 +00:00
Benjamin Kosnik a86151e10b res_mng: Remove.
2006-09-18  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/util/regression/res_mng: Remove.
	* testsuite/util/regression/res_mng/dbg_ex_allocator_base.cc: Merge..
	* testsuite/util/regression/res_mng/forced_exception.hpp: Merge...
	* testsuite/util/regression/res_mng/dbg_ex_allocator_base.hpp: Merge..
	* testsuite/util/regression/res_mng/dbg_ex_allocator.hpp: Merge..
	* testsuite/util/testsuite_allocator.h (throw_allocator): Merge...
	* include/ext/throw_allocator.h (throw_allocator): ... into this.
	* src/throw_allocator.cc: ...and this.
	* include/Makefile.am (ext_headers): Add.
	* include/Makefile.in: Regenerate.	
	* src/Makefile.am (sources): New.
	* src/Makefile.in: Regenerate.
	* testsuite/lib/libstdc++.exp: Subtract dbg_ex_allocator_base.cc.

	* include/ext/pb_ds/detail/map_debug_base.hpp: Adjust
	includes, names, and namespaces.
	* testsuite/23_containers/list/modifiers/insert/25288.cc: Same.
	* testsuite/util/regression/rand/priority_queue/detail/
	erase_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/priority_queue/detail/
	constructor_destructor_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/priority_queue/detail/
	insert_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/priority_queue/detail/
	modify_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/priority_queue/detail/
	split_join_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/priority_queue/detail/
	operator_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/priority_queue/
	container_rand_regression_test.hpp: Same.
	* testsuite/util/regression/rand/assoc/detail/
	subscript_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/assoc/detail/
	operator_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/assoc/detail/erase_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/assoc/detail/
	constructor_destructor_fn_imps.hpp
	* testsuite/util/regression/rand/assoc/detail/insert_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/assoc/detail/
	split_join_fn_imps.hpp: Same.
	* testsuite/util/regression/rand/assoc/
	container_rand_regression_test.hpp: Same.
	* testsuite/util/regression/priority_queue/common_type.hpp: Same.
	* testsuite/util/regression/assoc/common_type.hpp: Same.
	* testsuite/util/regression/basic_type.hpp: Same.
	* testsuite/util/rng/twister_rand_gen.cc: Tweak.

From-SVN: r117050
2006-09-19 02:33:21 +00:00
Paolo Carlini 976e25f422 stl_bvector.h (vector<bool>::_M_copy_aligned): New.
2006-08-09  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_bvector.h (vector<bool>::_M_copy_aligned): New.
	(vector<bool>::vector(const vector&), operator=(const vector&),
	reserve(size_type), _M_fill_insert(iterator, size_type, bool),
	_M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
	std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
	* testsuite/performance/23_containers/copy_construct/
	vector_bool.cc: New.

	* testsuite/23_containers/vector/bool/cons/1.cc: New.
	* testsuite/23_containers/vector/bool/cons/2.cc: Likewise.

	* include/bits/stl_bvector.h (vector<bool>::_M_fill): Remove.
	(fill(_Bit_iterator, _Bit_iterator, const bool&)): New.
	(vector<bool>::_M_fill_insert(iterator, size_type, bool)): Adjust.

	* include/bits/stl_bvector.h (_M_initialize_range(_InputIterator,
	_InputIterator, std::input_iterator_tag)): Remove redundant
	assignments.

	* include/bits/stl_algo.h (find(istreambuf_iterator<>,
	istreambuf_iterator<>, _CharT)): Adjust signature.
	* include/bits/streambuf_iterator.h: Likewise.
	* include/std/std_streambuf.h: Likewise.

From-SVN: r116049
2006-08-09 23:39:16 +00:00
Paolo Carlini 15ecde8ebf re PR libstdc++/28587 (vector<bool> is extremely slow (900x slower than it should be))
2006-08-05  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/28587
	* include/bits/stl_bvector.h (vector<bool>::_M_fill): New.
	(vector<bool>::_M_fill_insert): Use it.
	* testsuite/performance/23_containers/resize/vector_bool.cc: New.
	
	* testsuite/23_containers/vector/bool/modifiers/insert/1.cc: New.
	* testsuite/23_containers/vector/bool/capacity/1.cc: Likewise.

From-SVN: r115947
2006-08-05 10:11:13 +00:00
Benjamin Kosnik 45f388bb44 c++config: Simplify debug namespaces.
2006-02-21  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/c++config: Simplify debug namespaces.
	* include/ext/hash_set: Specialize insert_iterator after norm,
	debug containers have been (optionally) declared. Use nested
	namespaces.	
	* include/ext/hash_map: Same.
	* include/debug/hash_map.h (insert): Add specialization for value
	pointer types.
	* include/debug/hash_set.h (insert): Same.
	* include/debug/hash_multimap.h: Change __gnu_debug_def to __debug.
	* include/debug/set.h: Same.
	* include/debug/bitset: Same.
	* include/debug/multiset.h: Same.
	* include/debug/hash_multiset.h: Same.
	* include/debug/vector: Same.
	* include/debug/map.h: Same.
	* include/debug/deque: Same.
	* include/debug/list: Same.
	* include/debug/multimap.h. Same.
	* include/debug/macros.h: Use __gnu_debug.
	* include/debug/debug.h: Same.
	* include/debug/formatter.h: Same.
	* include/debug/safe_sequence.h: Same.
	* include/debug/functions.h: Same.
	* include/debug/safe_base.h: Same.
	* include/debug/safe_iterator.h: Same.
	* include/debug/safe_iterator.tcc: Same.
	(_M_invalidate): Adjust compare order.
	* include/debug/string: Change std::__gnu_debug to __gnu_debug.
	* include/ext/hashtable.h: Formatting fixes.
	* include/bits/stl_map.h: Formatting fixes.		
	* src/compatibility.cc: Adjust compatibility symbols for old debug
	mode model.	
	* src/debug_list.cc: Tweak.
	* src/debug.cc: Adjust namespaces.
	* docs/html/debug_mode.html: Adjust namespace names.
	* testsuite/25_algorithms/heap/heap.cc: Restore _GLIBCXX_DEBUG
	macro guards, as count values differ when in debug mode.	
	* testsuite/23_containers/vector/26412.cc: Move to...
	* testsuite/23_containers/vector/26412-1.cc: ... here.
	* testsuite/23_containers/vector/26412-2.cc: Add.

	* include/ext/pb_assoc/detail/standard_policies.hpp
	(PB_ASSOC_HASH_NAMESPACE): Remove, use __gnu_cxx::hash_map and
	std::equal_to.

	* configure.ac (libtool_VERSION): To 6:8:0.
	* configure: Regenerate.
	* config/abi/pre/gnu.ver: Revert to exporting __gnu_debug symbols.
	(GLIBCXX_3.4.8): New.
	* testsuite/testsuite_abi.cc: Add GLIBCXX_3.4.8 to known versions.

From-SVN: r111356
2006-02-22 00:57:24 +00:00
Benjamin Kosnik 845d2a4b7d re PR libstdc++/26142 (global debug namespace clashes everywhere)
2006-02-08  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/26142
	* include/debug/debug.h: Move debug alias inside namespace std,
	same with namespace __gnu_cxx. Add top-level __gnu_debug
	namespace.	
	* include/debug/hash_multimap.h: Nest within __gnu_cxx, not
	std. Also, change nesting namespace name from __gnu_debug_def to
	__gnu_debug.	
	* include/debug/hash_map.h: Same.
	* include/debug/hash_multiset.h: Same.
	* include/debug/hash_set.h: Same.
	* docs/html/debug.html: Same.
	* testsuite/23_containers/vector/26412.cc: New.
	* testsuite/23_containers/vector/invalidation/1.cc:  Correct
	qualifications for debug namespace change.
	* testsuite/23_containers/vector/invalidation/2.cc: Same.
	* testsuite/23_containers/vector/invalidation/3.cc: Same.
	* testsuite/23_containers/vector/invalidation/4.cc: Same.
	* testsuite/23_containers/deque/invalidation/1.cc: Same.
	* testsuite/23_containers/deque/invalidation/2.cc: Same.
	* testsuite/23_containers/deque/invalidation/3.cc: Same.
	* testsuite/23_containers/deque/invalidation/4.cc: Same.
	* testsuite/23_containers/multiset/invalidation/1.cc: Same.
	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
	* testsuite/23_containers/multimap/invalidation/1.cc: Same.
	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
	* testsuite/23_containers/bitset/invalidation/1.cc: Same.
	* testsuite/23_containers/bitset/cons/16020.cc: Same.
	* testsuite/23_containers/bitset/operations/13838.cc: Same.
	* testsuite/23_containers/list/invalidation/1.cc: Same.
	* testsuite/23_containers/list/invalidation/2.cc: Same.
	* testsuite/23_containers/list/invalidation/3.cc: Same.
	* testsuite/23_containers/list/invalidation/4.cc: Same.
	* testsuite/23_containers/set/invalidation/1.cc: Same.
	* testsuite/23_containers/set/invalidation/2.cc: Same.
	* testsuite/23_containers/map/invalidation/1.cc: Same.
	* testsuite/23_containers/map/invalidation/2.cc: Same.
	* testsuite/23_containers/map/modifiers/insert/16813.cc: Same.
	* testsuite/21_strings/basic_string/2.cc: Same.

From-SVN: r110787
2006-02-09 05:07:09 +00:00
Benjamin Kosnik 7ec4a5ce43 re PR libstdc++/26142 (global debug namespace clashes everywhere)
2006-02-08  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/26142
	* include/debug/debug.h: Move debug alias inside namespace std,
	same with namespace __gnu_cxx. Add top-level __gnu_debug
	namespace.	
	* include/debug/hash_multimap.h: Nest within __gnu_cxx, not
	std. Also, change nesting namespace name from __gnu_debug_def to
	__gnu_debug.	
	* include/debug/hash_map.h: Same.
	* include/debug/hash_multiset.h: Same.
	* include/debug/hash_set.h: Same.
	* docs/html/debug.html: Same.
	* testsuite/23_containers/vector/26412.cc: New.
	* testsuite/23_containers/vector/invalidation/1.cc:  Correct
	qualifications for debug namespace change.
	* testsuite/23_containers/vector/invalidation/2.cc: Same.
	* testsuite/23_containers/vector/invalidation/3.cc: Same.
	* testsuite/23_containers/vector/invalidation/4.cc: Same.
	* testsuite/23_containers/deque/invalidation/1.cc: Same.
	* testsuite/23_containers/deque/invalidation/2.cc: Same.
	* testsuite/23_containers/deque/invalidation/3.cc: Same.
	* testsuite/23_containers/deque/invalidation/4.cc: Same.
	* testsuite/23_containers/multiset/invalidation/1.cc: Same.
	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
	* testsuite/23_containers/multimap/invalidation/1.cc: Same.
	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
	* testsuite/23_containers/bitset/invalidation/1.cc: Same.
	* testsuite/23_containers/bitset/cons/16020.cc: Same.
	* testsuite/23_containers/bitset/operations/13838.cc: Same.
	* testsuite/23_containers/list/invalidation/1.cc: Same.
	* testsuite/23_containers/list/invalidation/2.cc: Same.
	* testsuite/23_containers/list/invalidation/3.cc: Same.
	* testsuite/23_containers/list/invalidation/4.cc: Same.
	* testsuite/23_containers/set/invalidation/1.cc: Same.
	* testsuite/23_containers/set/invalidation/2.cc: Same.
	* testsuite/23_containers/map/invalidation/1.cc: Same.
	* testsuite/23_containers/map/invalidation/2.cc: Same.
	* testsuite/23_containers/map/modifiers/insert/16813.cc: Same.
	* testsuite/21_strings/basic_string/2.cc: Same.

From-SVN: r110786
2006-02-09 04:31:38 +00:00
Paolo Carlini af8590d281 Implement list::splice (and merge) bits of N1599
2006-01-19  Paolo Carlini  <pcarlini@suse.de>

	Implement list::splice (and merge) bits of N1599
	* include/bits/stl_list.h (list<>::_M_check_equal_allocators): New.
	(list<>::splice(iterator, list&), splice(iterator, list&, iterator),
	splice(iterator, list&, iterator, iterator)): Use it.
	* include/bits/stl_list.h (list<>::merge(list&), merge(list&,
	_StrictWeakOrdering)): Likewise.
	* testsuite/23_containers/list/operators/5.cc: New.

From-SVN: r110011
2006-01-20 02:38:54 +00:00
Paolo Carlini f7cd797c5b re PR libstdc++/25658 (testsuite failure: 23_containers/deque/cons/assign/1.cc)
2006-01-09  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/25658
	* testsuite/23_containers/deque/cons/assign/1.cc: Divide
	sizes by 10.

From-SVN: r109499
2006-01-09 11:37:17 +00:00
Paolo Carlini cf1e03717a PR libstdc++/22102 (insert as close to hint as possible)
2006-01-08  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22102 (insert as close to hint as possible)
	* include/bits/stl_tree.h (_Rb_tree<>::_M_insert_lower,
	_M_insert_equal_lower): New.
	(_M_insert_equal(iterator, const _Val&),
	_M_insert_equal(const_iterator, const _Val&)): Use the above.
	* docs/html/ext/howto.html: Add an entry for DR 233.
	* testsuite/23_containers/multiset/modifiers/insert/22102.cc: New.
	* testsuite/23_containers/multimap/modifiers/insert/22102.cc: New.

	* testsuite/23_containers/set/insert/: Move...
	* testsuite/23_containers/set/modifiers/insert/: ...here.
	* testsuite/23_containers/map/insert/: Move...
	* testsuite/23_containers/map/modifiers/insert/: ...here.
	* testsuite/23_containers/multiset/insert/: Move...
	* testsuite/23_containers/multiset/modifiers/insert/: ...here.

From-SVN: r109473
2006-01-08 17:34:32 +00:00
Paolo Carlini fd09ac0cf7 stl_bvector.h (vector<bool>::erase(iterator, iterator)): Just use _M_erase_at_end.
2006-01-06  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_bvector.h (vector<bool>::erase(iterator,
	iterator)): Just use _M_erase_at_end.

2006-01-06  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_bvector.h (class vector<bool>): Move all the
	helpers under protected access mode, consistently with the primary
	vector template.
	(vector<bool>::_M_erase_at_end): Add.
	(erase(iterator, iterator), clear, resize, _M_fill_assign,
	_M_assign_aux): Use it.
	* testsuite/23_containers/vector/bool/modifiers/erase/1.cc: New.

2006-01-06  Paolo Carlini  <pcarlini@suse.de>

	Implement Option 3 of DR 431 for vector<bool>.
	* include/bits/stl_bvector.h (class _Bvector_base): Change to
	a struct, consistently with the primary vector template.
	(class vector<bool>): Adjust to protected inheritance, tidy
	typedefs.
	(_Bvector_base<>::_M_get_Bit_allocator): Add.
	(vector<bool>::vector(const vector&)): Use it.
	(_Bvector_base<>::get_allocator): Tidy.
	(vector<bool>::swap): Use __alloc_swap.
	* testsuite/23_containers/vector/bool/modifiers/swap/1.cc: New.
	* testsuite/23_containers/vector/bool/modifiers/swap/2.cc: New.

From-SVN: r109415
2006-01-06 11:23:02 +00:00
Paolo Carlini f7ace77f1f sso_string_base.h (__sso_string_base<>::_M_dataplus): Use _CharT_alloc_type as base class.
2006-01-04  Paolo Carlini  <pcarlini@suse.de>

        * include/ext/sso_string_base.h (__sso_string_base<>::_M_dataplus):
        Use _CharT_alloc_type as base class.
        (_M_get_allocator, _M_swap, _M_create, _M_destroy): Adjust.
        * include/ext/vstring.h (get_allocator): Tidy.

2006-01-04  Paolo Carlini  <pcarlini@suse.de>

	Implement Option 3 of DR 431 for all the containers.
	* include/bits/allocator.h (struct __alloc_swap): Add, swaps
	allocators, optimized to nothing in case they are empty.
	* include/bits/stl_deque.h (deque<>::swap): Use it.
	* include/bits/stl_list.h (list<>::swap): Likewise.
	* include/bits/stl_tree.h (_Rb_tree<>::swap): Likewise.
	* include/bits/stl_vector.h (vector<>::swap): Likewise.
	* include/tr1/hashtable (hashtable<>::swap): Likewise.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_swap):
	Likewise.
	* include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
	Likewise.
	* include/ext/vstring_util.h (__vstring_utility<>::_Alloc_hider):
	Clean-up (now vstring uses the generic __alloc_swap facility).
	* include/tr1/unordered_map: Adjust includes.
	* include/tr1/unordered_set: Likewise.
	* docs/html/ext/howto.html: Add an entry for DR 431.
	* testsuite/23_containers/deque/modifiers/swap.cc: Move to...
	* testsuite/23_containers/deque/modifiers/swap/1.cc: ... here.		
	* testsuite/23_containers/deque/modifiers/swap/2.cc: New.
	* testsuite/23_containers/deque/modifiers/swap/3.cc: New.
	* testsuite/23_containers/list/modifiers/swap.cc: Move to...
	* testsuite/23_containers/list/modifiers/swap/1.cc: ... here.		
	* testsuite/23_containers/list/modifiers/swap/2.cc: New.
	* testsuite/23_containers/list/modifiers/swap/3.cc: New.
	* testsuite/23_containers/vector/modifiers/swap.cc: Move to...
	* testsuite/23_containers/vector/modifiers/swap/1.cc: ... here.		
	* testsuite/23_containers/vector/modifiers/swap/2.cc: New.
	* testsuite/23_containers/vector/modifiers/swap/3.cc: New.
	* testsuite/23_containers/set/modifiers/swap.cc: Move to...
	* testsuite/23_containers/set/modifiers/swap/1.cc: ... here.		
	* testsuite/23_containers/set/modifiers/swap/2.cc: New.
	* testsuite/23_containers/set/modifiers/swap/3.cc: New.
	* testsuite/23_containers/map/modifiers/swap.cc: Move to...
	* testsuite/23_containers/map/modifiers/swap/1.cc: ... here.		
	* testsuite/23_containers/map/modifiers/swap/2.cc: New.
	* testsuite/23_containers/map/modifiers/swap/3.cc: New.
	* testsuite/23_containers/multiset/modifiers/swap.cc: Move to...
	* testsuite/23_containers/multiset/modifiers/swap/1.cc: ... here.		
	* testsuite/23_containers/multiset/modifiers/swap/2.cc: New.
	* testsuite/23_containers/multiset/modifiers/swap/3.cc: New.
	* testsuite/23_containers/multimap/modifiers/swap.cc: Move to...
	* testsuite/23_containers/multimap/modifiers/swap/1.cc: ... here.		
	* testsuite/23_containers/multimap/modifiers/swap/2.cc: New.
	* testsuite/23_containers/multimap/modifiers/swap/3.cc: New.
	* testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc: New.	
	* testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc: New.
	* testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc: New.	
	* testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc: New.
	* testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc: New.	
	* testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc: New.
	* testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc: New.	
	* testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc: New.

From-SVN: r109324
2006-01-04 11:34:45 +00:00
Paolo Carlini 31905f3498 stl_list.h (_List_base<>::_M_get_Node_allocator): Add.
2006-01-03  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_list.h (_List_base<>::_M_get_Node_allocator): Add.
	(_M_get_Tp_allocator, get_allocator): Tidy.
	(list<>::list(const list&), insert(iterator, size_type, const
	value_type&), insert(iterator, _InputIterator, _InputIterator)):
	Use _M_get_Node_allocator.
	* include/bits/stl_tree.h (_Rb_tree<>::_M_get_Node_allocator()): Add.
	(_Rb_tree(const _Rb_tree<>&): Use it.
	* include/bits/stl_deque.h (_Deque_base<>::_M_get_map_allocator,
	get_allocator): Tidy.
	* include/bits/stl_vector.h (_Vector_base<>::get_allocator): Tidy.
	* testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
	line numbers.
	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
	
	* testsuite/testsuite_allocator.h (uneq_allocator<>::swap): Fix.

	* testsuite/testsuite_allocator.h (class uneq_allocator): A simple
	non-empty testing allocator which can be endowed of a "personality"
	at construction time.

From-SVN: r109280
2006-01-03 13:19:23 +00:00
Chris Jefferson 8b5bc374b1 mt_allocator.h (__mt_alloc::__mt_alloc): Remove name of unused parameter.
2005-12-26  Chris Jefferson  <chris@bubblescope.net>

	* include/ext/mt_allocator.h (__mt_alloc::__mt_alloc): Remove
	name of unused parameter.
	* include/bits/stream_iterator.h (istream_iterator::istream_iterator):
	Construct _M_value.
	* include/debug/functions.h (__check_valid_range): Add
	__attribute__((unused)).
	* include/tr1/hashtable (hashtable::end): Remove name of unused
	parameter.
	* include/tr1/tuple_iterate.h (tuple::tuple): Likewise.
	(tuple::operator=): Add __attribute__((unused)).
	* include/tr1/functional (Fnv_hash<4>::hash): Add static_cast.
	(Fnv_hash<8>::hash): Likewise.

	* testsuite/25_algorithms/iter_swap/20577.cc (swap): Remove name of
	unused parameter.
	* testsuite/25_algorithms/unique_copy/check_type.cc (S2::S2,X2::X2):
	Likewise.
	* testsuite/22_locale/ctype/narrow/char/19955.cc (do_narrow): Likewise.
	* testsuite/22_locale/ctype/is/char/9858.cc (Derived::do_is, 
	Derived::do_scan_is, Derived::do_scan_not, Derived2::do_is,
	Derived2::do_scan_is, Derived2::do_scan_not): Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/char/12439_1.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/char/12439_3.cc (TP::do_put):
	Likewise.
	* testsuite/testsuite_io.h (fail_num_get::do_get, fail_num_put::do_put):
	Likewise.
	* testsuite/25_algorithms/find/17441.cc (find): Likewise.
	* testsuite/23_containers/vector/cons/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/vector/bool/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/list/cons/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/set/modifiers/16728.cc (test_container):
	Likewise.
	* testsuite/27_io/basic_ios/cons/char/3.cc (char_traits::to_char_type,
	to_int_type): Likewise.
	* testsuite/27_io/basic_filebuf/imbue/12206.cc (codecvt::do_out, do_in,
	do_unshift, do_length): Likewise.
	* testsuite/21_strings/basic_string/capacity/1.cc 
	(operator==(A<T>,A<T>), operator<(A<T>,A<T>),
	char_traits::to_char_type, char_traits::to_int_type): Likewise
	* testsuite/testsuite_character.h (ctype::do_is, ctype::do_scan_is,
	ctype::do_scan_not, do_toupper, do_tolower): Likewise.
	* testsuite/25_algorithms/replace_copy/check_type.cc (Z::operator=):
	Add missing return statement.
	* testsuite/25_algorithms/replace_copy_if/check_type.cc (Z::operator=):
	Likewise.
	* testsuite/testsuite_iterators.h (output_iterator_wrapper::operator=,
	random_access_iterator_wrapper::operator==): Likewise.
	* testsuite/20_util/functional/binders/1.cc (s::f_int_int_const,
	s::f_int_int, s::f_int_void_const, s::f_int_void): Likewise.
	* testsuite/27_io/types/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/write/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/write/char/1.cc (test01): Likewise.
	* testsuite/21_strings/c_strings/wchar_t/24559.cc (main): Likewise.
	* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc (check): Add static
	cast.
	* testsuite/27_io/basic_istream/ignore/char/2.cc (check): Likewise.
	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc (check): Likewise.
	* testsuite/27_io/basic_istream/getline/char/5.cc (check): Likewise.
	* testsuite/testsuite_allocator.h (check_new): Likewise.
	(check_deallocate_null): Add missing return value.
	* testsuite/ext/pool_allocator/allocate_chunk.cc (test01):
	Make variable unsigned.
	* testsuite/23_containers/vector/modifiers/erase/1.cc (N,N1,N2,N3,N4,
	N5,test01): Likewise.
	* testsuite/26_numerics/valarray/valarray_subset_assignment.cc
	(check_array): Likewise.
	(main): Removed unused variable.
	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc (test05):
	Removed unused variable.
	* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/flush/char/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/endl/char/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/ends/char/1.cc (test01): Likewise.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/
	assign/shared_ptr.cc (test01): Correct return type.	
	* testsuite/27_io/basic_filebuf/close/char/2.cc (test_02):
	Add default value to close_num.

From-SVN: r109062
2005-12-26 10:53:42 +00:00
Paolo Carlini 5f5c25d99d stl_algobase.h (fill(const _Deque_iterator&, const _Deque_iterator&, const _Tp&)): Deal, correctly, only with iterators (leave const_iterators alone).
2005-12-24  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill(const _Deque_iterator&,
	const _Deque_iterator&, const _Tp&)): Deal, correctly, only
	with iterators (leave const_iterators alone).

2005-12-24  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
	const _Deque_iterator<>&, const _Tp&)): Add.

	* testsuite/23_containers/deque/cons/assign/1.cc: New.

From-SVN: r109038
2005-12-24 10:01:45 +00:00
Paolo Carlini 1b4454bfd5 stl_deque.h (deque<>::resize, [...]): Avoid troubles with ADL, user defined operators and _Deque_iterator.
2005-12-19  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_deque.h (deque<>::resize, _M_fill_assign):
	Avoid troubles with ADL, user defined operators and _Deque_iterator.
	(operator-(const _Deque_iterator<>&, const _Deque_iterator<>&):
	Add overload for left and right iterators of the same type.
	* include/bits/deque.tcc (erase(iterator)): Avoid troubles with ADL,
	user defined operators and _Deque_iterator.
	* testsuite/23_containers/deque/types/1.cc: Add.
	
	* include/bits/deque.tcc (_M_insert_aux(iterator, size_type,
	const value_type&)): Qualify with std:: fill call.

From-SVN: r108827
2005-12-20 00:29:18 +00:00
Benjamin Kosnik 3cbc7af037 c++config: Add in revised namespace associations.
2005-12-18  Benjamin Kosnik  <bkoz@redhat.com>
	
	* include/bits/c++config: Add in revised namespace associations.
	_GLIBCXX_BEGIN_NAMESPACE: New macro.
	_GLIBCXX_END_NAMESPACE: Same.
	_GLIBCXX_BEGIN_NESTED_NAMESPACE: Same.
	_GLIBCXX_END_NESTED_NAMESPACE: Same.
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS]): Add gnu-versioned-namespace.
	* configure: Regenerated.
	* config.h.in: Same.
	* config/abi/pre/gnu-versioned-namespace.ver: New.
	* config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
	debug mode items. 
	* include/Makefile.am (${host_builddir}/c++config.h): Fill in
	values for __GLIBCXX__ and _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION.
	* include/Makefile.in: Regnerate.
	* src/compatibility.cc: Alias new, nested definitions to exported
	symbols from non-nested __gnu_debug.
	* src/Makefile.am:  Add in ENABLE_SYMVERS_GNU_NAMESPACE.
	* src/Makefile.in: Regenerate.
	
	* docs/html/debug_mode.html: Revise for nested design.
	* docs/html/debug.html: Use debug qualifications instead of
	__gnu_debug.
	* docs/html/configopts.html: Revise documentation for
	--enable-symvers.
	
	* include/debug/formatter: Simplify namespace qualifications for
	current, nested-only reality. Add top-level namespace alias,
	namespace debug, for debug-mode containers.
	* include/debug/safe_iterator.h: Same.	
	* include/debug/set.h: Same.
	* include/debug/hash_multimap.h: Same.
	* include/debug/hash_set.h: Same.
	* include/debug/bitset
	* include/debug/safe_sequence.h: Same.
	* include/debug/multiset.h: Same.
	* include/debug/safe_base.h: Same.
	* include/debug/functions.h: Same.
	* include/debug/safe_iterator.tcc
	* include/debug/hash_multiset.h: Same.
	* include/debug/vector
	* include/debug/map.h: Same.
	* include/debug/deque
	* include/debug/hash_map.h: Same.
	* include/debug/string
	* include/debug/macros.h: Same.
	* include/debug/list
	* include/debug/debug.h: Same.
	* include/debug/multimap.h: Same.	
	* src/debug.cc: Same.
	* testsuite/23_containers/vector/invalidation/1.cc: Cleanups.
	* testsuite/23_containers/vector/invalidation/2.cc: Same.
	* testsuite/23_containers/vector/invalidation/3.cc: Same.
	* testsuite/23_containers/vector/invalidation/4.cc: Same.
	* testsuite/23_containers/deque/invalidation/1.cc: Same.
	* testsuite/23_containers/deque/invalidation/2.cc: Same.
	* testsuite/23_containers/deque/invalidation/3.cc: Same.
	* testsuite/23_containers/deque/invalidation/4.cc: Same.
	* testsuite/23_containers/multiset/invalidation/1.cc: Same.
	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
	* testsuite/23_containers/multimap/invalidation/1.cc: Same.
	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
	* testsuite/23_containers/bitset/invalidation/1.cc: Same.
	* testsuite/23_containers/bitset/cons/16020.cc: Same.
	* testsuite/23_containers/bitset/operations/13838.cc: Same.
	* testsuite/23_containers/list/invalidation/1.cc: Same.
	* testsuite/23_containers/list/invalidation/2.cc: Same.
	* testsuite/23_containers/list/invalidation/3.cc: Same.
	* testsuite/23_containers/list/invalidation/4.cc: Same.
	* testsuite/23_containers/set/invalidation/1.cc: Same.
	* testsuite/23_containers/set/invalidation/2.cc: Same.
	* testsuite/23_containers/map/invalidation/1.cc: Same.
	* testsuite/23_containers/map/invalidation/2.cc: Same.
	* testsuite/23_containers/map/insert/16813.cc: Same.
	
	* include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
	friends.	
	* include/bits/stl_list.h: Same.
	* include/bits/stl_map.h: Same.
	* include/bits/stl_algobase.h: Same.
	* include/bits/localefwd.h: Same.
	* include/bits/valarray_array.tcc: Same.
	* include/bits/valarray_after.h: Same.
	* include/bits/gslice_array.h: Same.
	* include/bits/stl_queue.h: Same.
	* include/bits/gslice.h: Same.
	* include/bits/locale_facets.tcc: Same.
	* include/bits/locale_classes.h: Same.
	* include/bits/stl_set.h: Same.
	* include/bits/locale_facets.h: Same.
	* include/bits/stl_stack.h: Same.
	* include/bits/stl_iterator_base_types.h: Same.
	* include/bits/stl_heap.h: Same.
	* include/bits/indirect_array.h: Same.
	* include/bits/atomicity.h: Same.
	* include/bits/stream_iterator.h: Same.
	* include/bits/concurrence.h: Same.
	* include/bits/basic_string.h: Same.
	* include/bits/stl_multimap.h: Same.
	* include/bits/stl_pair.h: Same.
	* include/bits/basic_ios.tcc: Same.
	* include/bits/stl_raw_storage_iter.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/bits/stl_numeric.h: Same.
	* include/bits/ios_base.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/istream.tcc: Same.
	* include/bits/postypes.h: Same.
	* include/bits/stl_multiset.h: Same.
	* include/bits/mask_array.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/ostream.tcc: Same.
	* include/bits/slice_array.h: Same.
	* include/bits/boost_concept_check.h: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/stl_iterator_base_funcs.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/stl_algo.h: Same.
	* include/bits/stringfwd.h: Same.
	* include/bits/c++config
	* include/bits/stl_iterator.h: Same.
	* include/bits/valarray_array.h: Same.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/vector.tcc: Same.
	* include/bits/deque.tcc: Same.
	* include/bits/stl_bvector.h: Same.
	* include/bits/basic_string.tcc: Same.
	* include/bits/list.tcc: Same.
	* include/bits/streambuf_iterator.h: Same.
	* include/bits/valarray_before.h: Same.
	* include/bits/stl_construct.h: Same.
	* include/bits/stl_function.h: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/streambuf.tcc: Same.
	* include/bits/allocator.h: Same.
	* include/bits/stl_tree.h: Same.
	* include/bits/fstream.tcc: Same.
	* include/bits/stl_relops.h: Same.
	* include/bits/functexcept.h: Same.
	* include/std/std_valarray.h: Same.
	* include/std/std_iostream.h: Same.
	* include/std/std_streambuf.h: Same.
	* include/std/std_bitset.h: Same.
	* include/std/std_iosfwd.h: Same.
	* include/std/std_iomanip.h: Same.
	* include/std/std_fstream.h: Same.
	* include/std/std_limits.h: Same.
	* include/std/std_stdexcept.h: Same.
	* include/std/std_istream.h: Same.
	* include/std/std_complex.h: Same.
	* include/std/std_memory.h: Same.
	* include/std/std_ostream.h: Same.
	* include/std/std_sstream.h: Same.
	* include/c_std/std_csignal.h: Same.
	* include/c_std/std_cstdlib.h: Same.
	* include/c_std/std_cstdio.h: Same.
	* include/c_std/std_cstdarg.h: Same.
	* include/c_std/std_cctype.h: Same.
	* include/c_std/std_cmath.h: Same.
	* include/c_std/std_ctime.h: Same.
	* include/c_std/std_clocale.h: Same.
	* include/c_std/std_csetjmp.h: Same.
	* include/c_std/std_cwchar.h: Same.
	* include/c_std/std_cstring.h: Same.
	* include/c_std/std_cstddef.h: Same.
	* include/c_std/std_cwctype.h: Same.
	* include/backward/iterator.h: Same.
	* include/backward/set.h: Same.
	* include/backward/hashtable.h: Same.
	* include/backward/fstream.h: Same.
	* include/backward/tempbuf.h: Same.
	* include/backward/istream.h: Same.
	* include/backward/bvector.h: Same.
	* include/backward/stack.h: Same.
	* include/backward/rope.h: Same.
	* include/backward/complex.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/heap.h: Same.
	* include/backward/iostream.h: Same.
	* include/backward/function.h: Same.
	* include/backward/multimap.h: Same.
	* include/backward/pair.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/iomanip.h: Same.
	* include/backward/strstream
	* include/backward/slist.h: Same.
	* include/backward/tree.h: Same.
	* include/backward/vector.h: Same.
	* include/backward/deque.h: Same.
	* include/backward/multiset.h: Same.
	* include/backward/list.h: Same.
	* include/backward/map.h: Same.
	* include/backward/algobase.h: Same.
	* include/backward/hash_map.h: Same.
	* include/backward/algo.h: Same.
	* include/backward/queue.h: Same.
	* include/backward/streambuf.h: Same.
	* src/allocator-inst.cc: Same.
	* src/complex_io.cc: Same.
	* src/localename.cc: Same.
	* src/limits.cc: Same.
	* src/ios_failure.cc: Same.
	* src/locale-misc-inst.cc: Same.
	* src/streambuf-inst.cc: Same.
	* src/misc-inst.cc: Same.
	* src/concept-inst.cc: Same.
	* src/ios_locale.cc: Same.
	* src/pool_allocator.cc: Same.
	* src/fstream-inst.cc: Same.
	* src/istream-inst.cc: Same.
	* src/string-inst.cc: Same.
	* src/locale_init.cc: Same.
	* src/ctype.cc: Same.
	* src/strstream.cc: Same.
	* src/ostream-inst.cc: Same.
	* src/functexcept.cc: Same.
	* src/streambuf.cc: Same.
	* src/sstream-inst.cc: Same.
	* src/ios.cc: Same.
	* src/valarray-inst.cc: Same.
	* src/locale.cc: Same.
	* src/tree.cc: Same.
	* src/stdexcept.cc: Same.
	* src/istream.cc: Same.
	* src/compatibility.cc: Same.
	* src/locale-inst.cc: Same.
	* src/globals_io.cc: Same.
	* src/list.cc: Same.
	* src/ios_init.cc: Same.
	* src/locale_facets.cc: Same.
	* src/codecvt.cc: Same.

	* include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
	* include/tr1/boost_shared_ptr.h: Same.
	* include/tr1/tuple
	* include/tr1/hashtable
	* include/tr1/type_traits_fwd.h: Same.
	* include/tr1/unordered_set
	* include/tr1/functional
	* include/tr1/ref_fwd.h: Same.
	* include/tr1/utility
	* include/tr1/type_traits
	* include/tr1/array

	* include/ext/hashtable.h: Use _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx).
	* include/ext/typelist.h: Same.
	* include/ext/hash_map: Same.
	* include/ext/rc_string_base.h: Same.
	* include/ext/pool_allocator.h: Same.
	* include/ext/iterator: Same.
	* include/ext/rb_tree: Same.
	* include/ext/numeric: Same.
	* include/ext/vstring.tcc: Same.
	* include/ext/sso_string_base.h: Same.
	* include/ext/stdio_filebuf.h: Same.
	* include/ext/algorithm: Same.
	* include/ext/codecvt_specializations.h: Same.
	* include/ext/new_allocator.h: Same.
	* include/ext/array_allocator.h: Same.
	* include/ext/vstring_util.h: Same.
	* include/ext/vstring_fwd.h: Same.
	* include/ext/mt_allocator.h: Same.
	* include/ext/debug_allocator.h: Same.
	* include/ext/slist: Same.
	* include/ext/stdio_sync_filebuf.h: Same.
	* include/ext/hash_fun.h: Same.
	* include/ext/malloc_allocator.h: Same.
	* include/ext/functional: Same.
	* include/ext/bitmap_allocator.h: Same.
	* include/ext/pod_char_traits.h: Same.
	* include/ext/vstring.h: Same.
	* include/ext/ropeimpl.h: Same.
	* include/ext/hash_set: Same.
	* include/ext/memory: Same.
	* include/ext/rope: Same.
	* include/bits/boost_concept_check.h: Same.
	* include/bits/stl_iterator.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/concurrence.h: Same.
	* include/bits/atomicity.h: Same.
	* config/locale/gnu/numeric_members.cc: Same.
	* config/locale/gnu/collate_members.cc: Same.
	* config/locale/gnu/ctype_members.cc: Same.
	* config/locale/gnu/c_locale.cc: Same.
	* config/locale/gnu/codecvt_members.cc: Same.
	* config/locale/gnu/messages_members.cc: Same.
	* config/locale/gnu/c_locale.h: Same.
	* config/locale/gnu/monetary_members.cc: Same.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/ieee_1003.1-2001/c_locale.h: Same.
	* config/locale/generic/numeric_members.cc: Same.
	* config/locale/generic/collate_members.cc: Same.
	* config/locale/generic/ctype_members.cc: Same.
	* config/locale/generic/c_locale.cc: Same.
	* config/locale/generic/codecvt_members.cc: Same.
	* config/locale/generic/messages_members.cc: Same.
	* config/locale/generic/c_locale.h: Same.
	* config/locale/generic/monetary_members.cc: Same.
	* config/locale/generic/time_members.cc: Same.
	* config/os/aix/atomicity.h: Same.
	* config/os/irix/atomicity.h: Same.
	* config/cpu/powerpc/atomicity.h: Same.
	* config/cpu/cris/atomicity.h: Same.
	* config/cpu/ia64/atomicity.h: Same.
	* config/cpu/alpha/atomicity.h: Same.
	* config/cpu/m68k/atomicity.h: Same.
	* config/cpu/hppa/atomicity.h: Same.
	* config/cpu/mips/atomicity.h: Same.
	* config/cpu/sparc/atomicity.h: Same.
	* config/cpu/i386/atomicity.h: Same.
	* config/cpu/i486/atomicity.h: Same.
	* config/cpu/sh/atomicity.h: Same.
	* config/cpu/generic/atomicity.h: Same.
	* config/cpu/s390/atomicity.h: Same.
	* config/io/c_io_stdio.h: Same.
	* config/io/basic_file_stdio.cc: Same.
	* config/io/basic_file_stdio.h: Same.	
	* src/misc-inst.cc: Same.
	* src/concept-inst.cc: Same.
	* src/ext-inst.cc: Same.
	* src/string-inst.cc: Same.
	* src/pool_allocator.cc: Same.
	* src/bitmap_allocator.cc: Same.
	* src/mt_allocator.cc: Same.
	* libsupc++/exception: Same.
	* libsupc++/vterminate.cc: Same.
	* testsuite/ext/hash_map/1.cc: Explicitly qualify __gnu_cxx::hash_map.
	* testsuite/ext/hash_map/14648.cc: Same.	

	* libsupc++/eh_alloc.cc: Correct comment line spacing.

From-SVN: r108775
2005-12-19 00:56:05 +00:00
Paolo Carlini d2cc7f9266 stl_vector.h (vector(const vector&)): Use _M_get_Tp_allocator.
2005-12-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_vector.h (vector(const vector&)): Use
	_M_get_Tp_allocator.
	* include/bits/stl_deque.h (deque(const deque&)): Likewise.
	(_M_destroy_data): Adjust.

2005-12-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_deque.h (deque<>::_M_erase_at_end,
	_M_erase_at_begin, _M_destroy_data, _M_destroy_data_dispatch,
	_M_destroy_data_aux): New, optimize erase at begin() / end() and
	consistently use the "segmented iterator" optimization.
	(deque<>::~deque(), resize, clear, _M_assign_aux, _M_fill_assign):
	Use the above.
	* include/bits/deque.tcc (deque<>::operator=, _M_assign_aux): Same.
	(erase(iterator, iterator)): Likewise, clean-up.
	(erase(iterator)): Tweak, don't call copy unnecessarily. 
	(_M_destroy_data_aux): Define.
	* testsuite/23_containers/deque/modifiers/erase/1.cc: New.
	* testsuite/23_containers/deque/modifiers/erase/2.cc: Likewise.

From-SVN: r108727
2005-12-17 23:42:58 +00:00
Paolo Carlini 0cb855b7a6 re PR libstdc++/25288 (std::list insert members should have no effects if an exception is thrown)
2005-12-09  Paolo Carlini  <pcarlini@suse.de>
	    Howard Hinnant  <hhinnant@apple.com>

	PR libstdc++/25288
	* include/bits/stl_list.h (list<>::_M_insert_dispatch, _M_fill_insert):
	Remove.
	(_M_initialize_dispatch, _M_fill_initialize): Add.
	(list(size_type, const value_type&, const allocator_type&),
	list(const list&), list(_InputIterator, _InputIterator,
	const allocator_type&): Use the latter.
	(insert(iterator, size_type, const value_type&), insert(iterator,
	_InputIterator, _InputIterator)): Use construction & splice.
	* testsuite/23_containers/list/modifiers/insert/25288.cc: New.
	* testsuite/testsuite_allocator.h (class throw_allocator): Add.

	* include/bits/stl_list.h (list<>::insert, erase): Fix wrong comments.

Co-Authored-By: Howard Hinnant <hhinnant@apple.com>

From-SVN: r108313
2005-12-09 18:24:53 +00:00
Paolo Carlini bc9053abce re PR libstdc++/24617 (vector vs __erase_at_end)
2005-12-08  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_vector.h (vector<>::size, resize, capacity,
	operator[]): Avoid troubles with ADL, user defined operators
	and __normal_iterator.
	(_M_erase_at_end): Fix to take a pointer.
	(clear): Adjust call.
	* include/bits/vector.tcc (vector<>::insert(iterator, const
	value_type&), erase(iterator, iterator), operator=(const
	vector<>&), _M_assign_aux(input_iterator_tag), _M_insert_aux,
	_M_fill_insert, _M_range_insert): Likewise.
	(_M_fill_assign, _M_assign_aux(forward_iterator_tag)): Adjust
	_M_erase_at_end call.
	* testsuite/23_containers/vector/types/1.cc: New.

2005-12-08  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24617
	* include/bits/stl_vector.h (vector<>::_M_erase_at_end): New.
	(vector<>::clear, resize): Use it.
	* include/bits/vector.tcc (vector<>::erase(iterator, iterator),
	_M_fill_assign, _M_assign_aux): Likewise.

	* testsuite/23_containers/vector/modifiers/erase/1.cc: New.

From-SVN: r108227
2005-12-08 11:32:37 +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
Paolo Carlini e182017e46 re PR libstdc++/23781 (Implicit conversion from NULL to list<T>::iterator)
2005-09-11  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23781
	* include/bits/stl_list.h (_List_iterator<>::
	_List_iterator(_List_node_base*), _List_const_iterator<>::
	_List_const_iterator(const _List_node_base*)): Make explicit.
	(list<>::begin(), list<>::end(), list<>::pop_back()): Adjust
	consistently.
	* include/bits/list.tcc (list<>::insert, list<>::erase): Adjust
	consistently.
	* include/bits/stl_tree.h (_Rb_tree_iterator<>::
	_Rb_tree_iterator(_Link_type), _Rb_tree_const_iterator<>::
	_Rb_tree_const_iterator(_Link_type)): Make explicit.
	(_Rb_tree<>::begin(), _Rb_tree<>::end()): Adjust consistently.
	* include/ext/slist (_Slist_iterator<>::_Slist_iterator(_Node*)):
	Make explicit.
	(slist<>::erase(iterator), slist<>::erase(iterator, iterator)):
	Adjust consistently.
	* include/tr1/hashtable (hashtable_iterator<>::
	hashtable_iterator(hash_node<>**)): Make explicit.
	* testsuite/23_containers/list/23781.cc: New.
	* testsuite/23_containers/map/23781.cc: Likewise.
	* testsuite/23_containers/multimap/23781.cc: Likewise.
	* testsuite/23_containers/multiset/23781.cc: Likewise.
	* testsuite/23_containers/set/23781.cc: Likewise.
	* testsuite/ext/slist/23781.cc: Likewise.
	* testsuite/tr1/6_containers/unordered/23781.cc: Likewise.
	* testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
	line numbers.
	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.

	* include/tr1/array (array<>::begin(), array<>::end()): Adjust
	stylistically for consistency with the other containers.

From-SVN: r104139
2005-09-11 09:48:41 +00:00
Paolo Carlini e6494c9434 re PR libstdc++/23632 (std::vector<bool> in combination with debug mode fails to compile code)
2005-08-31  Paolo Carlini  <pcarlini@suse.de>
	    Kaspar Fischer <fischerk@inf.ethz.ch>

	PR libstdc++/23632
	* include/bits/stl_bvector.h (_Bit_iterator::operator[],
	_Bit_const_iterator::operator[]): Const-ify.
	* testsuite/23_containers/vector/bool/23632.cc: New.

Co-Authored-By: Kaspar Fischer <fischerk@inf.ethz.ch>

From-SVN: r103686
2005-08-31 17:01:57 +00:00
Paolo Carlini 8b5f07a224 PR libstdc++/23578 (DR 464 [Ready])
2005-08-29  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23578 (DR 464 [Ready])
	* include/bits/stl_map.h (class map): Add at(const key_type&)
	member functions.
	* include/bits/stl_vector.h (class vector): Add data() member
	functions.
	* include/debug/map.h (class map): Adjust consistently.
	* include/debug/vector (class vector): Likewise.
	* testsuite/23_containers/map/element_access/1.cc: New.
	* testsuite/23_containers/vector/data_access/1.cc: Likewise.
	* docs/html/ext/howto.html: Add an entry for DR 464.

From-SVN: r103609
2005-08-29 16:11:19 +00:00
Geoffrey Keating 96d06af84b 1.cc: XFAIL on darwin8.
* testsuite/23_containers/vector/resize/1.cc: XFAIL on darwin8.
	* testsuite/27_io/ios_base/storage/2.cc: Likewise.

From-SVN: r103377
2005-08-23 01:16:45 +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 2fecaef4af [multiple changes]
2005-06-06  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2004-09-24  Paolo Carlini  <pcarlini@suse.de>
		    Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/stl_list.h (list::list(size_type, value_type,
	const allocator_type&): Implement according to the letter of the
	standard, i.e., don't use two overloads, not equivalent in case
	of non default constructible T.
	(list::resize(size_type, const value_type&)): Fix the signature:
	according to the standard the second argument is by value; also,
	don't use two overloads.
	* include/bits/list.tcc (list::resize(size_type, const value_type&)):
	Adjust consistently the signature.
	* include/bits/stl_deque.h (deque::deque(size_type, value_type,
	const allocator_type&)): Likewise.
	(deque::resize(size_type, const value_type&)): Likewise.
	* include/bits/stl_vector.h (vector::vector(size_type, value_type,
	const allocator_type&)): Likewise.
	(vector::resize(size_type, const value_type&)): Likewise.
	* testsuite/testsuite_hooks.h: Add NonDefaultConstructible test type.
	* testsuite/23_containers/deque/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/list/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/map/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/multimap/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/multiset/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/set/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/vector/explicit_instantiation/2.cc: New.

	* include/bits/deque.tcc: Minor formatting fix.

From-SVN: r100668
2005-06-06 16:59:55 +00:00
Paolo Carlini 4fd20a8f82 re PR libstdc++/21770 (rebinding allocator::value type vs. container::value_type)
2005-06-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770
	* include/bits/stl_deque.h: Add concept-check. In class _Deque_base
	rebind _Alloc to  _Tp_alloc_type, change _Deque_impl to inherit from
	the latter and add _M_get_Tp_allocator() which returns it. Use
	everywhere _M_get_Tp_allocator() instead of get_allocator().
	* include/bits/deque.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_list.h: Add concept-check. In class _List_base
	rebind _Alloc to _Tp_alloc_type and add _M_get_Tp_allocator(), which
	returns the allocator (of type _Node_alloc_type) converted to
	_Tp_alloc_type. Use everywhere _M_get_Tp_allocator() instead of
	get_allocator().
	* include/bits/list.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_vector.h: Add concept-check. In class _Vector_base
	rebind _Alloc to _Tp_alloc_type, change _Vector_impl to inherit from
	the latter and add _M_get_Tp_allocator() which returns it. Use
	everywhere _M_get_Tp_allocator() instead of get_allocator().
	* include/bits/vector.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_map.h: Add concept-check. Rebind _Alloc to
	_Pair_alloc_type and use it for _Rb_tree.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_multiset.h: Add concept-check. Rebind _Alloc to
	_Key_alloc_type and use it for _Rb_tree.
	* include/bits/stl_set.h: Likewise.
	* include/bits/basic_string.h: Rebind _Alloc to _CharT_alloc_type and
	use it for the allocator typedefs.
	* testsuite/21_strings/basic_string/1.cc: New.
	* testsuite/23_containers/deque/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/deque/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/deque/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/list/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/list/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/list/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/map/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/map/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/map/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/multimap/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/multimap/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/multimap/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/multiset/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/multiset/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/multiset/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/set/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/set/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/set/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/vector/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/vector/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/vector/explicit_instantiation/3.cc: New.

From-SVN: r100546
2005-06-03 17:07:48 +00:00