clc: Build failure with MSVC when linking with llvm+clang 18.1
Before submitting your bug report:
- Check if a new version of Mesa is available which might have fixed the problem - N/A
- If you can, check if the latest development version (git main) works better - it doesn't, tested 24.1.0-devel a5f1f39b
- Check if your bug has already been reported here - this is forked from #10775 (closed) which remained with its MSVC only error unresolved
System information
- OS: Windows Server 2022
- GPU: N/A
- Kernel version: 10.0.20348
- Mesa version: 24.0.4
- Desktop manager and compositor: WDM
Describe the issue
Trying to build Mesa3D with MSVC fails in clc when linked with llvm+clang 18.1.x.
Regression
Did it used to work? It did not.
Log files as attachment
mesa-dist-win-msvc-clang18.log
Root cause
According to this comment LLVM enabled MSVC preprocessor conformance mode since 2022, but Mesa was lucky enough to not use any header requiring MSVC preprocessor conformance mode to build. Our luck ran out with LLVM 18.