ITK failed to build with "error C2143: syntax error: missing ':' before 'constant'" with MSVC on Windows arm64ec
ITK failed to build with "error C2143: syntax error: missing ':' before 'constant'" with MSVC on Windows arm64ec. It can reproduce on latest version on master branch. Could you please help look at this issue?
Versions and configuration OS: Windows Server 2022 Datacenter VS: Visual Studio 2019(16.11.18) Repro steps:
- set VSCMD_SKIP_SENDTELEMETRY=1 & "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\VsDevCmd.bat" -host_arch=amd64 -arch=arm64
- git clone https://github.com/InsightSoftwareConsortium/ITK F:\ITK
- F:\ITK
- git -C "F:\itk" apply f:\itk_error_c2516.patch --ignore-space-change --ignore-whitespace --whitespace=nowarn
- git -C "F:\itk" apply f:\itk_use-the-lrintf-intrinsic.patch --ignore-space-change --ignore-whitespace --whitespace=nowarn
- mkdir build_arm64ec &cd build_arm64ec
- cmake -G "Visual Studio 16 2019" -A ARM64EC -DCMAKE_SYSTEM_VERSION=10.0.22618.0 -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF ..
- msbuild /m /p:Platform=ARM64EC /p:Configuration=Release All_BUILD.vcxproj /t:Rebuild
Error info:
Line 1811: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\widemath.h(36,16): error C2143: syntax error: missing ':' before 'constant' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1816: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\widemath.h(36,19): error C2109: subscript requires array or pointer type [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1817: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\widemath.h(36): error C2056: illegal expression [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1832: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(53,102): error C2059: syntax error: 'constant' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1862: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(54,32): error C2061: syntax error: identifier '__U128D0' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1880: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(54,32): error C2059: syntax error: ';' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1891: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(54,47): error C2059: syntax error: '
Error log: itk_msbuild.log
Attachment: itk_use-the-lrintf-intrinsic.patch.log itk_error_c2516.patch.log