[clang] [llvm] [win] Add a flag to control the Control Flow Guard mechanism on Windows (PR #176276)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Jan 15 17:12:21 PST 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results
* 3080 tests passed
* 7 tests skipped
All executed tests passed, but another part of the build **failed**. Click on a failure below to see the details.
<details>
<summary>lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86CodeGenPassBuilder.cpp.o</summary>
```
FAILED: lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86CodeGenPassBuilder.cpp.o
sccache /opt/llvm/bin/clang++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/Target/X86 -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Target/X86 -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include -gmlt -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -fvisibility=hidden -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86CodeGenPassBuilder.cpp.o -MF lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86CodeGenPassBuilder.cpp.o.d -o lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86CodeGenPassBuilder.cpp.o -c /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp:84:21: error: no matching conversion for functional-style cast from 'llvm::CFGuardPass::Mechanism' to 'CFGuardPass'
84 | addFunctionPass(CFGuardPass(TT.isX86_64() ? CFGuardPass::Mechanism::Dispatch
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
85 | : CFGuardPass::Mechanism::Check),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Transforms/CFGuard.h:22:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'llvm::CFGuardPass::Mechanism' to 'const CFGuardPass' for 1st argument
22 | class CFGuardPass : public PassInfoMixin<CFGuardPass> {
| ^~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Transforms/CFGuard.h:22:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from 'llvm::CFGuardPass::Mechanism' to 'CFGuardPass' for 1st argument
22 | class CFGuardPass : public PassInfoMixin<CFGuardPass> {
| ^~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Transforms/CFGuard.h:26:3: note: candidate constructor not viable: requires 0 arguments, but 1 was provided
26 | CFGuardPass() {}
| ^
1 error generated.
```
</details>
<details>
<summary>lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o</summary>
```
FAILED: lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o
sccache /opt/llvm/bin/clang++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/Passes -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Passes -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include -gmlt -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o -MF lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o.d -o lib/Passes/CMakeFiles/LLVMPasses.dir/PassBuilder.cpp.o -c /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Passes/PassBuilder.cpp
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Passes/PassBuilder.cpp:873:34: error: unused function 'parseCFGuardPassOptions' [-Werror,-Wunused-function]
873 | Expected<CFGuardPass::Mechanism> parseCFGuardPassOptions(StringRef Params) {
| ^~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
```
</details>
If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.
https://github.com/llvm/llvm-project/pull/176276
More information about the cfe-commits
mailing list