You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by mp...@apache.org on 2017/12/05 15:48:35 UTC
mesos git commit: Fixed the signature of `CallableOnce::operator()`.
Repository: mesos
Updated Branches:
refs/heads/master 7beea9cbe -> 1074a9c3f
Fixed the signature of `CallableOnce::operator()`.
This changes `operator()` signature to match the one defined in
`CallableOnce` template parameter. Previously used form incorrectly
specifies that `operator()` can be invoked with arbitrary number and
types of parameters, which can break other templates using SFINAE to
check if function object can be invoked with specific parameters.
Review: https://reviews.apache.org/r/64337/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/1074a9c3
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/1074a9c3
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/1074a9c3
Branch: refs/heads/master
Commit: 1074a9c3fd7aa9d2e4b484f86dbe657271abecc0
Parents: 7beea9c
Author: Dmitry Zhuk <dz...@twopensource.com>
Authored: Tue Dec 5 07:23:28 2017 -0800
Committer: Michael Park <mp...@apache.org>
Committed: Tue Dec 5 07:44:36 2017 -0800
----------------------------------------------------------------------
3rdparty/stout/include/stout/lambda.hpp | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/1074a9c3/3rdparty/stout/include/stout/lambda.hpp
----------------------------------------------------------------------
diff --git a/3rdparty/stout/include/stout/lambda.hpp b/3rdparty/stout/include/stout/lambda.hpp
index 96586bd..c9212be 100644
--- a/3rdparty/stout/include/stout/lambda.hpp
+++ b/3rdparty/stout/include/stout/lambda.hpp
@@ -364,18 +364,17 @@ public:
CallableOnce& operator=(CallableOnce&&) = default;
CallableOnce& operator=(const CallableOnce&) = delete;
- template <typename... Args_>
- R operator()(Args_&&... args) &&
+ R operator()(Args... args) &&
{
CHECK(f != nullptr);
- return std::move(*f)(std::forward<Args_>(args)...);
+ return std::move(*f)(std::forward<Args>(args)...);
}
private:
struct Callable
{
virtual ~Callable() = default;
- virtual R operator()(Args...) && = 0;
+ virtual R operator()(Args&&...) && = 0;
};
template <typename F>
@@ -386,7 +385,7 @@ private:
CallableFn(const F& f) : f(f) {}
CallableFn(F&& f) : f(std::move(f)) {}
- virtual R operator()(Args... args) &&
+ virtual R operator()(Args&&... args) &&
{
return internal::Invoke<R>{}(std::move(f), std::forward<Args>(args)...);
}