[libcxx] r241068 - Implement LWG#2407: 'packaged_task(allocator_arg_t, const Allocator&, F&&) should neither be constrained nor explicit'
Marshall Clow
mclow.lists at gmail.com
Tue Jun 30 07:16:49 PDT 2015
Author: marshall
Date: Tue Jun 30 09:16:49 2015
New Revision: 241068
URL: http://llvm.org/viewvc/llvm-project?rev=241068&view=rev
Log:
Implement LWG#2407: 'packaged_task(allocator_arg_t, const Allocator&, F&&) should neither be constrained nor explicit'
Modified:
libcxx/trunk/include/future
libcxx/trunk/test/std/thread/futures/futures.tas/futures.task.members/ctor2.fail.cpp
Modified: libcxx/trunk/include/future
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/future?rev=241068&r1=241067&r2=241068&view=diff
==============================================================================
--- libcxx/trunk/include/future (original)
+++ libcxx/trunk/include/future Tue Jun 30 09:16:49 2015
@@ -329,7 +329,7 @@ public:
template <class F>
explicit packaged_task(F&& f);
template <class F, class Allocator>
- explicit packaged_task(allocator_arg_t, const Allocator& a, F&& f);
+ packaged_task(allocator_arg_t, const Allocator& a, F&& f);
~packaged_task();
// no copy
@@ -2042,7 +2042,7 @@ public:
>::type
>
_LIBCPP_INLINE_VISIBILITY
- explicit packaged_task(allocator_arg_t, const _Allocator& __a, _Fp&& __f)
+ packaged_task(allocator_arg_t, const _Allocator& __a, _Fp&& __f)
: __f_(allocator_arg, __a, _VSTD::forward<_Fp>(__f)),
__p_(allocator_arg, __a) {}
// ~packaged_task() = default;
Modified: libcxx/trunk/test/std/thread/futures/futures.tas/futures.task.members/ctor2.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/thread/futures/futures.tas/futures.task.members/ctor2.fail.cpp?rev=241068&r1=241067&r2=241068&view=diff
==============================================================================
--- libcxx/trunk/test/std/thread/futures/futures.tas/futures.task.members/ctor2.fail.cpp (original)
+++ libcxx/trunk/test/std/thread/futures/futures.tas/futures.task.members/ctor2.fail.cpp Tue Jun 30 09:16:49 2015
@@ -11,7 +11,7 @@
// class packaged_task<R(ArgTypes...)>
// template <class F, class Allocator>
-// explicit packaged_task(allocator_arg_t, const Allocator& a, F&& f);
+// packaged_task(allocator_arg_t, const Allocator& a, F&& f);
// These constructors shall not participate in overload resolution if
// decay<F>::type is the same type as std::packaged_task<R(ArgTypes...)>.
More information about the cfe-commits
mailing list