microsoft / cppwinrt

C++/WinRT
MIT License
1.64k stars 236 forks source link

Update GitHub action LLVM version to 17.0.5 #1373

Closed jonwis closed 9 months ago

jonwis commented 9 months ago

In #1372 it looks like the build VMs were updated to a more recent VS and VCRT and STL combination, requiring an updated LLVM toolchain. This bumps the target LLM version to match.

jonwis commented 9 months ago

A new and interesting errro!

jonwis commented 9 months ago

Turns out that LLVM 17.0.5 resolved this complaint:

https://github.com/microsoft/cppwinrt/blob/bf4459b25aeeb7093e8262fb3b29ca70b0ab2e60/test/test_cpp20/custom_error.cpp#L38-L42

... so the test metadata needs to be updated to say that clang is no longer "!shouldfail"

jonwis commented 9 months ago

Notably, the test_component component does not build correctly here:

msbuild /m /p:Configuration=Debug,Platform=x64,Clang=1,LLVMToolsVersion=17.0.5,LLVMInstallDir=C:\llvm cppwinrt.sln

At least on my machine, the test_component.vcxproj picks up C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\Llvm\x64\bin\clang-cl.exe ... everything else correctly picks up the $(SolutionRootDir).llvm path. This causes a series of errors in yvals_core.h due to undefined uintptr_t

A problem for another day.