This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch] std::packaged_task(allocator_arg_t, const A&, F&&) should not be explicit
- From: Jonathan Wakely <jwakely at redhat dot com>
- To: libstdc++ at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Wed, 13 May 2015 14:54:50 +0100
- Subject: [patch] std::packaged_task(allocator_arg_t, const A&, F&&) should not be explicit
- Authentication-results: sourceware.org; auth=none
http://wiki.edg.com/twiki/pub/Wg21lenexa/StrawPolls/N4525.html#2407
Voted into the WP in Lenexa.
Tested powerpc64le-linux, committed to trunk.
commit f58bb7ab1b098d525359869767286f9c8955acd3
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Wed May 13 14:39:24 2015 +0100
* include/std/future (packaged_task(allocator_arg_t, const A&, F&&):
Remove explicit (LWG 2407).
diff --git a/libstdc++-v3/include/std/future b/libstdc++-v3/include/std/future
index a67db98..c4baf90 100644
--- a/libstdc++-v3/include/std/future
+++ b/libstdc++-v3/include/std/future
@@ -1489,9 +1489,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 2097. packaged_task constructors should be constrained
+ // 2407. [this constructor should not be] explicit
template<typename _Fn, typename _Alloc, typename = typename
__constrain_pkgdtask<packaged_task, _Fn>::__type>
- explicit
packaged_task(allocator_arg_t, const _Alloc& __a, _Fn&& __fn)
: _M_state(__create_task_state<_Res(_ArgTypes...)>(
std::forward<_Fn>(__fn), __a))