Repository: mesos Updated Branches: refs/heads/master 42becf22f -> 133379439
Fixed compilation error with `DispatchProcess` code. Per MESOS-8686 and MESOS-8915, the benchmark test `ProcessTest.Process_BENCHMARK_DispatchDefer` had been disabled on Windows as the `DispatchProcess` class no longer compiled with `/permissive-` using the latest version of MSVC. The fix is thanks to PhoebeHui. Review: https://reviews.apache.org/r/67900/ Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/13337943 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/13337943 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/13337943 Branch: refs/heads/master Commit: 133379439360d3ddaaff0e4f9c87b518af660bbc Parents: 42becf2 Author: Andrew Schwartzmeyer <and...@schwartzmeyer.com> Authored: Thu Jul 12 13:29:43 2018 -0700 Committer: Andrew Schwartzmeyer <and...@schwartzmeyer.com> Committed: Thu Jul 12 16:45:38 2018 -0700 ---------------------------------------------------------------------- 3rdparty/libprocess/src/tests/benchmarks.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/13337943/3rdparty/libprocess/src/tests/benchmarks.cpp ---------------------------------------------------------------------- diff --git a/3rdparty/libprocess/src/tests/benchmarks.cpp b/3rdparty/libprocess/src/tests/benchmarks.cpp index 604122a..2ec0d42 100644 --- a/3rdparty/libprocess/src/tests/benchmarks.cpp +++ b/3rdparty/libprocess/src/tests/benchmarks.cpp @@ -494,8 +494,6 @@ TEST(ProcessTest, Process_BENCHMARK_ThroughputPerformance) } -// TODO(andschwa): Turn this test back on when MESOS-8915 is solved. -#ifndef __WINDOWS__ class DispatchProcess : public Process<DispatchProcess> { public: @@ -526,8 +524,11 @@ public: return Nothing(); } - dispatch(self(), &Self::_handler).then( - defer(self(), &Self::handler<T>, data)); + // NOTE: The prefix `this->` is required here, otherwise it will + // not compile when permissiveness is disabled (e.g. with MSVC on + // Windows). + dispatch(this->self(), &Self::_handler).then( + defer(this->self(), &Self::handler<T>, data)); return Nothing(); } @@ -580,7 +581,6 @@ TEST(ProcessTest, Process_BENCHMARK_DispatchDefer) DispatchProcess::run<DispatchProcess::Movable>("Movable", repeats); DispatchProcess::run<DispatchProcess::Copyable>("Copyable", repeats); } -#endif // __WINDOWS__ class ProtobufInstallHandlerBenchmarkProcess