Commit Graph

2 Commits

Author SHA1 Message Date
Ville Voutilainen 269fa2a91b LWG 2510, make the default constructors of library tag types explicit.
2015-11-10  Ville Voutilainen  <ville.voutilainen@gmail.com>

	LWG 2510, make the default constructors of library tag types
	explicit.
	* include/bits/mutex.h (defer_lock_t, try_lock_t,
	adopt_lock_t): Add an explicit default constructor.
	* include/bits/stl_pair.h (piecewise_construct_t): Likewise.
	* include/bits/uses_allocator.h (allocator_arg_t): Likewise.
	* libsupc++/new (nothrow_t): Likewise.
	* testsuite/17_intro/tag_type_explicit_ctor.cc: New.

From-SVN: r230175
2015-11-11 16:47:19 +02:00
Jonathan Wakely f16081c2c6 Add portable timed_mutex and recursive_timed_mutex.
PR libstdc++/65704
	* include/Makefile.am: Add <bits/mutex.h>.
	* include/Makefile.in: Regenerate.
	* include/bits/mutex.h (__mutex_base, mutex, lock_guard, unique_lock):
	New file containing types moved from <mutex>.
	* include/std/condition_variable: Include <bits/mutex.h> instead of
	<mutex>.
	* include/std/mutex (__mutex_base, mutex, lock_guard, unique_lock):
	Move to <bits/mutex.h>.
	*  testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Remove
	dg-require-gthreads-timed.
	*  testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
	Likewise.
	*  testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.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/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/timed_mutex/cons/1.cc: Likewise.
	*  testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
	*  testsuite/30_threads/timed_mutex/cons/copy_neg.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/requirements/standard_layout.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/try_lock_until/57641.cc: Likewise.
	*  testsuite/30_threads/timed_mutex/unlock/1.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/3.cc: Likewise.
	*  testsuite/30_threads/unique_lock/locking/4.cc: Likewise.

From-SVN: r227490
2015-09-04 12:23:44 +01:00