PhoebeHui created MESOS-8686:
--------------------------------
Summary: Mesos build failed with /permissive- + MSVC on windows
Key: MESOS-8686
URL: https://issues.apache.org/jira/browse/MESOS-8686
Project: Mesos
Issue Type: Bug
Components: build
Environment: VS2017 15.5.7 + windows server 2016
Reporter: PhoebeHui
Mesos(master branch) failed with error C2276 when build with permissive- with
MSVC, this should be source issue, the code is trying to use a member function
of a dependent base class.
Noted that this issue only found when compiles with unreleased vctoolset, that
next release of MSVC will have this behavior.
On line#528 and #529 of
"D:\Mesos\src\3rdparty\libprocess\src\tests\benchmarks.cpp"
dispatch(self(), &Self::_handler).then(
defer(self(), &Self::handler<T>, data));
Should be
dispatch(*this->*self(), &Self::_handler).then(
defer(*this->*self(), &Self::handler<T>, data));
Failures like
D:\Mesos\src\3rdparty\libprocess\src\tests\benchmarks.cpp(566): error C2276:
'&': illegal operation on bound member function expression
*Environment:*
VS2017 15.5.7 + windows server 2016
*Repro steps:*
# git clone -c core.autocrlf=true https://github.com/apache/mesos D:\mesos\src
# cd d:\mesos\src
# .\bootstrap.bat
# cd..
# set _CL_=/D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING /permissive-
# mkdir build_x64 && pushd build_x64
# cmake ..\src -G "Visual Studio 15 2017 Win64"
-DCMAKE_SYSTEM_VERSION=10.0.16299.0 -DENABLE_LIBEVENT=1 -DHAS_AUTHENTICATION=0
-DPATCHEXE_PATH="C:\gnuwin32\bin" -T host=x64
# msbuild Mesos.sln /p:Configuration=Debug /p:Platform=x64 /maxcpucount:4
/t:Rebuild
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)