InsightSoftwareConsortium / InsightSoftwareConsortium/ITK

ITK failed to build with "error C2143: syntax error: missing ':' before 'constant'" with MSVC on Windows arm64ec

Open
#3,600 0 comments 0 reactions 0 assignees View on GitHub
area:ThirdParty type:Bug type:Compiler
Dominant language
C++
Stars
1.7k
Forks
748
Avg merge
1d 1h
Merged PRs (30d)
64

Description

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:**
1. set VSCMD_SKIP_SENDTELEMETRY=1 & "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\VsDevCmd.bat" -host_arch=amd64 -arch=arm64
2. git clone https://github.com/InsightSoftwareConsortium/ITK F:\ITK
3. F:\ITK
4. git -C "F:\itk" apply f:\itk_error_c2516.patch --ignore-space-change --ignore-whitespace --whitespace=nowarn
5. git -C "F:\itk" apply f:\itk_use-the-lrintf-intrinsic.patch --ignore-space-change --ignore-whitespace --whitespace=nowarn
6. mkdir build_arm64ec &cd build_arm64ec
7. 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 ..
8. 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: '' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1900: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(55,31): error C2061: syntax error: identifier '__U128Q0' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1909: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(55,31): error C2059: syntax error: ';' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1920: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(55,46): error C2059: syntax error: '' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]
Line 1921: 74>C:\Program Files (x86)\Windows Kits\10\Include\10.0.22618.0\um\softintrin.h(56,31): error C2061: syntax error: identifier '__U128Q1' [F:\ITK\build_arm64ec\Modules\ThirdParty\ZLIB\src\itkzlib-ng\zlib.vcxproj]

**Error log:**
[itk_msbuild.log](https://github.com/InsightSoftwareConsortium/ITK/files/9494173/itk_msbuild.log)

Attachment:
[itk_use-the-lrintf-intrinsic.patch.log](https://github.com/InsightSoftwareConsortium/ITK/files/9494255/itk_use-the-lrintf-intrinsic.patch.log)
[itk_error_c2516.patch.log](https://github.com/InsightSoftwareConsortium/ITK/files/9494257/itk_error_c2516.patch.log)

[widemath.h.log](https://github.com/InsightSoftwareConsortium/ITK/files/9494228/widemath.h.log)
[softintrin.h.log](https://github.com/InsightSoftwareConsortium/ITK/files/9494229/softintrin.h.log)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.