Commit Graph

3925 Commits

Author SHA1 Message Date
Paolo Carlini 3b2524b126 hashtable.h: Fold in include/tr1_impl/hashtable.h for C++0x use.
2010-02-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/hashtable.h: Fold in include/tr1_impl/hashtable.h
	for C++0x use.
	* include/bits/hashtable_policy.h: New, copy and adjust for
	C++0x use, include/tr1_impl/hashtable_policy.h; fix erase and
	insert member functions per n3000.
	* include/bits/unordered_map.h: Likewise for include/tr1_impl/
	unordered_map.
	* include/bits/unordered_set.h: Likewise for include/tr1_impl/
	unordered_set.
	* include/Makefile.am: Adjust.
	* include/Makefile.in: Regenerate.
	* include/tr1/unordered_map: Adjust.
	* include/tr1/unordered_set: Likewise.
	* include/tr1_impl/unordered_map: Adjust, now used only by tr1.
	* include/tr1_impl/hashtable: Likewise.
	* include/tr1_impl/hashtable_policy.h: Likewise.
	* include/tr1_impl/unordered_set: Likewise.
	* include/std/unordered_map: Adjust and simplify includes.
	* include/std/unordered_set: Likewise.
	* include/debug/unordered_map: Adjuse erase and insert members.
	* include/debug/unordered_set: Likewise.
	* include/profile/unordered_map: Likewise.
	* include/profile/unordered_set: Likewise.
	* testsuite/util/exception/safety.h: Fix for the updated erase and
	insert member functions of the unordered_containers.
	* testsuite/23_containers/unordered_map/erase/1.cc: New.
	* testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/map_single.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/insert/array_syntax.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise.
	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/
	24061-multimap.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	24061-multimap.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	multimap_range.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	multimap_single.cc: Likewise.
	* testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
	* testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/erase/
	24061-multiset.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	24061-multiset.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	multiset_range.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	multiset_single.cc: Likewise.

	* testsuite/23_containers/set/operators/1_neg.cc: Tweak dg-errors
	to avoid spurious fails in debug-mode.
	* testsuite/23_containers/map/operators/1_neg.cc: Likewise.

From-SVN: r156661
2010-02-10 16:09:42 +00:00
Benjamin Kosnik 0eb95b0d69 streambuf: Adjust doxygen group markup.
2010-02-09  Benjamin Kosnik  <bkoz@redhat.com>

        * include/std/streambuf: Adjust doxygen group markup.
        * include/std/functional: Same.
        * include/ext/vstring.h: Same.
        * include/ext/pb_ds/assoc_container.hpp: Same.
        * include/ext/stdio_filebuf.h: Same.
        * include/ext/stdio_sync_filebuf.h: Same.
        * include/bits/localefwd.h: Same.
        * include/bits/functional_hash.h: Same.
        * include/bits/locale_classes.h: Same.
        * include/bits/locale_facets.h: Same.
        * include/bits/ios_base.h: Same.
        * include/bits/codecvt.h: Same.
        * include/bits/locale_facets_nonio.h: Same.

        * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
        * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.

From-SVN: r156644
2010-02-10 05:45:24 +00:00
Benjamin Kosnik 6cc5a79001 [multiple changes]
2010-02-08  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/42460
	* include/tr1_impl/regex: Fix quoting issues in doxygen markup.
	* include/bits/random.h: Fix multi-line doxygen function markup.

2010-02-08  Matthias Klose  <doko@debian.org>

	PR libstdc++/42460
	* include/std/istream: Fix '\' quoting in doxygen markup.

From-SVN: r156617
2010-02-09 04:49:49 +00:00
Ed Smith-Rowland 83c290e2d4 random.tcc (uniform_int_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Use make_unsigned instead of __add_unsigned and conditional instead of...
2010-02-08  Ed Smith-Rowland  <3dw4rd@verizon.net>

	* include/bits/random.tcc (uniform_int_distribution<>::
	operator()(_UniformRandomNumberGenerator&, const param_type&)):
	Use make_unsigned instead of __add_unsigned and conditional
	instead of __conditional_type.
	* include/std/random: Do not include <ext/type_traits.h> and
	<ext/numeric_traits.h>.

From-SVN: r156608
2010-02-08 17:42:12 +00:00
Paolo Carlini 240c7f7f57 re PR libstdc++/16896 (Use of non-reserved names in stl_list.h)
2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/16896
	* include/bits/stl_list.h (_List_node_base::transfer): Rename
	to _M_transfer.
	(_List_node_base::reverse): Rename to _M_reverse.
	(_List_node_base::hook): Rename to _M_hook.
	(_List_node_base::unhook): Rename to _M_unhook; adjust callers.
	* include/bits/list.tcc: Adjust callers.
	* src/list.cc: Adjust.
	* src/compatibility.cc: Likewise.
	* src/compatibility-list.cc: New.
	* src/compatibility-debug_list.cc: Likewise.
	* src/compatibility-parallel_list.cc: Likewise.
	* src/Makefile.am: Add.
	* src/Makefile.in: Regenerate.
	* config/abi/pre/gnu.ver: Export _M_* symbols.

	* src/hash.cc: Rename to hash-aux.cc.
	* src/compatibility-ldbl.cc: Adjust.
	* src/compatibility-c++0x.cc: Likewise.
	* src/hash_tr1.cc: Likewise.

	* src/hashtable.cc: Rename to hashtable-aux.cc.
	* src/hashtable_c++0x.cc: Adjust.
	* src/hashtable_tr1.cc: Likewise.

	* src/limits_c++0x.cc: Fold...
	* src/limits.cc... here.

From-SVN: r156578
2010-02-07 18:36:48 +00:00
Paolo Carlini f41e0f1046 stl_pair.h (pair<>::pair(_U1&&, const _T2&), [...]): Revert to std::is_convertible, basing on DR 811.
2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
	pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
	Revert to std::is_convertible, basing on DR 811.

From-SVN: r156570
2010-02-07 10:29:04 +00:00
Paolo Carlini 54f3822595 re PR libstdc++/27340 (valarray uses __cos which may conflict with libm functions)
2010-02-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/27340
	* include/bits/valarray_before.h: Uglify the structs wrapping
	cmath functions differently, eg, _Cos instead of __cos.
	* include/bits/valarray_after.h: Adjust.

From-SVN: r156555
2010-02-06 20:41:09 +00:00
Paolo Carlini 4e4d27aae5 future (swap(packaged_task<>&, packaged_task<>&)): Fix typo in last commit.
2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/future (swap(packaged_task<>&, packaged_task<>&)): Fix
	typo in last commit.

From-SVN: r156525
2010-02-05 17:25:12 +00:00
Paolo Carlini 1950140626 future (swap(packaged_task<>&, packaged_task<>&), [...]): Add; minor formatting fixes.
2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/future (swap(packaged_task<>&, packaged_task<>&),
	swap(promise<>&, promise<>&)): Add; minor formatting fixes.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust
	dg-error line number.
	* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/promise/cons/copy_neg.cc: Likewise.

From-SVN: r156522
2010-02-05 17:19:10 +00:00
Paolo Carlini 6989b63f39 stl_algobase.h (struct __iter_base): Rename to _Iter_base; add iterator_type typedef.
2010-02-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_algobase.h (struct __iter_base): Rename to
	_Iter_base; add iterator_type typedef.
	(struct __miter_base): Rename to _Miter_base.
	(struct __niter_base): Rename to _Niter_base.
	(__miter_base, __niter_base): Add, use the latter; adjust everywhere.

From-SVN: r156515
2010-02-05 10:55:54 +00:00
Benjamin Kosnik 2a60a9f652 re PR libstdc++/42460 (man page errors for generated libstdc++ man pages)
2010-02-04  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/42460
	* doc/doxygen/user.cfg.in: Update file list.
	* include/debug/safe_sequence.h: Doxygen markup fixes for '' and "".
	* include/debug/safe_base.h: Same.
	* include/debug/macros.h: Same.
	* include/tr1_impl/regex: Same.
	* include/std/iostream: Same.
	* include/std/streambuf: Same.
	* include/std/bitset: Same.
	* include/std/iosfwd: Same.
	* include/std/limits: Same.
	* include/std/fstream: Same.
	* include/std/istream: Same.
	* include/std/ostream: Same.
	* include/std/sstream: Same.
	* include/parallel/multiway_merge.h: Same.
	* include/parallel/for_each.h: Same.
	* include/parallel/workstealing.h: Same.
	* include/parallel/omp_loop_static.h: Same.
	* include/parallel/omp_loop.h: Same.
	* include/c_std/csignal: Same.
	* include/c_std/cstdlib: Same.
	* include/c_std/cstdio: Same.
	* include/c_std/cstdarg: Same.
	* include/c_std/cctype: Same.
	* include/c_std/cerrno: Same.
	* include/c_std/cmath: Same.
	* include/c_std/ciso646: Same.
	* include/c_std/ctime: Same.
	* include/c_std/clocale: Same.
	* include/c_std/climits: Same.
	* include/c_std/cassert: Same.
	* include/c_std/csetjmp: Same.
	* include/c_std/cwchar: Same.
	* include/c_std/cfloat: Same.
	* include/c_std/cstring: Same.
	* include/c_std/cstddef: Same.
	* include/c_std/cwctype: Same.
	* include/profile/iterator_tracker.h: Same.
	* include/profile/impl/profiler_trace.h: Same.
	* include/ext/vstring.h: Same.
	* include/ext/algorithm: Same.
	* include/ext/pb_ds/detail/pat_trie_/pat_trie_.h.pp: Same.
	* include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.h.pp: Same.
	* include/ext/pb_ds/detail/type_utils.hpp: Same.
	* include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same
	* include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same.
	* include/ext/rc_string_base.h: Same.
	* include/ext/stdio_sync_filebuf.h: Same.
	* include/ext/functional: Same.
	* include/ext/mt_allocator.h: Same.
	* include/bits/basic_ios.h: Same.
	* include/bits/stl_map.h: Same.
	* include/bits/stl_algobase.h: Same.
	* include/bits/stl_queue.h: 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/basic_string.h: Same.
	* include/bits/stl_multimap.h: Same.
	* include/bits/ios_base.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/stl_multiset.h: Same.
	* include/bits/stl_iterator_base_funcs.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/stl_algo.h: Same.
	* include/bits/stl_iterator.h: Same.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/random.tcc: Same.
	* include/bits/stl_function.h: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/random.h: Same.
	* include/bits/allocator.h: Same.
	* include/bits/locale_facets_nonio.h: Same.
	* include/c_global/csignal: Same.
	* include/c_global/cstdlib: Same.
	* include/c_global/cstdio: Same.
	* include/c_global/cstdarg: Same.
	* include/c_global/cctype: Same.
	* include/c_global/cerrno: Same.
	* include/c_global/cmath: Same.
	* include/c_global/ciso646: Same.
	* include/c_global/ctime: Same.
	* include/c_global/clocale: Same.
	* include/c_global/climits: Same.
	* include/c_global/cassert: Same.
	* include/c_global/csetjmp: Same.
	* include/c_global/cwchar: Same.
	* include/c_global/cfloat: Same.
	* include/c_global/cstring: Same.
	* include/c_global/cstddef: Same.
	* include/c_global/cwctype: Same.
	* include/tr1/hypergeometric.tcc: Same.
	* include/tr1/random.tcc: Same.
	* include/tr1/functional: Same.
	* include/tr1/random.h: Same.
	* include/backward/auto_ptr.h: Same.
	* include/backward/binders.h: Same.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust line numbers.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
	* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
	Same.
	* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
	Same.

From-SVN: r156502
2010-02-04 18:20:34 +00:00
Jonathan Wakely b7200e3fbe condition_variable (condition_variable_any): Provide definitions for all members.
2010-02-03  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/condition_variable (condition_variable_any): Provide
	definitions for all members.
	* src/condition_variable.cc (condition_variable_any): Adjust
	definitions.
	* config/abi/pre/gnu.ver: Adjust exports for condition_variable_any.
	* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/members/1.cc: New.
	* testsuite/30_threads/condition_variable_any/members/2.cc: New.
	* testsuite/30_threads/condition_variable_any/requirements/
	standard_layout.cc: Remove.
	* testsuite/30_threads/condition_variable_any/native_handle/
	typesizes.cc: Remove.

From-SVN: r156479
2010-02-03 20:16:22 +00:00
Paolo Carlini 23f8e984b7 vstring.h (__versa_string::shrink_to_fit): Fix for -fno-exceptions.
2010-02-02  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/vstring.h (__versa_string::shrink_to_fit): Fix
	for -fno-exceptions.

From-SVN: r156460
2010-02-03 00:38:52 +00:00
Benjamin Kosnik 036c0f63e1 allocator.h: Fix for -fno-exceptions.
2010-02-02  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/allocator.h: Fix for -fno-exceptions.
	* include/bits/basic_string.h (basic_string::shrink_to_fit): Same.

From-SVN: r156459
2010-02-03 00:20:05 +00:00
Paolo Carlini 15ecdcc6fc re PR libstdc++/42408 (Missing templatized seed())
2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42408
	* include/bits/random.h (linear_congruential_engine<>::
	linear_congruential_engine(seed_seq&),
	linear_congruential_engine<>::seed(seed_seq&),
	mersenne_twister<>::mersenne_twister(seed_seq&),
	mersenne_twister<>::seed(seed_seq&),
	subtract_with_carry_engine<>::subtract_with_carry_engine(seed_seq&),
	subtract_with_carry_engine<>::seed(seed_seq&),
	discard_block_engine<>::discard_block_engine(seed_seq&),
	discard_block_engine<>::seed(seed_seq&),
	independent_bits_engine<>::independent_bits_engine(seed_seq&),
	independent_bits_engine<>::seed(seed_seq&),
	shuffle_order_engine<>::shuffle_order_engine(seed_seq&),
	shuffle_order_engine<>::seed(seed_seq&)): Templatize.
	* include/bits/random.tcc: Adjust.
	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
	seed_seq.cc: New.
	* testsuite/26_numerics/random/mersenne_twister_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/
	cons/seed_seq.cc: Likewise.

From-SVN: r156430
2010-02-01 19:45:23 +00:00
Paolo Carlini 1e3ca17d52 forward_list.h (forward_list<>::resize(size_type), [...]): Only declare.
2010-02-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/forward_list.h (forward_list<>::resize(size_type),
	forward_list(size_type)): Only declare.
	* include/bits/forward_list.tcc (forward_list<>::resize(size_type),
	forward_list(size_type)): Define, don't assume CopyConstructible.
	* testsuite/23_containers/forward_list/cons/10.cc: New.
	* testsuite/23_containers/forward_list/modifiers/6.cc: Likewis.
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Adjust dg-error line numbers.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: Likewise.

	* include/bits/forward_list.h: Use _M_get_Node_allocator throughout.

From-SVN: r156426
2010-02-01 13:10:12 +00:00
Paolo Carlini 22977dce58 generation_prohibited.c: Remove, swap can indeed throw (DR 774).
2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/23_containers/array/requirements/exception/
	generation_prohibited.c: Remove, swap can indeed throw (DR 774).

	* testsuite/util/exception/safety.h (insert_base<__versa_string>): Fix.
	* testsuite/util/testsuite_container_traits.h
	(traits<__versa_string>): Enable insert tests.

2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/forward_list.h (forward_list<>::insert_after
	(const_iterator, size_type, const _Tp&), insert_after(const_iterator,
	_InputIterator, _InputIterator), insert_after(const_iterator,
	std::initializer_list<>)): Fix return type per N3000.
	* testsuite/23_containers/forward_list/ext_pointer/modifiers/2.cc:
	Adjust.
	* testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Adjust dg-error line numbers.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: Likewise.

From-SVN: r156419
2010-01-31 22:52:25 +00:00
Paolo Carlini 6e4a660f12 revert: condition_variable (condition_variable_any:: wait<>(_Lock&)): Provide definition.
2010-01-31  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert last changes. Also revert, among the previous changes:
	* include/std/condition_variable (condition_variable_any::
	wait<>(_Lock&)): Provide definition.

From-SVN: r156403
2010-01-31 16:54:49 +00:00
Paolo Carlini 023cee968b condition_variable (condition_variable_any:: __wait_until_impl): Add.
2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/condition_variable (condition_variable_any::
	__wait_until_impl): Add.
	(condition_variable_any::wait_until): Provide definitions.
	* testsuite/30_threads/condition_variable_any/members/2.cc: New.
	* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
	Likewise.

	* testsuite/30_threads/condition_variable/members/1.cc: Minor
	stylistic changes.
	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.

From-SVN: r156367
2010-01-29 22:46:31 +00:00
Paolo Carlini cdf5f5a34d condition_variable (enum class cv_status): Add and use it throughout, per N3000.
2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/condition_variable (enum class cv_status): Add and
	use it throughout, per N3000.
	(condition_variable_any::wait<>(_Lock&), wait<>(_Lock&, _Predicate),
	wait_until<>(_Lock&, const chrono::time_point<>&, _Predicate)):
	Provide definitions.
	* src/condition_variable.cc (condition_variable_any::notify_one,
	condition_variable_any::notify_all): Likewise.
	* config/abi/pre/gnu.ver: Export.
	* testsuite/30_threads/condition_variable_any/requirements/
	typedefs.cc: New.
	* testsuite/30_threads/condition_variable_any/requirements/
	standard_layout.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/1.cc: Adjust.
	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Adjust
	dg-error line numbers.
	* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
	Likewise.

From-SVN: r156358
2010-01-29 16:59:55 +00:00
François Dumont a2fe92030c stl_algobase.h (struct __iter_base): Add.
2010-01-28  François Dumont  <francois.cppdevs@free.fr>

	* include/bits/stl_algobase.h (struct __iter_base): Add.
	(__niter_base, __miter_base): Adjust, use the latter.

From-SVN: r156335
2010-01-28 22:29:52 +00:00
Richard Guenther 77597d3907 re PR libstdc++/42832 (Revisit std::function for aliasing issues and efficiency)
2010-01-27  Richard Guenther  <rguenther@suse.de>

	PR libstdc++/42832
	* include/std/functional (function<>::swap): Perform bytewise
	swap of _M_functor.
	* include/tr1/functional (function<>::swap): Likewise.

From-SVN: r156290
2010-01-27 15:49:00 +00:00
Daniel Frey 2b054f631a functional: Use enable_if instead of __enable_if throughout, do not include ext/type_traits.h.
2010-01-26  Daniel Frey  <d.frey@gmx.de>

	* include/std/functional: Use enable_if instead of __enable_if
	throughout, do not include ext/type_traits.h.
	(is_placeholder, is_bind_expression): Use integral_constant.

From-SVN: r156246
2010-01-26 13:33:06 +00:00
Daniel Frey 0d9709e1bf functional (_Index_tuple, [...]): Simplify and speed-up.
2010-01-22  Daniel Frey  <d.frey@gmx.de>

	* include/std/functional (_Index_tuple, _Build_index_tuple):
	Simplify and speed-up.

From-SVN: r156178
2010-01-22 20:50:15 +00:00
Jonathan Wakely b3eed6fe78 re PR libstdc++/42201 ([C++0x] std::vector<std::unique_future<T>>::push_back fails)
2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>

        PR libstdc++/42201
	* include/std/future: Update to latest WP.
	* src/functexcept.cc (__throw_future_error): Use make_error_code.
	* testsuite/30_threads/async/any.cc: New.
	* testsuite/30_threads/async/async.cc: New.
	* testsuite/30_threads/async/sync.cc: New.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: New.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
	* testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
	* testsuite/30_threads/shared_future/cons/default.cc: New.
	* testsuite/30_threads/shared_future/cons/assign.cc: New.
	* testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/move.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/move_assign.cc: New.
	* testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
	* testsuite/30_threads/shared_future/members/has_value.cc: Remove.
	* testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
	* testsuite/30_threads/shared_future/members/valid.cc: New.
	* testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
	* testsuite/30_threads/unique_future/cons/default.cc: New.
	* testsuite/30_threads/unique_future/cons/move_assign.cc: New.
	* testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/unique_future/cons/move.cc: Adjust.
	* testsuite/30_threads/unique_future/requirements/
        explicit_instantiation.cc: Adjust.
	* testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
	* testsuite/30_threads/unique_future/members/has_value.cc: Remove.
	* testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
	* testsuite/30_threads/unique_future/members/valid.cc: New.
	* testsuite/30_threads/unique_future/members/get.cc: Adjust.
	* testsuite/30_threads/unique_future/members/get2.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
	* testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
	* testsuite/30_threads/promise/cons/alloc.cc: New.
	* testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/promise/cons/move.cc: Adjust.
	* testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
	* testsuite/30_threads/promise/members/get_future.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value.cc: Adjust.
	* testsuite/30_threads/promise/members/set_exception.cc: Adjust.
	* testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value2.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value3.cc: Adjust.
	* testsuite/30_threads/promise/members/swap.cc: Adjust.

From-SVN: r156097
2010-01-21 00:01:47 +00:00
Johannes Singler 70202e48b6 re PR libstdc++/42712 (search_n/iterator.cc times out in parallel-mode)
2010-01-19  Johannes Singler  <singler@kit.edu>

        PR libstdc++/42712
        * include/parallel/settings.h (_Settings): Add search_minimal_n.
        * include/parallel/algo.h (__search_switch):
        Add serial fallback for too small inputs.
        (__search_n_switch): Likewise.  Call serial fallback on higher level
        to gain special treatment for __count 0 or 1.
        * testsuite/25_algorithms/search_n/iterator.cc:
        Reenable full test depth for parallel mode.

From-SVN: r156036
2010-01-19 11:18:03 +00:00
Daniel Frey 0238e6c9f2 functional (_Bind<_Functor(_Bound_args...)>:: operator()): "Pass" _Result to __call*.
2010-01-18  Daniel Frey  <d.frey@gmx.de>

	* include/std/functional (_Bind<_Functor(_Bound_args...)>::
	operator()): "Pass" _Result to __call*.
	(_Bind<_Functor(_Bound_args...)>::__call*): Adjust, simplify.

From-SVN: r156007
2010-01-18 10:41:30 +00:00
Johannes Singler 4d62f1d022 base.h (__unary_negate): Correct comment.
2010-01-18  Johannes Singler  <singler@kit.edu>

        * include/parallel/base.h (__unary_negate): Correct comment.

From-SVN: r156003
2010-01-18 08:44:45 +00:00
Paolo Carlini 8232dc6427 functional (_Bind<_Functor(_Bound_args...)>::__call): Rename const version to __call_c and remove _Sfinae template parameter.
2010-01-16  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/functional (_Bind<_Functor(_Bound_args...)>::__call):
	Rename const version to __call_c and remove _Sfinae template
	parameter.
	(_Bind<_Functor(_Bound_args...)>::operator()): Adjust.

	* include/std/functional: Pass everywhere temporary tuple<_Args...>
	arguments by rvalue reference. 

	* testsuite/20_util/bind/cv_quals.cc: New.

	* testsuite/20_util/bind/ref2.cc: Add missing test variables.

From-SVN: r155978
2010-01-17 13:29:41 +00:00
Paolo Carlini 5f3e3df666 cstring (memchr): Forward to the builtin.
2010-01-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/c_std/cstring (memchr): Forward to the builtin.
	* include/c_std/cstring: Remove redundant casts; use names consistent
	with the letter of the Standard.
	* include/c_global/cstring: Likewise.

From-SVN: r155912
2010-01-14 18:15:37 +00:00
Benjamin Kosnik 2a2ace66e9 iterator_tracker.h: Add copyright.
2010-01-13  Benjamin Kosnik  <bkoz@redhat.com>

	* include/profile/iterator_tracker.h: Add copyright.

From-SVN: r155864
2010-01-13 18:31:25 +00:00
Benjamin Kosnik a2edd3e945 run_doxygen: Correct nested scope on the man pages.
2010-01-07  Benjamin Kosnik  <bkoz@redhat.com>

	* scripts/run_doxygen: Correct nested scope on the man pages.
	* doc/xml/faq.xml: Edits, linkcheck, doxygen link reassociate.
	* doc/xml/manual/mt_allocator.xml: Same.
	* doc/xml/manual/allocator.xml: Same.
	* doc/xml/manual/codecvt.xml: Same.
	* doc/xml/manual/backwards_compatibility.xml: Same.
	* doc/xml/manual/concurrency.xml: Same.
	* doc/xml/manual/parallel_mode.xml: Same.
	* doc/xml/manual/io.xml: Same.
	* doc/xml/manual/support.xml: Same.
	* doc/xml/manual/evolution.xml: Same.
	* doc/xml/manual/using.xml: Same.
	* doc/xml/manual/extensions.xml: Same.
	* doc/xml/manual/appendix_contributing.xml: Same.
	* doc/xml/manual/prerequisites.xml: Same.
	* doc/xml/manual/diagnostics.xml: Same.
	* doc/xml/manual/spine.xml: Same.
	* doc/xml/manual/status_cxx200x.xml: Same.
	* doc/xml/manual/test.xml: Same.
	* doc/xml/spine.xml: Same.
	* doc/html/*: Regenerate.

	* include/profile/impl/profiler.h: Remove duplicate markup.

From-SVN: r155827
2010-01-12 01:37:06 +00:00
Jonathan Wakely d90d97ff9c re PR libstdc++/24803 ([c++0x] reference_wrapper and pointers to member functions)
2010-01-12  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/24803
	PR libstdc++/35569
	PR libstdc++/42593
	* include/std/functional (bind): Forward rvalues and detect correct
	result type of bound function object.
	* include/std/mutex (call_once): Specify bind result type.
	* testsuite/20_util/reference_wrapper/invoke.cc: Remove invalid tests.
	* testsuite/20_util/reference_wrapper/24803.cc: Remove invalid tests
	and enable FIXME tests.
	* testsuite/20_util/bind/35569.cc: New.
	* testsuite/20_util/bind/ref2.cc: New.
	* testsuite/20_util/bind/38889.cc: New.
	* testsuite/20_util/bind/ref_neg.cc: New.
	* testsuite/20_util/bind/42593.cc: New.

From-SVN: r155826
2010-01-12 00:53:30 +00:00
Paolo Carlini 31380bc4c5 base.h (decode2): Rename to __decode2.
2010-01-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/base.h (decode2): Rename to __decode2.
	(binder2nd): Likewise to __binder2nd.
	* include/parallel/quicksort.h: Adjust callers.
	* include/parallel/balanced_quicksort.h: Likewise.
	* include/parallel/partition.h: Likewise.
	* include/parallel/queue.h: Likewise.

	* include/parallel/algo.h: Qualify with std:: binder2nd use.

From-SVN: r155825
2010-01-12 00:51:50 +00:00
Paolo Carlini 8b6f089bcb string (basic_string<>::basic_string(basic_string&&), [...]): Add.
2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/string (basic_string<>::basic_string(basic_string&&),
	operator=(basic_string&&), assign(basic_string&&)): Add.

	* include/debug/string: Fully qualify initializer_list with std; fix
	_Allocator misspellings as _Alloc.

From-SVN: r155790
2010-01-10 16:15:58 +00:00
Paolo Carlini 10154e0d52 basic_string.h (basic_string<>:: basic_string(basic_string&&), [...]): Add.
2010-01-10  Paolo Carlini  <paolo.carlini@oracle.com>

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

From-SVN: r155788
2010-01-10 13:38:47 +00:00
Silvius Rus a1360f5702 libstdc++ profile mode bug fixes and minor updates
From-SVN: r155786
2010-01-10 08:25:23 +00:00
Paolo Carlini 0462fd5e01 set.h: Revert last change, per DR 1204 [Ready]; mention the latter in comment.
2010-01-09  Paolo Carlini  <paolo.carlini@oracle.com>

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

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

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

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

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

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

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

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

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

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

From-SVN: r155733
2010-01-08 13:01:24 +00:00
Paolo Carlini 3095eb8e4c locale_facets_nonio.tcc (time_put<>::do_put): Avoid pointless __builtin_alloca use.
2010-01-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
	pointless __builtin_alloca use.

From-SVN: r155697
2010-01-07 17:20:45 +00:00
Paolo Carlini 2e8e6a99ee re PR libstdc++/26701 (std::time_get parses only 2 digits of year, in en_GB locale.)
2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/26701
	* include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
	Encode short two digits over four parsings to negative numbers.
	(time_get<>::_M_extract_via_format): Adjust, accept both two digits
	and four digits for both 'y' and 'Y'.
	(time_get<>::do_get_year): Call time_get<>::_M_extract_num.
	* doc/xml/manual/prerequisites.xml: Add en_GB.
	* testsuite/lib/libstdc++.exp: Adjust
	* testsuite/22_locale/time_get/get_date/char/26701.cc: New.
	* testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.

From-SVN: r155685
2010-01-07 00:22:51 +00:00
Paolo Carlini ac2bb43770 re PR libstdc++/38081 (time_get<>::do_get_weekday does not always recognize full names of weekdays)
2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/38081
	* include/bits/locale_facets_nonio.h (time_get<>::
	_M_extract_wday_or_month): New, declare.
	* include/bits/locale_facets_nonio.tcc (time_get<>::
	_M_extract_wday_or_month): Define.
	(time_get<>::do_get_weekday, time_get<>::do_get_monthname): Use it.
	* config/abi/pre/gnu.ver: Export new symbols.
	* doc/xml/manual/prerequisites.xml: Add ru_RU.UTF-8 and
	ru_RU.ISO-8859-5.
	* testsuite/lib/libstdc++.exp: Adjust.
	* testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: New.
	* testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.

From-SVN: r155659
2010-01-05 20:05:20 +00:00
Paolo Carlini ab1c1187c3 list: Implement DR 1133 here too.
2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/profile/list: Implement DR 1133 here too.

	* testsuite/25_algorithms/set_intersection/34730.cc: Do not force
	debug-mode, leads to spurious failures in profile-mode.
	* testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
	* testsuite/25_algorithms/lower_bound/33613.cc: Likewise.
	* testsuite/25_algorithms/set_difference/35541.cc: Likewise.
	* testsuite/21_strings/basic_string/40160.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/debug_mode.cc:
	Likewise.
	* testsuite/23_containers/multimap/14340.cc: Likewise.
	* testsuite/23_containers/bitset/18604.cc: Likewise.
	* testsuite/23_containers/set/14340.cc: Likewise.
	* testsuite/23_containers/set/18604.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	debug_mode.cc: Likewise.
	* testsuite/23_containers/vector/
	debug_mode_requires_reallocation-1.cc: Likewise.
	* testsuite/23_containers/vector/
	debug_mode_requires_reallocation-2.cc: Likewise.
	* testsuite/23_containers/vector/14340.cc: Likewise.
	* testsuite/23_containers/vector/15523.cc: Likewise.
	* testsuite/23_containers/vector/18604.cc: Likewise.
	* testsuite/23_containers/deque/14340.cc: Likewise.
	* testsuite/23_containers/deque/18604.cc: Likewise.
	* testsuite/23_containers/multiset/14340.cc: Likewise.
	* testsuite/23_containers/list/operations/35969.cc: Likewise.
	* testsuite/23_containers/list/14340.cc: Likewise.
	* testsuite/23_containers/list/18604.cc: Likewise.
	* testsuite/23_containers/map/14340.cc: Likewise.
	* testsuite/23_containers/map/18604.cc: Likewise.

	* testsuite/26_numerics/random/uniform_real_distribution/
	cons/parms_neg.cc: Remove, isn't testing anything.
	* testsuite/26_numerics/random/uniform_int_distribution/
	cons/parms_neg.cc: Likewise.
	* testsuite/tr1/5_numerical_facilities/random/uniform_int/
	cons/range_neg.cc: Likewise.

	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/2.cc: Do not instantiate for
	non-defaultconstructible mapped_type.

From-SVN: r155603
2010-01-04 01:58:21 +00:00
Paolo Carlini 5ab06c6dfe set.h: Implement DR 130 here too.
2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/set.h: Implement DR 130 here too.
	* include/debug/multiset.h: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/profile/set.h: Implement DR 130 fully.
	* include/profile/multiset.h: Likewise.
	* include/profile/map.h: Likewise.
	* include/profile/multimap.h: Likewise.
	* include/debug/list: Implement DR 1133 here too.
	* include/ext/pb_ds/detail/debug_map_base.hpp: Comment out for
	now uses of __gnu_cxx::throw_allocator.
	* testsuite/21_strings/basic_string/40160.cc: Don't pass
	explicitly -D_GLIBCXX_DEBUG, doesn't play well with profile-mode
	testing.

From-SVN: r155594
2010-01-03 20:30:28 +00:00
Paolo Carlini eb07a8f567 bitset (bitset<>::bitset(unsigned long long)): Add in C++0x mode.
2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/profile/bitset (bitset<>::bitset(unsigned long long)): Add
	in C++0x mode.
	* include/debug/bitset (bitset<>::bitset(unsigned long long)): 
	Likewise.

From-SVN: r155589
2010-01-03 16:17:44 +00:00
Paolo Carlini 5004040e8d hashtable (_Hashtable<>): Remove insert_return_type typedef.
2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/tr1_impl/hashtable (_Hashtable<>): Remove insert_return_type
	typedef.
	* include/profile/unordered_map (unordered_map<>::insert(const
	value_type&), unordered_multimap<>::insert(const value_type&)): Adjust.
	* include/profile/unordered_set (unordered_set<>::insert(const
	value_type&), unordered_multimap<>::insert(const value_type&)):
	Likewise.

From-SVN: r155587
2010-01-03 14:50:09 +00:00
Paolo Carlini a8685e159e stl_pair.h (pair<>::pair(_U1&&, const _T2&), [...]): Use std::is_constructible instead of std::is_convertible.
2010-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
	pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
	Use std::is_constructible instead of std::is_convertible.

From-SVN: r155585
2010-01-03 12:06:59 +00:00
Benjamin Kosnik 3c0f2830ac PR libstdc++/21772 part 3
2009-12-31  Benjamin Kosnik  <bkoz@redhat.com>

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

From-SVN: r155545
2010-01-01 03:38:58 +00:00
Paolo Carlini 0d6f2a8037 bitset (bitset<>::bitset(unsigned long long), [...]): Add in C++0x mode.
2009-12-31  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/bitset (bitset<>::bitset(unsigned long long),
	_Base_bitset<>::_Base_bitset(unsigned long long)): Add
	in C++0x mode.
	* testsuite/23_containers/bitset/cons/3.cc: New.

From-SVN: r155539
2009-12-31 17:31:28 +00:00