Commit Graph

1956 Commits

Author SHA1 Message Date
Paolo Carlini
024615bfed testsuite_common_types.h (has_bitwise_operators): Avoid -Wall warnings.
2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/util/testsuite_common_types.h (has_bitwise_operators):
	Avoid -Wall warnings.

From-SVN: r156221
2010-01-25 23:25:48 +00:00
Paolo Carlini
315a716efb 6.cc: Use an int as loop variable, to avoid -Wall warnings.
2010-01-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/22_locale/time_get/get_monthname/char/6.cc: Use an int
	as loop variable, to avoid -Wall warnings.
	* testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.

	* testsuite/20_util/reference_wrapper/24803.cc: Remove unused vars.
	* testsuite/20_util/reference_wrapper/invoke.cc: Likewise.

From-SVN: r156219
2010-01-25 18:02:41 +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
Janis Johnson
bd9b2e5379 re PR libstdc++/21769 (per-file control over PCH inclusion)
2010-01-20  Janis Johnson  <janis187@us.ibm.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/21769
	* testsuite/lib/dg-options.exp (add_options_for_no_pch): Add.
	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
	Use it.


Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r156075
2010-01-20 11:57:44 +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
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
da9debb8d6 Makefile.am (check-debug): Add.
2010-01-13  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/Makefile.am (check-debug): Add.
	* testsuite/Makefile.in: Regenerate.
	* config.h.in: Likewise.

From-SVN: r155854
2010-01-13 11:07:44 +00:00
Paolo Carlini
932f6f4a2c using_namespace_std_tr1_neg.cc: Do not run in parallel-mode.
2010-01-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/17_intro/using_namespace_std_tr1_neg.cc: Do not run
	in parallel-mode.
	* testsuite/25_algorithms/inplace_merge/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/rotate/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/stable_partition/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/remove/moveable.c: Likewiwse.
	* testsuite/25_algorithms/random_shuffle/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/nth_element/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/partial_sort/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/next_permutation/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/partition/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/stable_sort/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/stable_sort/moveable2.cc: Likewiwse.
	* testsuite/25_algorithms/sort/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/prev_permutation/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/unique/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/remove_if/moveable.cc: Likewiwse.
	* testsuite/25_algorithms/heap/moveable.cc: Likewiwse.

	* testsuite/25_algorithms/search_n/iterator.cc: Reduce iteration #
	in parallel-mode.

From-SVN: r155841
2010-01-12 17:16:25 +00:00
Hans-Peter Nilsson
b1a54dd052 all.cc: Pass -D_GLIBCXX_PROFILE_NO_THREADS for non-tls_native targets.
* testsuite/ext/profile/all.cc: Pass -D_GLIBCXX_PROFILE_NO_THREADS
	for non-tls_native targets.

From-SVN: r155829
2010-01-12 05:24:12 +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
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
H.J. Lu
9b2adcdbc1 Return dgs.alc on success
libiberty/

2010-01-09  Ian Lance Taylor  <iant@google.com>

	PR other/42230
	* cp-demangle.c (d_demangle): Return dgs.alc on success.

libstdc++-v3/

2010-01-09  H.J. Lu  <hongjiu.lu@intel.com>

	PR other/42230
	* testsuite/abi/pr42230.cc: New.

From-SVN: r155785
2010-01-09 16:24:52 -08: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
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
Benjamin Kosnik
41bcd5a9fd re PR libstdc++/42491 (performance/30_threads/future/polling.cc fails at compile time)
2010-01-06  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/42491
	* scripts/check_performance (CXX): Add -std=gnu++0x.
	* testsuite/performance/30_threads/future/polling.cc: Mark up as
	using threads.

From-SVN: r155681
2010-01-06 22:55:52 +00:00
Paolo Carlini
48565aaf48 38081-2.cc: Add dg-require-namedlocale.
2010-01-06  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/22_locale/time_get/get_weekday/char/38081-2.cc:
	Add dg-require-namedlocale.

From-SVN: r155672
2010-01-06 11:39:18 +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
4ebf9c3763 6.cc: New.
2010-01-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/22_locale/time_get/get_monthname/char/6.cc: New.
	* testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.

From-SVN: r155644
2010-01-05 11:44:43 +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
6ab94513d5 2010-01-01 Paolo Carlini <paolo.carlini@oracle.com>
Revert last change, reinstantiate basic_string and vstring tests.

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

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

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

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

From-SVN: r155545
2010-01-01 03:38:58 +00:00
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
Paolo Carlini
b0302c68d8 type_traits (__is_constructible_helper1): Rename to __is_constructible_helper1...
2009-12-31  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/type_traits (__is_constructible_helper1): Rename
	to __is_constructible_helper1, tweaked to a specialization of
	__is_constructible_helper.
	(is_constructible): Adjust; minor formatting and stylistic
	changes throughout.
	* testsuite/util/testsuite_tr1.h (test_relationship): Change
	variadic version to an overload of test_property.
	* testsuite/20_util/is_constructible/value.cc: Adjust.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Adjust dg-error line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

From-SVN: r155536
2009-12-31 14:04:23 +00:00
Paolo Carlini
75995f3782 [multiple changes]
2009-12-30  Daniel Frey  <d.frey@gmx.de>
	    Paolo Carlini  <paolo.carlini@oracle.com>  

	* include/std/type_traits (is_explicitly_convertible,
	is_constructible): Add.
	* testsuite/util/testsuite_tr1.h (ExplicitClass): Add.
	* testsuite/20_util/is_explicitly_convertible/value.cc: New.
	* testsuite/20_util/is_constructible/value.cc: Likewise.

2009-12-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/util/testsuite_tr1.h (test_relationship): Add
	variadic version.
	* testsuite/20_util/is_explicitly_convertible/requirements/
	typedefs.cc: New.
	* testsuite/20_util/is_explicitly_convertible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_constructible/requirements/typedefs.cc:
	Likewise.
	* testsuite/20_util/is_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_convertible/value.cc: Extend.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Adjust dg-error line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

From-SVN: r155529
2009-12-30 23:22:58 +00:00
Paolo Carlini
700d289947 bitset (bitset<>::to_ullong, [...]): Add.
2009-12-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/bitset (bitset<>::to_ullong, _M_do_to_ullong): Add.
	(_Base_bitset<>::_M_do_to_ullong): Add.
	* include/debug/bitset (bitset<>): Add using _Base::to_ullong.
	* include/profile/bitset (bitset<>): Likewise.
	* testsuite/23_containers/bitset/to_ullong/1.cc: New.

From-SVN: r155504
2009-12-29 12:24:36 +00:00
Paolo Carlini
a1b418cb9f [multiple changes]
2009-12-24  Edward Smith-Rowland  <3dw4rd@verizon.net>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/bitset (bitset<>::bitset(const char*)): Add.

2009-12-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
	    Edward Smith-Rowland  <3dw4rd@verizon.net>

	* testsuite/23_containers/bitset/cons/2.cc: New.

From-SVN: r155458
2009-12-24 18:12:02 +00:00
Jonathan Wakely
c5a2375241 functional (bind): Avoid invalid instantiations for bind<void>.
2009-12-24  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/functional (bind): Avoid invalid instantiations
	for bind<void>.
	* testsuite/20_util/bind/conv_result.cc: New.

From-SVN: r155457
2009-12-24 14:54:33 +00:00
Paolo Carlini
0800b8ea79 stl_deque.h (copy_backward(_Deque_iterator, _Deque_iterator, _Deque_iterator), [...]): Declare.
2009-12-24  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_deque.h (copy_backward(_Deque_iterator,
	_Deque_iterator, _Deque_iterator), move_backward(_Deque_iterator,
	_Deque_iterator, _Deque_iterator)): Declare.
	* include/bits/deque.tcc: Implement the latter.
	* testsuite/performance/25_algorithms/
	copy_backward_deque_iterators.cc: New.
	* testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
	* testsuite/25_algorithms/copy_backward/deque_iterators/1.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.

From-SVN: r155455
2009-12-24 12:47:37 +00:00
Paolo Carlini
a1ebe9ac3e 5.cc: Move...
2009-12-23  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/25_algorithms/copy/5.cc: Move...
	* testsuite/25_algorithms/copy/deque_iterators/1.cc: ... here.
	* testsuite/25_algorithms/move/2.cc: Move...
	* testsuite/25_algorithms/move/deque_iterators/1.cc: ... here.

From-SVN: r155433
2009-12-23 18:45:41 +00:00
Paolo Carlini
e2bf200700 stl_deque.h (copy(_Deque_iterator, _Deque_iterator, _Deque_iterator), [...]): Declare.
2009-12-23  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_deque.h (copy(_Deque_iterator, _Deque_iterator,
	_Deque_iterator), move(_Deque_iterator, _Deque_iterator,
	_Deque_iterator)): Declare.
	* include/bits/deque.tcc: Implement the latter.
	* testsuite/performance/25_algorithms/copy_deque_iterators.cc: New.
	* testsuite/25_algorithms/move/2.cc: Likewise.
	* testsuite/25_algorithms/copy/5.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.

From-SVN: r155432
2009-12-23 17:14:15 +00:00
Iain Sandoe
1d32a77299 re PR target/41605 (Static linking of libgcc/libgfortran/libstdc++ can cause inconsistent symbol resolution.)
2009-12-22  Iain Sandoe  <iain.sandoe@sandoe-acoustics.co.uk>

gcc/
	PR target/41605
	* lib/g++.exp: Provide -B options to allow for link spec %s
	substitutions for static libraries.

libstdc++-v3/
	PR target/41605
	* testsuite/libstdc++-abi/abi.exp: Provide -B options to allow for
	link spec %s substitutions for static libraries.
	* testsuite/lib/libstdc++.exp: Ditto

libgomp/
	PR target/41605
	* testsuite/lib/libgomp.exp: Provide -B options to allow for
	link spec %s substitutions for static libraries.

From-SVN: r155408
2009-12-22 22:11:27 +00:00
Benjamin Kosnik
afd88205d8 atomic: Update to N3000.
2009-12-20  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/atomic: Update to N3000.
	* include/bits/atomic_0.h: Same.
	* include/bits/atomic_2.h: Same.
	* include/c_global/cstdatomic: Move...
	* include/bits/atomic_base.h: ...here.
	* include/c_compatibility/stdatomic.h: Just include atomic_base.h.
	* include/precompiled/stdc++.h: Adjust includes.
	* include/Makefile.am: Adjust files.
	* include/Makefile.in: Regenerate.
	* include/std/future: Adjust.
	* src/atomic.cc: Adjust, adjust exports for compatibility.
	* src/compatibility.cc: Move C++0x stuff...
	* src/compatibility-c++0x.cc: ...here.

	* doc/xml/manual/using.xml: Update.
	* doc/xml/manual/status_cxx200x.xml: Update.
	* doc/doxygen/user.cfg.in: Update.

	* testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/single_value.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/default.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Same.
	* testsuite/29_atomics/atomic_address/requirements/
	standard_layout.cc: Same.
	* testsuite/29_atomics/atomic_address/requirements/trivial.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/single_value.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/default.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/direct_list.cc: Same.
	* testsuite/29_atomics/atomic_integral/requirements/
	standard_layout.cc: Same.
	* testsuite/29_atomics/atomic_integral/requirements/trivial.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/
	integral_assignment.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/increment.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/bitwise.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/decrement.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/
	integral_conversion.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/default.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Same.
	* testsuite/29_atomics/atomic_flag/requirements/
	standard_layout.cc: Same.
	* testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Same.
	* testsuite/29_atomics/atomic_flag/clear/1.cc: Same.
	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.c
	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Same.
	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.c
	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Same.
	* testsuite/29_atomics/headers/stdatomic.h/functions.c
	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic/cons/single_value.cc: Same.
	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic/cons/default.cc: Same.
	* testsuite/29_atomics/atomic/cons/copy_list.cc: Same.
	* testsuite/29_atomics/atomic/cons/direct_list.cc: Same.
	* testsuite/29_atomics/atomic/requirements/explicit_instantiation/
	1.cc: Same.
	* testsuite/29_atomics/atomic/requirements/base_classes.cc: Same.
	* testsuite/29_atomics/atomic/operators/integral_assignment.cc: Same.
	* testsuite/29_atomics/atomic/operators/integral_conversion.cc: Same.
	* testsuite/util/testsuite_common_types.h: Adjust.

	* testsuite/29_atomics/headers/cstdatomic: Move and adjust...
	* testsuite/29_atomics/headers/atomic: ...here.
	* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Same.
	* testsuite/29_atomics/headers/atomic/functions_std_c++0x.cc: Same.
	* testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Same.
	* testsuite/29_atomics/headers/atomic/macros.cc: Same.

	* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Add.
	* testsuite/29_atomics/atomic/cons/user_pod.cc: Add.

From-SVN: r155377
2009-12-21 19:00:34 +00:00
Paolo Carlini
a957d12f7a condition_variable: Revert inadvertent changes.
2009-12-18  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/condition_variable: Revert inadvertent changes.
	* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Ditto.
	* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Ditto.
	* testsuite/30_threads/condition_variable/members/1.cc: Ditto.
	* testsuite/30_threads/condition_variable/members/2.cc: Ditto.
	* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Ditto.
	* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Ditto.

From-SVN: r155343
2009-12-18 09:44:54 +00:00
Jimmy Guo
4ef8972563 re PR libstdc++/40088 (Creating a std::ostringstream object locks a global mutex)
2009-12-18  Jimmy Guo  <jguo@yahoo-inc.com>

	PR libstdc++/40088
	* src/locale_init.cc (locale::locale()): Optimize the common case
	where _S_global still points to _S_classic.

From-SVN: r155342
2009-12-18 09:41:03 +00:00
Benjamin Kosnik
5317914406 PR libstdc++/21772 part 2
2009-12-16  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21772 part 2
	* doc/xml/manual/test.xml: Add documentation about testing details.
	* testsuite/util/exception/safety.h: New. Functor objects for
	testing C++0x container classes.
	* testsuite/util/testsuite_container_traits.h: Add traits.

	* testsuite/23_containers/list/requirements/exception/
	basic.cc: New.
	generation_prohibited.cc: New.
	propagation_consistent.cc: New.

From-SVN: r155306
2009-12-17 09:37:16 +00:00
Benjamin Kosnik
861de21eb2 PR libstdc++/21772 part 1
2009-12-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21772 part 1
	* include/ext/throw_allocator.h: Rework.
	(__gnu_cxx::throw_allocator): To...
	(__gnu_cxx::throw_allocator_limit): ...this.
	(__gnu_cxx::throw_allocator_random): ...and this.
	(throw_value_base, throw_value_limit, throw_value_random): Add.
	(condition_base, random_condition, limit_condition): Add.
	(forced_exception_error): To...
	(forced_error): ...this.
	* testsuite/ext/throw_value: New.
	* testsuite/ext/throw_value/cons.cc: New.
	* testsuite/ext/throw_allocator/deallocate_global.cc: Adjust for
	throw_allocator, forced_exception_error changes.
	* testsuite/ext/throw_allocator/check_delete.cc: Same.
	* testsuite/ext/throw_allocator/check_allocate_max_size.cc: Same.
	* testsuite/ext/throw_allocator/check_deallocate_null.cc: Same.
	* testsuite/ext/throw_allocator/explicit_instantiation.cc: Same.
	* testsuite/ext/throw_allocator/check_new.cc: Same.
	* testsuite/ext/throw_allocator/variadic_construct.cc: Same.
	* testsuite/ext/throw_allocator/deallocate_local.cc: Same.
	* testsuite/23_containers/list/modifiers/insert/25288.cc: Same.
	* testsuite/23_containers/list/modifiers/insert/25288.h: Same.
	* testsuite/util/regression/common_type.hpp: Same.
	* testsuite/util/regression/rand/priority_queue/
	container_rand_regression_test.tcc: Same.
	* testsuite/util/regression/rand/assoc/
	container_rand_regression_test.h: Same.
	* testsuite/util/regression/rand/assoc/
	container_rand_regression_test.tcc: Same.
	* testsuite/util/regression/basic_type.hpp: Same.

	* testsuite/ext/forced_exception_error/cons_virtual_derivation.cc: To...
	* testsuite/ext/forced_error/cons_virtual_derivation.cc: ...this, same.

From-SVN: r155283
2009-12-16 05:16:46 +00:00
Paolo Carlini
465d76b735 re PR libstdc++/42381 (deque shouldn't reserve that much memory)
2009-12-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libsdtc++/42381
	* include/bits/stl_deque.h (_GLIBCXX_DEQUE_BUF_SIZE): Add.
	(__deque_buf_size(size_t)): Use it.
	* testsuite/23_containers/deque/requirements/dr438/
	assign_neg.cc: Adjust dg-error line numbers.
	* 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.

From-SVN: r155271
2009-12-15 20:58:29 +00:00
Jonathan Wakely
abcd7e0847 future (unique_future::get, [...]): Remove workaround for c++/34022.
2009-12-15  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/future (unique_future::get, promise::set_value): Remove
	workaround for c++/34022.
	(packaged_task::get_future, packaged_task::operator()): Use
	__throw_bad_function_call.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
	* 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.
	* testsuite/30_threads/shared_future/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/unique_future/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/unique_future/cons/copy_neg.cc: Likewise.

From-SVN: r155269
2009-12-15 20:17:27 +00:00
Jonathan Wakely
ec903a9c42 functional (function::function): Move construct target.
2009-12-15  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/functional (function::function): Move construct target.
	(function::operator=): Use perfect forwarding for argument.
	(function::operator()): Use new __throw_bad_function_call.
	* include/bits/functexcept.h (__throw_bad_function_call): Declare.
	* src/functexcept.cc (__throw_bad_function_call): Define.
	* config/abi/pre/gnu.ver: Add new symbol.
	* testsuite/20_util/function/cons/move_target.cc: New.
	* testsuite/20_util/function/assign/move_target.cc: New.

From-SVN: r155261
2009-12-15 17:42:47 +00:00
Paolo Carlini
9f81eaccf9 re PR c++/42379 (Revision 155245 failed 1_neg.cc)
2009-12-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/42379
	* testsuite/23_containers/set/operators/1_neg.cc: Fix dg-error strings.
	* testsuite/23_containers/map/operators/1_neg.cc: Likewise.

From-SVN: r155258
2009-12-15 16:11:32 +00:00
Paolo Carlini
e49fd61b53 explicit_instantiation/1_c++0x.cc: New.
2009-12-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/23_containers/queue/requirements/
	explicit_instantiation/1_c++0x.cc: New.
	* testsuite/23_containers/priority_queue/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/bitset/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/set/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/vector/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/deque/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/stack/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/list/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/map/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.

From-SVN: r155215
2009-12-14 15:01:23 +00:00
Paolo Carlini
874e360b8c stl_list.h (splice(iterator, list&), [...]): Re-add in C++0x mode for backward compatibility (see DR 1133).
2009-12-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_list.h (splice(iterator, list&), splice(iterator,
	list&, iterator), splice(iterator, list&, iterator, iterator),
	merge(list&), merge(list&, _StrictWeakOrdering)): Re-add in C++0x
	mode for backward compatibility (see DR 1133).
	(insert(iterator, size_type, const value_type&), insert(iterator,
	_InputIterator, _InputIterator)): Adjust.
	* include/bits/list.tcc (sort): Likewise.
	* testsuite/23_containers/list/modifiers/1_c++0x.cc: Add.
	* testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
	* testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	assign_neg.cc: Adjust dg-error line numbers.
	* 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: r155210
2009-12-14 10:26:09 +00:00
Paolo Carlini
d385563f63 re PR libstdc++/42352 (-std=c++0x reference binding problem)
2009-12-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42352
	* include/bits/list.tcc (sort): Use _GLIBCXX_MOVE for list::splice
	and list::merge calls.
	* testsuite/23_containers/list/operations/42352.cc: New.

From-SVN: r155180
2009-12-11 22:04:56 +00:00
Paolo Carlini
df4d18ad80 PR libstdc++/42261 (take 2)
2009-12-10  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42261 (take 2)
	* include/bits/basic_string.h (_S_construct_aux_2(size_type, _CharT,
	const _Alloc&)): Add.
	(_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)):
	Call it.
	* include/ext/sso_string_base.h (_M_construct_aux_2(size_type,
	_CharT): Add.
	(_M_construct_aux(_Integer, _Integer, std::__true_type)): Call it.
	* include/ext/rc_string_base.h (_S_construct_aux_2(size_type, _CharT,
	const _Alloc&)): Add.
	(_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)):
	Call it.
	* config/abi/pre/gnu.ver: Export basic_string::_S_construct_aux_2.
	* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.

From-SVN: r155137
2009-12-10 19:17:27 +00:00
Paolo Carlini
574f366488 revert: re PR libstdc++/42261 (infinite recursion from string(string::size_type(6), string::size_type('f')))
2009-12-10  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
        2009-12-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42261
	* include/bits/basic_string.h (_S_construct_aux(_Integer, _Integer,
	const _Alloc&, __true_type)): Cast the second argument to value_type.
	* include/ext/sso_string_base.h (_M_construct_aux(_Integer, _Integer,
	std::__true_type)): Likewise.
	* include/ext/rc_string_base.h (_S_construct_aux(_Integer, _Integer,
	const _Alloc&, std::__true_type)): Likewise.
	* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.

From-SVN: r155132
2009-12-10 17:17:41 +00:00