Commit Graph

7971 Commits

Author SHA1 Message Date
Tim Shen
b3ebe3d0e0 Implement class regex_traits.
2013-07-09  Tim Shen  <timshen91@gmail.com>

	Implement class regex_traits.
	* include/bits/regex.h: Implement lookup_classname and
	lookup_collatename; modify isctype; partially implement
	transform_primary.
	* testsuite/28_regex/traits/char/isctype.cc: Add more test cases.
	* testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
	* testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
	* testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/isctype.cc: New.
	* testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New.
	* testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New.
	* testsuite/28_regex/traits/wchar_t/transform_primary.cc: New.

From-SVN: r200818
2013-07-09 13:41:10 +00:00
Edward Smith-Rowland
c8dfadf8f3 Add links to the C++14 library implementation status page.
From-SVN: r200749
2013-07-08 02:13:30 +00:00
Edward Smith-Rowland
af8bc8f324 Add links to the C++14 librarry implementation status page.
From-SVN: r200748
2013-07-08 02:06:45 +00:00
Paolo Carlini
110374e494 const_iterator.cc: Tweak, avoid potential undefined behavior.
2013-07-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
	Tweak, avoid potential undefined behavior.
	* testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
	Likewise.
	* testsuite/23_containers/vector/bool/modifiers/insert/
	const_iterator.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
	Likewise.

From-SVN: r200725
2013-07-05 22:22:26 +00:00
François Dumont
b3abc9d822 hashtable_policy.h (_ReuseOrAllocNode): Use forward pattern.
2013-07-05  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h (_ReuseOrAllocNode): Use forward
	pattern.
	(_MoveReuseOrAllocNode): Remove.
	(_Insert_base): Take a functor defining how the node is generated.
	* include/bits/hashtable.h: Adapt.
	(operator=(initializer_list<value_type>)): Reuse node if any.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/unordered_set/
	not_default_constructible_hash_neg.cc: Likewise.

From-SVN: r200724
2013-07-05 21:21:07 +00:00
Paolo Carlini
8b30e1668e const_iterator.cc: Tweak, avoid potential undefined behavior.
2013-07-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
	Tweak, avoid potential undefined behavior.
	* testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
	Likewise.
	* testsuite/23_containers/vector/bool/modifiers/insert/
	const_iterator.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
	Likewise.

From-SVN: r200703
2013-07-05 10:32:20 +00:00
Veres Lajos
1d77bc548a codecvt_members.cc: Fix typo.
2013-07-04  Veres Lajos  <vlajos@gmail.com>
	    Jonathan Wakely  <jwakely.gcc@gmail.com>

	* config/locale/generic/codecvt_members.cc: Fix typo.
	* configure.host: Likewise.
	* doc/html/manual/policy_data_structures_design.html: Likewise.
	* doc/xml/manual/policy_data_structures.xml: Likewise.
	* include/bits/hashtable.h: Likewise.
	* include/bits/random.h: Likewise.
	* include/profile/impl/profiler_trace.h: Likewise.
	* testsuite/23_containers/deque/cons/2.cc: Likewise.
	* testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
	* testsuite/ext/pb_ds/example/basic_multimap.cc: Likewise.
	* testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.

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

From-SVN: r200681
2013-07-04 22:07:44 +01:00
François Dumont
b1eb497f61 Add missing ChangeLog entry.
From-SVN: r200680
2013-07-04 21:02:25 +00:00
Ray Chason
b727d9c4be re PR libstdc++/57808 (operators == and != for regex_token_iterator need to be const)
2013-07-04  Ray Chason  <chasonr@newsguy.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/57808
	* include/bits/regex.h (regex_token_iterator<>::operator==,
	regex_token_iterator<>::operator!=, regex_token_iterator<>::operator*,
	regex_token_iterator<>::operator->): Declare const.

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

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

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

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

From-SVN: r200580
2013-07-01 16:17:46 +00:00
Paolo Carlini
06eed9f588 stl_deque.h (deque<>::insert(iterator, size_type, const value_type&), [...]): Adjust C++11 signatures to take a const_iterator.
2013-06-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_deque.h (deque<>::insert(iterator,
	size_type, const value_type&), deque<>::insert(iterator,
	initializer_list<>), deque<>::insert(iterator, _InputIterator,
	_InputIterator)): Adjust C++11 signatures to take a const_iterator.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/debug/deque: Adjust.
	* include/debug/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/vector: Likewise.
	* testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
	Extend.
	* testsuite/23_containers/vector/bool/modifiers/insert/
	const_iterator.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
	Likewise.

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

From-SVN: r200571
2013-06-30 16:24:30 +00:00
Paolo Carlini
e8f24c86b8 *: Move inside testsuite/21_strings/basic_string/operations/data/.
2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/operations/*: Move inside
	testsuite/21_strings/basic_string/operations/data/.
	* testsuite/21_strings/basic_string/compare/*: Move inside
	testsuite/21_strings/basic_string/operations/.
	* testsuite/21_strings/basic_string/find/*: Likewise.
	* testsuite/21_strings/basic_string/rfind/*: Likewise.
	* testsuite/21_strings/basic_string/substr/*: Likewise.

From-SVN: r200570
2013-06-30 14:48:37 +00:00
François Dumont
41349aec29 hashtable_policy.h (_Insert_base): Consider hint in insert methods.
2013-06-29  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h (_Insert_base): Consider hint in
	insert methods.
	* include/bits/hashtable.h: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
	* testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
	New.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/unordered_set/
	not_default_constructible_hash_neg.cc: Likewise.
	* doc/xml/manual/containers.xml: Document hinting in unordered
	containers.

From-SVN: r200564
2013-06-29 07:55:12 +00:00
Paolo Carlini
7d9800e39a *: Move inside testsuite/21_strings/basic_string/operations/data/.
2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/operations/*: Move inside
	testsuite/21_strings/basic_string/operations/data/.
	* testsuite/21_strings/basic_string/compare/*: Move inside
	testsuite/21_strings/basic_string/operations/.
	* testsuite/21_strings/basic_string/find/*: Likewise.
	* testsuite/21_strings/basic_string/rfind/*: Likewise.
	* testsuite/21_strings/basic_string/substr/*: Likewise.

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

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

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

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

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

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

From-SVN: r200458
2013-06-27 09:51:21 +00:00
Jason Merrill
46812ec24c typeck2.c (store_init_value): Diagnose a non-constant initializer for in-class static.
* typeck2.c (store_init_value): Diagnose a non-constant
	initializer for in-class static.

From-SVN: r200450
2013-06-26 22:35:46 -04:00
Paolo Carlini
a9826e56fa abi_tag.cc: Avoid spurious fails with check-debug.
2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
	spurious fails with check-debug.
	* testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
	Likewise.
	* testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
	Likewise.

From-SVN: r200438
2013-06-26 22:48:06 +00:00
Ed Smith-Rowland
3ed8a9cd21 Status page for C++2014 library features
2013-06-25  Ed Smith-Rowland  <3dw4rd@verizon.net>

	Status page for C++2014 library features
	* doc/xml/faq.xml: Add link to new C++14 status page.
	* doc/xml/manual/intro.xml: Ditto.
	* doc/xml/manual/status_cxx2014.xml: New.

From-SVN: r200413
2013-06-26 01:24:25 +00:00
Paolo Carlini
be768ae0fb abi_tag.cc: Avoid spurious fails with check-debug.
2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
	spurious fails with check-debug.
	* testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
	Likewise.
	* testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
	Likewise.

From-SVN: r200411
2013-06-26 00:29:40 +00:00
Paolo Carlini
6cdbb7e8a1 re PR libstdc++/57704 (std::char_traits<char>::lt is not standards-compliant)
2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/57704
	* include/bits/char_traits.h (char_traits<char>::lt): Implement
	LWG 467.
	* testsuite/21_strings/char_traits/requirements/char/57704.cc: New.

From-SVN: r200392
2013-06-25 08:39:31 +00:00
Bernd Edlinger
a4e28c8103 re PR libstdc++/57691 (freestanding libstdc++ has compile error)
2013-06-24  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	PR libstdc++/57691
	* include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
	declare per the letter of the C++ standard in terms of void.
	* include/c_std/cstdlib: Likewise.

From-SVN: r200371
2013-06-24 13:46:58 +00:00
Paolo Carlini
07bba3b144 re PR libstdc++/57674 (wrong distribution for std::binomial_distribution::operator()(g,param))
2013-06-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/57674
	* include/bits/random.h (binomial_distribution<>::_M_waiting):
	Add double parameter.
	* include/bits/random.tcc (binomial_distribution<>::operator()
	(_UniformRandomNumberGenerator&, const param_type&)): Pass
	__param._M_q to _M_waiting.
	(_M_waiting): Adjust.
	* testsuite/26_numerics/random/binomial_distribution/
	operators/values.cc: Add tests.

From-SVN: r200341
2013-06-22 21:07:02 +00:00
Paolo Carlini
b0ad3635b6 re PR libstdc++/57666 (valarray<T>::operator= in c++11 mode does not adapt to size)
2013-06-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/57666
	* include/std/valarray (valarray<>::operator=(const _Expr<>&)):
	Implement correctly C++11 26.6.2.3/1.
	* testsuite/26_numerics/valarray/dr630-3.C: New.

From-SVN: r200305
2013-06-21 14:23:15 +00:00
Jonathan Wakely
25e00ab674 re PR libstdc++/57641 (std::timed_mutex.try_lock_until() is broken)
PR libstdc++/57641
	* include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
	functionality to new __timed_mutex_impl mixin. Overload try_lock_until
	to handle conversion between different clocks. Replace constrained
	__try_lock_for_impl overloads with conditional increment.
	* include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
	* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.

From-SVN: r200180
2013-06-18 23:55:02 +01:00
Jonathan Wakely
31eb8a1809 stl_algobase.h (equal): Make C++14 overloads from N3671 dispatch to traditional std::equal for...
2013-06-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
	    Chris Jefferson  <chris@bubblescope.net>

	* include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
	dispatch to traditional std::equal for random-access iterators.
	(__equal2_aux, __equal2): Remove.
	(__equal::equal): Remove unused overloads.
	* include/bits/stl_algo.h (is_permutation): Fix typos.

Co-Authored-By: Chris Jefferson <chris@bubblescope.net>

From-SVN: r200145
2013-06-17 01:47:55 +01:00
Jonathan Wakely
2081281b10 shared_mutex (shared_lock::operator=): Add missing return statement.
* include/std/shared_mutex (shared_lock::operator=): Add missing
	return statement.

From-SVN: r200141
2013-06-16 22:56:43 +01:00
Jonathan Wakely
f038f5824b re PR libstdc++/57263 (std::set with user-defined allocator - compile error)
PR libstdc++/57263
	* include/bits/forward_list.h (_Fwd_list_base): Convert to/from
	allocator's pointer type.
	* include/bits/hashtable.h (_Hashtable): Likewise.
	* testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
	* testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/vector/allocator/ext_ptr.cc: New.

From-SVN: r200136
2013-06-16 18:13:34 +01:00
Jonathan Wakely
8d2cddc125 shared_mutex: Implement N3659.
* include/std/shared_mutex: Implement N3659.
	* include/bits/c++14_warning.h: New.
	* include/Makefile.am: Add new headers.
	* include/Makefile.in: Regenerate.
	* testsuite/30_threads/shared_lock/cons/1.cc: New.
	* testsuite/30_threads/shared_lock/locking/2.cc: New.
	* testsuite/30_threads/shared_lock/cons/2.cc: New.
	* testsuite/30_threads/shared_lock/locking/3.cc: New.
	* testsuite/30_threads/shared_lock/cons/3.cc: New.
	* testsuite/30_threads/shared_lock/locking/4.cc: New.
	* testsuite/30_threads/shared_lock/cons/4.cc: New.
	* testsuite/30_threads/shared_lock/modifiers/1.cc: New.
	* testsuite/30_threads/shared_lock/cons/5.cc: New.
	* testsuite/30_threads/shared_lock/modifiers/2.cc: New.
	* testsuite/30_threads/shared_lock/cons/6.cc: New.
	* testsuite/30_threads/shared_lock/requirements/
	explicit_instantiation.cc: New.
	* testsuite/30_threads/shared_lock/locking/1.cc: New.
	* testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
	* testsuite/30_threads/shared_mutex/cons/1.cc: New.
	* testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
	* testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
	* testsuite/30_threads/shared_mutex/requirements/
	standard_layout.cc: New.
	* testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
	* testsuite/30_threads/shared_mutex/try_lock/2.cc: New.

From-SVN: r200134
2013-06-16 17:35:06 +01:00
Paolo Carlini
95777cb0fb re PR libstdc++/57619 (std::unordered_map and std::unordered_multimap::insert invoking std::pair move constructor)
2013-06-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/57619
	* include/bits/unordered_map.h (unordered_map<>::insert,
	unordered_multimap<>::insert): Use std::forward, not std::move.
	* testsuite/23_containers/unordered_map/insert/57619.C: New.
	* testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.

From-SVN: r200111
2013-06-14 23:35:56 +00:00
Alan Modra
8f7fa4ba72 configure.host (abi_baseline_pair): Match powerpc64*.
* configure.host (abi_baseline_pair): Match powerpc64*.

From-SVN: r200087
2013-06-14 18:10:47 +09:30
Daniel Kruegler
8989803415 type_traits (is_function): Support ref-qualified functions.
2013-06-13  Daniel Krugler  <daniel.kruegler@gmail.com>

	* include/std/type_traits (is_function): Support ref-qualified
	functions.
	(is_copy_constructible, is_move_constructible, is_copy_assignable,
	is_move_assignable, is_nothrow_copy_constructible,
	is_nothrow_move_constructible, is_nothrow_copy_assignable,
	is_nothrow_move_assignable): Implement LWG 2196.
	(add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
	LWG 2101.
	(__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
	unused.
	* testsuite/20_util/add_lvalue_reference/value.cc: Extend.
	* testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
	* testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_assignable/value.cc: Likewise.
	* testsuite/20_util/is_constructible/value-2.cc: Likewise.
	* testsuite/20_util/is_copy_assignable/value.cc: Likewise.
	* testsuite/20_util/is_copy_constructible/value.cc: Likewise.
	* testsuite/20_util/is_function/value.cc: Likewise.
	* testsuite/20_util/is_move_assignable/value.cc: Likewise.
	* testsuite/20_util/is_move_constructible/value.cc: Likewise.
	* testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
	* testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
	* testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
	* testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.

	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
	line number.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.

From-SVN: r200080
2013-06-13 23:18:27 +00:00
Paolo Carlini
8aaba3a9a7 modified_bessel_func.tcc (__gnu_cxx::__airy_ai(), [...]): Remove.
2013-06-13  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
	__gnu_cxx::__airy_bi()): Remove.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	10_cyl_bessel_k/airy.cc: Fix.

From-SVN: r200060
2013-06-13 08:25:36 +00:00
Ed Smith-Rowland
bcc193bf46 re PR libstdc++/56430 (In __airy: return-statement with a value, in function returning 'void'.)
2013-06-12  Ed Smith-Rowland  <3dw4rd@verizon.net>

	PR libstdc++/56430
	* include/tr1/modified_bessel_func.tcc (__airy): Remove return
	from void function.
	(__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	10_cyl_bessel_k/airy.cc: New.

From-SVN: r200054
2013-06-13 03:04:58 +00:00
Ed Smith-Rowland
0372af98bd Fix library literals error involving namespace __detail.
2013-06-11  Ed Smith-Rowland  <3dw4rd@verizon.net>

	Fix library literals error involving namespace __detail.
	* include/std/chrono: Rename __detail to __select_type. Reformat.
	* include/bits/basic_string.h: Reformat.
	* testsuite/20_util/duration/literals/ns_detail.cc: New.

From-SVN: r199948
2013-06-11 11:00:38 +00:00
Paolo Carlini
899e00ebb2 re PR libstdc++/56019 (max_align_t should be in std namespace)
2013-06-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/56019
	* include/c_global/cstddef (max_align_t): Add to namespace std.
	* include/c_std/cstddef: Likewise.
	* testsuite/18_support/max_align_t/requirements/1.cc: New.
	* testsuite/18_support/max_align_t/requirements/2.cc: Likewise.

From-SVN: r199945
2013-06-11 09:50:55 +00:00
Benjamin Kosnik
3b31a72738 c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
2013-06-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
	* include/bits/stl_map.h (erase): Use abi_tag when C++11.
	* include/bits/stl_multimap.h: Same.
	* include/bits/stl_multiset.h: Same.
	* include/bits/stl_set.h: Same.
	* include/bits/stl_tree.h: Same.
	* include/std/complex (real, imag): Use macro for abi_tag.

	* testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
	* testsuite/util/testsuite_containers.h (erase_external): New
	declarations.
	(erase_external_iterators): Same.
	(linkage_check_cxx98_cxx11_erase): Same.
	(linkage_check_cxx98_cxx11_erase_iterators): Same.
	* testsuite/util/testsuite_shared.cc: Define.
	* testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
	* testsuite/23_containers/map/modifiers/erase/
	dr130-linkage-check.cc: New.
	* testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
	* testsuite/23_containers/multimap/modifiers/erase/
	dr130-linkage-check.cc: New.
	* testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
	* testsuite/23_containers/multiset/modifiers/erase/
	dr130-linkage-check.cc: New.
	* testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
	* testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
	New.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.

	* testsuite/23_containers/map/dr130.cc: Move...
	* testsuite/23_containers/map/modifiers/dr130.cc: ...here.
	* testsuite/23_containers/multimap/dr130.cc: Move ...
	* testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
	* testsuite/23_containers/multiset/dr130.cc: Move...
	* testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
	* testsuite/23_containers/set/dr130.cc: Move...
	* testsuite/23_containers/set/modifiers/dr130.cc: ...here.

From-SVN: r199924
2013-06-10 23:11:05 +00:00
Thomas Schwinge
9275f73ae5 forced.C: Extend current handling of Linux-based x86 systems to cover all GNU systems.
gcc/testsuite/
	* g++.dg/abi/forced.C: Extend current handling of Linux-based x86
	systems to cover all GNU systems.
	* g++.dg/abi/guard2.C: Likewise.
	* g++.dg/cpp0x/constexpr-rom.C: Likewise.
	* g++.dg/eh/sighandle.C: Likewise.
	* g++.dg/ext/cleanup-10.C: Likewise.
	* g++.dg/ext/cleanup-11.C: Likewise.
	* g++.dg/ext/cleanup-8.C: Likewise.
	* g++.dg/ext/cleanup-9.C: Likewise.
	* g++.dg/opt/const5.C: Likewise.
	* g++.dg/opt/life1.C: Likewise.
	* g++.dg/other/pr39496.C: Likewise.
	* g++.old-deja/g++.abi/aggregates.C: Likewise.
	* g++.old-deja/g++.abi/align.C: Likewise.
	* g++.old-deja/g++.abi/bitfields.C: Likewise.
	* g++.old-deja/g++.law/weak.C: Likewise.
	* g++.old-deja/g++.pt/asm1.C: Likewise.
	* gcc.c-torture/execute/20030125-1.x: Likewise.
	* gcc.c-torture/execute/990127-2.x: Likewise.
	* gcc.dg/20041106-1.c: Likewise.
	* gcc.dg/20050503-1.c: Likewise.
	* gcc.dg/builtin-object-size-5.c: Likewise.
	* gcc.dg/cleanup-10.c: Likewise.
	* gcc.dg/cleanup-11.c: Likewise.
	* gcc.dg/cleanup-8.c: Likewise.
	* gcc.dg/cleanup-9.c: Likewise.
	* gcc.dg/complex-5.c: Likewise.
	* gcc.dg/debug/dwarf2/asm-line1.c: Likewise.
	* gcc.dg/debug/dwarf2/discriminator.c: Likewise.
	* gcc.dg/dfp/convert-dfp-round-thread.c: Likewise.
	* gcc.dg/dfp/pr35739.c: Likewise.
	* gcc.dg/fdata-sections-1.c: Likewise.
	* gcc.dg/lto/20090206-1_0.c: Likewise.
	* gcc.dg/lto/20090206-2_0.c: Likewise.
	* gcc.dg/pr30360.c: Likewise.
	* gcc.dg/pr37303.c: Likewise.
	* gcc.dg/pr39323-1.c: Likewise.
	* gcc.dg/pr39323-2.c: Likewise.
	* gcc.dg/pr39323-3.c: Likewise.
	* gcc.dg/pr45416.c: Likewise.
	* gcc.dg/setjmp-2.c: Likewise.
	* gcc.dg/split-1.c: Likewise.
	* gcc.dg/split-3.c: Likewise.
	* gcc.dg/split-4.c: Likewise.
	* gcc.dg/strlenopt-12g.c: Likewise.
	* gcc.dg/strlenopt-14g.c: Likewise.
	* gcc.dg/strlenopt-14gf.c: Likewise.
	* gcc.dg/strlenopt-16g.c: Likewise.
	* gcc.dg/strlenopt-17g.c: Likewise.
	* gcc.dg/strlenopt-18g.c: Likewise.
	* gcc.dg/strlenopt-1f.c: Likewise.
	* gcc.dg/strlenopt-22g.c: Likewise.
	* gcc.dg/strlenopt-2f.c: Likewise.
	* gcc.dg/strlenopt-4g.c: Likewise.
	* gcc.dg/strlenopt-4gf.c: Likewise.
	* gcc.dg/struct-ret-3.c: Likewise.
	* gcc.dg/torture/stackalign/setjmp-2.c: Likewise.
	* gcc.misc-tests/linkage.exp: Likewise.
	* gcc.target/i386/20000724-1.c: Likewise.
	* gcc.target/i386/align-main-3.c: Likewise.
	* gcc.target/i386/cleanup-1.c: Likewise.
	* gcc.target/i386/inline-mcpy.c: Likewise.
	* gcc.target/i386/pr32268.c: Likewise.
	* gcc.target/i386/pr36613.c: Likewise.
	* gcc.target/i386/pr39013-1.c: Likewise.
	* gcc.target/i386/pr39013-2.c: Likewise.
	* gcc.target/i386/pr39496.c: Likewise.
	* gcc.target/i386/pr40906-3.c: Likewise.
	* gcc.target/i386/pr46084.c: Likewise.
	* lib/target-supports.exp (check_effective_target_pie): Likewise.

libgomp/
	* testsuite/libgomp.c/icv-2.c: Extend current handling of
	Linux-based x86 systems to cover all GNU systems.
	* testsuite/libgomp.c/lock-3.c: Likewise.
	* testsuite/libgomp.c/pr48591.c: Likewise.

libstdc++-v3/
	* testsuite/17_intro/headers/c++1998/49745.cc: Extend current
	handling of Linux-based x86 systems to cover all GNU systems.
	* testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
	* testsuite/18_support/pthread_guard.cc: Likewise.
	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
	Likewise.
	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
	Likewise.
	* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
	* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
	* testsuite/23_containers/list/pthread1.cc: Likewise.
	* testsuite/23_containers/list/pthread5.cc: Likewise.
	* testsuite/23_containers/map/pthread6.cc: Likewise.
	* testsuite/23_containers/vector/debug/multithreaded_swap.cc:
	Likewise.
	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
	Likewise.
	* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
	* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
	* testsuite/30_threads/async/42819.cc: Likewise.
	* testsuite/30_threads/async/49668.cc: Likewise.
	* testsuite/30_threads/async/54297.cc: Likewise.
	* testsuite/30_threads/async/any.cc: Likewise.
	* testsuite/30_threads/async/async.cc: Likewise.
	* testsuite/30_threads/async/launch.cc: Likewise.
	* testsuite/30_threads/async/sync.cc: Likewise.
	* testsuite/30_threads/call_once/39909.cc: Likewise.
	* testsuite/30_threads/call_once/49668.cc: Likewise.
	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
	* testsuite/30_threads/condition_variable/54185.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/53841.cc:
	Likewise.
	* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/1.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/members/2.cc:
	Likewise.
	* testsuite/30_threads/future/cons/move.cc: Likewise.
	* testsuite/30_threads/future/members/45133.cc: Likewise.
	* testsuite/30_threads/future/members/get.cc: Likewise.
	* testsuite/30_threads/future/members/get2.cc: Likewise.
	* testsuite/30_threads/future/members/share.cc: Likewise.
	* testsuite/30_threads/future/members/valid.cc: Likewise.
	* testsuite/30_threads/future/members/wait.cc: Likewise.
	* testsuite/30_threads/future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/lock/1.cc: Likewise.
	* testsuite/30_threads/lock/2.cc: Likewise.
	* testsuite/30_threads/lock/3.cc: Likewise.
	* testsuite/30_threads/lock/4.cc: Likewise.
	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/49668.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move_assign.cc:
	Likewise.
	* testsuite/30_threads/packaged_task/members/get_future.cc:
	Likewise.
	* testsuite/30_threads/packaged_task/members/get_future2.cc:
	Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
	* testsuite/30_threads/promise/cons/1.cc: Likewise.
	* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
	* testsuite/30_threads/promise/cons/move.cc: Likewise.
	* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception2.cc:
	Likewise.
	* testsuite/30_threads/promise/members/set_value.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
	* testsuite/30_threads/promise/members/swap.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
	Likewise.
	* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
	* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
	* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_for.cc:
	Likewise.
	* testsuite/30_threads/shared_future/members/wait_until.cc:
	Likewise.
	* testsuite/30_threads/this_thread/1.cc: Likewise.
	* testsuite/30_threads/this_thread/2.cc: Likewise.
	* testsuite/30_threads/this_thread/3.cc: Likewise.
	* testsuite/30_threads/this_thread/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/1.cc: Likewise.
	* testsuite/30_threads/thread/cons/2.cc: Likewise.
	* testsuite/30_threads/thread/cons/3.cc: Likewise.
	* testsuite/30_threads/thread/cons/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/49668.cc: Likewise.
	* testsuite/30_threads/thread/cons/5.cc: Likewise.
	* testsuite/30_threads/thread/cons/6.cc: Likewise.
	* testsuite/30_threads/thread/cons/7.cc: Likewise.
	* testsuite/30_threads/thread/cons/8.cc: Likewise.
	* testsuite/30_threads/thread/cons/9.cc: Likewise.
	* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
	* testsuite/30_threads/thread/members/1.cc: Likewise.
	* testsuite/30_threads/thread/members/2.cc: Likewise.
	* testsuite/30_threads/thread/members/3.cc: Likewise.
	* testsuite/30_threads/thread/members/4.cc: Likewise.
	* testsuite/30_threads/thread/members/5.cc: Likewise.
	* testsuite/30_threads/thread/members/hardware_concurrency.cc:
	Likewise.
	* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
	* testsuite/30_threads/thread/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/thread/swap/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/2.cc: Likewise.
	* testsuite/30_threads/try_lock/3.cc: Likewise.
	* testsuite/30_threads/try_lock/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
	* testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
	* testsuite/ext/profile/mh.cc: Likewise.
	* testsuite/ext/rope/pthread7-rope.cc: Likewise.
	* testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
	Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
	Likewise.
	* testsuite/util/testsuite_performance.h: Extend current handling
	of Linux-based systems to cover all glibc-based systems.

From-SVN: r199880
2013-06-10 09:21:29 +02:00
Jonathan Wakely
bd24ec2de0 mutex (call_once): Remove parentheses to fix error in c++1y and gnu++1y mode.
* include/std/mutex (call_once): Remove parentheses to fix error in
	c++1y and gnu++1y mode.
	* testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
	thread to avoid undefined behaviour.

From-SVN: r199875
2013-06-10 00:54:07 +01:00
Ed Smith-Rowland
88c4d6b798 Simplify and clean up library literals.
2013-06-07  Ed Smith-Rowland  <3dw4rd@verizon.net>

	Simplify and clean up library literals.
	* include/std/chrono: Simplify namespace and versioning management.
	* include/bits/basic_string.h: Ditto.
	* testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
	* testsuite/20_util/duration/literals/values.cc: Ditto.
	* testsuite/21_strings/basic_string/literals/types.cc: Ditto.
	* testsuite/21_strings/basic_string/literals/values.cc: Ditto.

From-SVN: r199861
2013-06-08 22:43:18 +00:00
Ed Smith-Rowland
83ac9249c8 Implement N3654 - Quoted Strings Library Proposal
2013-06-08  Ed Smith-Rowland  <3dw4rd@verizon.net>

	Implement N3654 - Quoted Strings Library Proposal
	* include/std/iomanip: Add quoted(String, Char delim, Char escape)
	manipulators and supporting machinery in c++1y mode.
	* testsuite/27_io/manipulators/standard/char/quoted.cc: New.
	* testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.

From-SVN: r199860
2013-06-08 22:37:50 +00:00
Jonathan Wakely
7b91690215 alloc_traits.h (allocator_traits::max_size()): LWG 2162: Add noexcept.
* include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
	2162: Add noexcept.

From-SVN: r199858
2013-06-08 18:31:40 +01:00
Jonathan Wakely
f7fbb0036a stl_algo.h (is_permutation): Add overloads from N3671.
* include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
	* include/bits/stl_algobase.h (equal, mismatch): Likewise.
	* testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
	* testsuite/25_algorithms/equal/2.cc: New.
	* testsuite/25_algorithms/equal/check_type2.cc: New.
	* testsuite/25_algorithms/is_permutationqual/2.cc: New.
	* testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
	* testsuite/25_algorithms/mismatch/2.cc: New.
	* testsuite/25_algorithms/mismatch/check_type2.cc: New.
	* testsuite/util/testsuite_iterators.h: Fix spelling.

From-SVN: r199854
2013-06-08 17:12:13 +01:00
Jonathan Wakely
db113eda6d type-traits (integral_constant::operator()): Implement N3545.
* include/std/type-traits (integral_constant::operator()): Implement
	N3545.
	* testsuite/20_util/integral_constant/call_operator.cc: New.
	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
	line numbers.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.

From-SVN: r199853
2013-06-08 17:12:07 +01:00
Uros Bizjak
cb8ac9d0b6 baseline_symbols.txt: Update.
* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.

From-SVN: r199796
2013-06-07 11:50:55 +02:00
Tom Tromey
0d471c50a3 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
From-SVN: r199708
2013-06-05 18:58:12 +00:00
Paolo Carlini
2e6491515e re PR c++/57419 (Access control doesn't stop referring to a deleted function)
/gcc/cp
2013-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57419
	* decl2.c (mark_used): Add overload taking a tsubst_flags_t too.
	* semantics.c (finish_qualified_id_expr): Use it.
	* cp-tree.h: Update.

/gcc/testsuite
2013-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57419
	* g++.dg/cpp0x/sfinae46.C: New.
	* g++.dg/cpp0x/defaulted13.C: Adjust.
	* g++.dg/cpp0x/defaulted2.C: Likewise.
	* g++.dg/cpp0x/defaulted26.C: Likewise.
	* g++.dg/cpp0x/defaulted3.C: Likewise.
	* g++.dg/cpp0x/error1.C: Likewise.
	* g++.dg/cpp0x/implicit1.C: Likewise.
	* g++.dg/cpp0x/implicit11.C: Likewise.
	* g++.dg/cpp0x/inh-ctor13.C: Likewise.
	* g++.dg/cpp0x/initlist47.C: Likewise.
	* g++.dg/cpp0x/initlist9.C: Likewise.
	* g++.dg/cpp0x/lambda/lambda-errloc.C: Likewise.
	* g++.dg/cpp0x/lambda/lambda-errloc2.C: Likewise.
	* g++.dg/cpp0x/nsdmi-local.C: Likewise.
	* g++.dg/cpp0x/union4.C: Likewise.
	* g++.dg/template/crash108.C: Likewise.
	* g++.dg/template/crash41.C: Likewise.
	* g++.old-deja/g++.jason/local.C: Likewise.
	* g++.old-deja/g++.law/visibility3.C: Likewise.

/libstdc++-v3
2013-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57419
	* testsuite/20_util/default_delete/48631_neg.cc: Adjust.

From-SVN: r199626
2013-06-03 20:39:50 +00:00
Ed Smith-Rowland
fa40983341 include/std/chrono: Collapse redundant 'inline' from 'inline constexpr'.
2013-06-01  Ed Smith-Rowland  <3dw4rd@verizon.net>

	include/std/chrono: Collapse redundant 'inline' from 'inline constexpr'.
	include/std/tuple: Ditto.
	include/bits/move.h: Ditto.

From-SVN: r199587
2013-06-01 21:39:50 +00:00
Ed Smith-Rowland
1c9f675fd9 Implement N3642 - User-defined Literals for Standard Library Types
2013-05-30  Ed Smith-Rowland  <3dw4rd@verizon.net>

	Implement N3642 - User-defined Literals for Standard Library Types
	* include/bits/parse_numbers.h: New.
	* include/std/chrono: Add duration literal operators.
	* include/bits/basic_string.h: Add string literal operators.
	* include/Makefile.in: Add parse_numbers.h.
	* include/Makefile.am: Ditto.
	* testsuite/20_util/duration/literals/values.cc: New.
	* testsuite/20_util/duration/literals/types.cc: New.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
	* testsuite/21_strings/basic_string/literals/values.cc: New.
	* testsuite/21_strings/basic_string/literals/types.cc: New.

From-SVN: r199584
2013-06-01 18:37:47 +00:00
Jonathan Wakely
8b70770dc8 compatibility-chrono.cc (steady_clock::now()): If !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of calling...
* src/c++11/compatibility-chrono.cc (steady_clock::now()): If
	!_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
	calling non-existent from_time_t.

From-SVN: r199391
2013-05-28 22:14:21 +01:00