Bug #93187 MySql build failed on MSVC under /std:c++latest mode
Submitted: 14 Nov 2018 11:09 Modified: 20 Nov 2018 9:41
Reporter: Quella Zhang Email Updates:
Status: Won't fix Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:8.0, 8.0.13 OS:Windows
Assigned to: CPU Architecture:Any

[14 Nov 2018 11:09] Quella Zhang
Description:
MySQL failed with error C2428 when build with msvc + std:c++latest on Windows, I use latest source version e4924f3 on MySQL 8.0 branch. Could you please help take a look at this?

Failure
mysql.cc
D:\MySQL\src\client\mysql.cc(4425,6): error C2428: '++': not allowed on operand of type 'bool'
  if (!(execute_buffer_conversion_done++) && status.line_buff &&

How to repeat:
1.git clone https://github.com/mysql/mysql-server.git D:\MySQL\src
2.it's rely on boost 1.67,so extract boost_1_67_0.zip to D:\MySQL\
3.set _CL_=/D_HAS_AUTO_PTR_ETC=1 /std:c++latest
4.mkdir build_x86 && pushd build_x86
5.cmake -G "Visual Studio 15 2017" -DCMAKE_SYSTEM_VERSION=10.0.17134.0 -DWITH_BOOST=..\boost_1_67_0 ..\src
6.msbuild /p:Configuration=Debug;Platform=Win32 build_x86\MySQL.sln /t:Rebuild /m /p:BuildInParallel=true
[14 Nov 2018 13:20] MySQL Verification Team
Hello Quella Zhang,

Thank you for the report and feedback!

regards,
Umesh
[14 Nov 2018 13:21] MySQL Verification Team
Build log..

Attachment: 93187_8.0.13.build (application/octet-stream, text), 4.42 KiB.

[15 Nov 2018 13:55] Jon Olav Hauglid
Hello Quella Zhang,

We have internally started using /std:c++14 and this flag will be default on
in an upcoming release. Using /std:c++latest is not really an option for us
to due compatibility with other compilers on other platforms.
[20 Nov 2018 9:41] Quella Zhang
Thank you for sharing this with our team.