[clang-tools-extra] [clang-tidy] Refactor the build system (PR #173518)

via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 24 19:12:21 PST 2025


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

The build failed before running any tests. Click on a failure below to see the details.

<details>
<summary>tools/clang/tools/extra/unittests/clang-tidy/ClangTidyTests</summary>

```
FAILED: tools/clang/tools/extra/unittests/clang-tidy/ClangTidyTests
: && /opt/llvm/bin/clang++ -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 -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG -no-pie -fuse-ld=lld -Wl,--color-diagnostics    -Wl,--gc-sections tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/AddConstTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/ClangTidyDiagnosticConsumerTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/ClangTidyOptionsTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/DeclRefExprUtilsTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/IncludeCleanerTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/IncludeInserterTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/GlobListTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/GoogleModuleTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/LLVMModuleTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/ModernizeModuleTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/NamespaceAliaserTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/ObjCModuleTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/OptionsProviderTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/OverlappingReplacementsTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/UsingInserterTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/ReadabilityModuleTest.cpp.o tools/clang/tools/extra/unittests/clang-tidy/CMakeFiles/ClangTidyTests.dir/TransformerClangTidyCheckTest.cpp.o -o tools/clang/tools/extra/unittests/clang-tidy/ClangTidyTests  lib/libLLVMFrontendOpenMP.a  lib/libLLVMSupport.a  lib/libLLVMSupport.a  lib/libllvm_gtest_main.a  lib/libllvm_gtest.a  lib/libclangAST.a  lib/libclangASTMatchers.a  lib/libclangBasic.a  lib/libclangFrontend.a  lib/libclangLex.a  lib/libclangSerialization.a  lib/libclangTooling.a  lib/libclangToolingCore.a  lib/libclangTransformer.a  lib/libclangIncludeCleaner.a  lib/libclangTidy.a  lib/libLLVMTestingAnnotations.a  lib/libLLVMTestingSupport.a  lib/libclangToolingRefactoring.a  lib/libclangTooling.a  lib/libclangDependencyScanning.a  lib/libclangIncludeCleaner.a  lib/libclangToolingInclusionsStdlib.a  lib/libclangAnalysisFlowSensitiveModels.a  lib/libclangAnalysisFlowSensitive.a  lib/libclangStaticAnalyzerFrontend.a  lib/libclangStaticAnalyzerCheckers.a  lib/libclangStaticAnalyzerCore.a  lib/libclangCrossTU.a  lib/libclangDriver.a  lib/libLLVMWindowsDriver.a  lib/libclangIndex.a  lib/libclangFrontend.a  lib/libclangOptions.a  lib/libclangParse.a  lib/libLLVMOption.a  lib/libLLVMPlugins.a  lib/libclangSerialization.a  lib/libclangSema.a  lib/libclangAPINotes.a  lib/libclangEdit.a  lib/libclangAnalysisLifetimeSafety.a  lib/libclangAnalysis.a  lib/libclangSupport.a  lib/libclangFormat.a  lib/libclangToolingInclusions.a  lib/libclangToolingCore.a  lib/libclangRewrite.a  lib/libclangDynamicASTMatchers.a  lib/libclangASTMatchers.a  lib/libclangAST.a  lib/libclangLex.a  lib/libclangBasic.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMTransformUtils.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMAnalysis.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMBinaryFormat.a  lib/libLLVMFrontendDirective.a  lib/libLLVMTargetParser.a  lib/libllvm_gtest.a  lib/libLLVMSupport.a  lib/libLLVMDemangle.a  -lrt  -ldl  -lm  /usr/lib/x86_64-linux-gnu/libz.so  -lpthread && :
ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyCheck
>>> referenced by TransformerClangTidyCheck.cpp
>>>               TransformerClangTidyCheck.cpp.o:(typeinfo for clang::tidy::utils::TransformerClangTidyCheck) in archive lib/libclangTidy.a
>>> referenced by HeaderGuard.cpp
>>>               HeaderGuard.cpp.o:(typeinfo for clang::tidy::utils::HeaderGuardCheck) in archive lib/libclangTidy.a
>>> referenced by NamespaceCommentCheck.cpp
>>>               NamespaceCommentCheck.cpp.o:(typeinfo for clang::tidy::readability::NamespaceCommentCheck) in archive lib/libclangTidy.a
>>> referenced 7 more times
>>> did you mean: vtable for clang::tidy::ClangTidyCheck
>>> defined in: lib/libclangTidy.a(ClangTidyCheck.cpp.o)

ld.lld: error: undefined symbol: typeinfo for clang::PPCallbacks
>>> referenced by IncludeInserter.cpp
>>>               IncludeInserter.cpp.o:(typeinfo for clang::tidy::utils::IncludeInserterCallback) in archive lib/libclangTidy.a
>>> referenced by HeaderGuard.cpp
>>>               HeaderGuard.cpp.o:(typeinfo for clang::tidy::utils::(anonymous namespace)::HeaderGuardPPCallbacks) in archive lib/libclangTidy.a
>>> referenced by IncludeOrderCheck.cpp
>>>               IncludeOrderCheck.cpp.o:(typeinfo for clang::tidy::llvm_check::(anonymous namespace)::IncludeOrderPPCallbacks) in archive lib/libclangTidy.a
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```
</details>
<details>
<summary>bin/clangd-indexer</summary>

```
FAILED: bin/clangd-indexer
: && /opt/llvm/bin/clang++ -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 -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG -no-pie -fuse-ld=lld -Wl,--color-diagnostics    -Wl,--gc-sections tools/clang/tools/extra/clangd/indexer/CMakeFiles/clangd-indexer.dir/IndexerMain.cpp.o -o bin/clangd-indexer  -Wl,-rpath,"\$ORIGIN/../lib"  lib/libLLVMSupport.a  lib/libclangAST.a  lib/libclangBasic.a  lib/libclangFrontend.a  lib/libclangIndex.a  lib/libclangLex.a  lib/libclangTooling.a  lib/libclangDaemon.a  lib/libclangdSupport.a  lib/libLLVMAArch64Info.a  lib/libLLVMAMDGPUInfo.a  lib/libLLVMARMInfo.a  lib/libLLVMAVRInfo.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonInfo.a  lib/libLLVMLanaiInfo.a  lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMSparcInfo.a  lib/libLLVMSPIRVInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMVEInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMX86Info.a  lib/libLLVMXCoreInfo.a  lib/libclangToolingSyntax.a  lib/libclangTidy.a  lib/libclangTooling.a  lib/libclangDependencyScanning.a  lib/libclangIncludeCleaner.a  lib/libclangToolingInclusionsStdlib.a  lib/libclangAnalysisFlowSensitiveModels.a  lib/libclangAnalysisFlowSensitive.a  lib/libclangStaticAnalyzerFrontend.a  lib/libclangStaticAnalyzerCheckers.a  lib/libclangStaticAnalyzerCore.a  lib/libclangCrossTU.a  lib/libclangIndex.a  lib/libclangDriver.a  lib/libclangFrontend.a  lib/libclangParse.a  lib/libLLVMPlugins.a  lib/libclangOptions.a  lib/libclangSerialization.a  lib/libclangSema.a  lib/libclangAPINotes.a  lib/libclangEdit.a  lib/libclangAnalysisLifetimeSafety.a  lib/libclangAnalysis.a  lib/libclangFormat.a  lib/libclangToolingInclusions.a  lib/libclangToolingCore.a  lib/libclangRewrite.a  lib/libclangSupport.a  lib/libLLVMWindowsDriver.a  lib/libLLVMOption.a  lib/libclangDynamicASTMatchers.a  lib/libclangASTMatchers.a  lib/libclangAST.a  lib/libclangLex.a  lib/libclangBasic.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMTransformUtils.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMAnalysis.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMFrontendDirective.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  /usr/lib/x86_64-linux-gnu/libz.so  lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyCheck
>>> referenced by SwappedArgumentsCheck.cpp
>>>               SwappedArgumentsCheck.cpp.o:(typeinfo for clang::tidy::bugprone::SwappedArgumentsCheck) in archive lib/libclangTidy.a
>>> referenced by NoMallocCheck.cpp
>>>               NoMallocCheck.cpp.o:(typeinfo for clang::tidy::cppcoreguidelines::NoMallocCheck) in archive lib/libclangTidy.a
>>> referenced by InaccurateEraseCheck.cpp
>>>               InaccurateEraseCheck.cpp.o:(typeinfo for clang::tidy::bugprone::InaccurateEraseCheck) in archive lib/libclangTidy.a
>>> referenced 358 more times
>>> did you mean: vtable for clang::tidy::ClangTidyCheck
>>> defined in: lib/libclangTidy.a(ClangTidyCheck.cpp.o)

ld.lld: error: undefined symbol: typeinfo for clang::PPCallbacks
>>> referenced by DuplicateIncludeCheck.cpp
>>>               DuplicateIncludeCheck.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::DuplicateIncludeCallbacks) in archive lib/libclangTidy.a
>>> referenced by IncludeInserter.cpp
>>>               IncludeInserter.cpp.o:(typeinfo for clang::tidy::utils::IncludeInserterCallback) in archive lib/libclangTidy.a
>>> referenced by HeaderGuard.cpp
>>>               HeaderGuard.cpp.o:(typeinfo for clang::tidy::utils::(anonymous namespace)::HeaderGuardPPCallbacks) in archive lib/libclangTidy.a
>>> referenced 22 more times

ld.lld: error: undefined symbol: typeinfo for clang::analyze_format_string::FormatStringHandler
>>> referenced by FormatStringConverter.cpp
>>>               FormatStringConverter.cpp.o:(typeinfo for clang::tidy::utils::FormatStringConverter) in archive lib/libclangTidy.a
>>> referenced by UncheckedStringToNumberConversionCheck.cpp
>>>               UncheckedStringToNumberConversionCheck.cpp.o:(typeinfo for clang::tidy::bugprone::classifyFormatString(llvm::StringRef, clang::LangOptions const&, clang::TargetInfo const&)::Handler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::buildMatchers(clang::transformer::RewriteRuleBase const&)
>>> referenced by TransformerClangTidyCheck.cpp:98 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp:98)
>>>               TransformerClangTidyCheck.cpp.o:(clang::tidy::utils::TransformerClangTidyCheck::registerMatchers(clang::ast_matchers::MatchFinder*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::findSelectedCase(clang::ast_matchers::MatchFinder::MatchResult const&, clang::transformer::RewriteRuleBase const&)
>>> referenced by TransformerClangTidyCheck.cpp:107 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp:107)
>>>               TransformerClangTidyCheck.cpp.o:(clang::tidy::utils::TransformerClangTidyCheck::check(clang::ast_matchers::MatchFinder::MatchResult const&)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyModule
>>> referenced by ZirconTidyModule.cpp
>>>               ZirconTidyModule.cpp.o:(typeinfo for clang::tidy::zircon::(anonymous namespace)::ZirconModule) in archive lib/libclangTidy.a
>>> referenced by ReadabilityTidyModule.cpp
>>>               ReadabilityTidyModule.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::ReadabilityModule) in archive lib/libclangTidy.a
>>> referenced by PortabilityTidyModule.cpp
>>>               PortabilityTidyModule.cpp.o:(typeinfo for clang::tidy::portability::(anonymous namespace)::PortabilityModule) in archive lib/libclangTidy.a
>>> referenced 21 more times

ld.lld: error: undefined symbol: typeinfo for llvm::support::detail::format_adapter
>>> referenced by UseStdNumbersCheck.cpp
>>>               UseStdNumbersCheck.cpp.o:(typeinfo for llvm::support::detail::provider_format_adapter<double const&>) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for clang::CommentHandler
>>> referenced by MisleadingBidirectionalCheck.cpp
>>>               MisleadingBidirectionalCheck.cpp.o:(typeinfo for clang::tidy::misc::MisleadingBidirectionalCheck::MisleadingBidirectionalHandler) in archive lib/libclangTidy.a
>>> referenced by TodoCommentCheck.cpp
>>>               TodoCommentCheck.cpp.o:(typeinfo for clang::tidy::google::readability::TodoCommentCheck::TodoCommentHandler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced 31 more times

ld.lld: error: undefined symbol: clang::transformer::noopEdit(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](llvm::StringRef)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 18 more times

ld.lld: error: undefined symbol: clang::transformer::catVector(std::vector<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>, std::allocator<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 14 more times

ld.lld: error: undefined symbol: clang::query::QueryParser::parse(llvm::StringRef, clang::query::QuerySession const&)
>>> referenced by QueryCheck.cpp:36 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/custom/QueryCheck.cpp:36)
>>>               QueryCheck.cpp.o:(clang::tidy::custom::QueryCheck::QueryCheck(llvm::StringRef, clang::tidy::ClangTidyOptions::CustomCheckValue const&, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::remove(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by StringviewNullptrCheck.cpp:85 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:85)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:94 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:94)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:124 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:124)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 7 more times

ld.lld: error: undefined symbol: clang::transformer::changeTo(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:100 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:100)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:106 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:106)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:115 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:115)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 13 more times

ld.lld: error: undefined symbol: clang::transformer::name(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by StringviewNullptrCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:134)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::access(llvm::StringRef, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:239 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:239)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:250 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:250)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeEditGenerator(clang::transformer::ASTEdit)
>>> referenced by RewriteRule.h:345 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/RewriteRule.h:345)
>>>               StringviewNullptrCheck.cpp.o:(clang::transformer::RewriteRuleWith<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>> clang::transformer::makeRule<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, clang::transformer::ASTEdit>(clang::ast_matchers::internal::DynTypedMatcher, clang::transformer::ASTEdit&&, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::RootID
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:435 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:435)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::addInclude(llvm::StringRef, clang::transformer::IncludeFormat)) in archive lib/libclangTidy.a
>>> referenced 1 more times

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced 2 more times

ld.lld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```
</details>
<details>
<summary>bin/clangd</summary>

```
FAILED: bin/clangd
: && /opt/llvm/bin/clang++ -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 -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG -no-pie -fuse-ld=lld -Wl,--color-diagnostics    -Wl,--gc-sections tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/AddUsing.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/AnnotateHighlightings.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DefineInline.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DefineOutline.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DumpAST.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExpandDeducedType.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExpandMacro.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExtractFunction.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExtractVariable.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/MemberwiseConstructor.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ObjCLocalizeStringLiteral.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ObjCMemberwiseInitializer.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/OverridePureVirtuals.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/PopulateSwitch.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/RawStringLiteral.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/RemoveUsingNamespace.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ScopifyEnum.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/SpecialMembers.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/SwapBinaryOperands.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/SwapIfBranches.cpp.o tools/clang/tools/extra/clangd/tool/CMakeFiles/clangd.dir/ClangdToolMain.cpp.o -o bin/clangd  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMSupport.a  lib/libLLVMAArch64Info.a  lib/libLLVMAMDGPUInfo.a  lib/libLLVMARMInfo.a  lib/libLLVMAVRInfo.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonInfo.a  lib/libLLVMLanaiInfo.a  lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMSparcInfo.a  lib/libLLVMSPIRVInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMVEInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMX86Info.a  lib/libLLVMXCoreInfo.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMOption.a  lib/libLLVMTargetParser.a  lib/libclangAST.a  lib/libclangBasic.a  lib/libclangLex.a  lib/libclangSema.a  lib/libclangToolingCore.a  lib/libclangToolingRefactoring.a  lib/libclangToolingSyntax.a  lib/libclangdMain.a  lib/libclangDaemon.a  lib/libclangdSupport.a  lib/libclangToolingSyntax.a  lib/libclangTidy.a  lib/libclangTooling.a  lib/libclangDependencyScanning.a  lib/libclangIncludeCleaner.a  lib/libclangToolingInclusionsStdlib.a  lib/libclangAnalysisFlowSensitiveModels.a  lib/libclangAnalysisFlowSensitive.a  lib/libclangStaticAnalyzerFrontend.a  lib/libclangStaticAnalyzerCheckers.a  lib/libclangStaticAnalyzerCore.a  lib/libclangCrossTU.a  lib/libclangIndex.a  lib/libclangDriver.a  lib/libclangFrontend.a  lib/libclangParse.a  lib/libLLVMPlugins.a  lib/libclangOptions.a  lib/libclangSerialization.a  lib/libclangSema.a  lib/libclangAPINotes.a  lib/libclangAnalysisLifetimeSafety.a  lib/libclangAnalysis.a  lib/libclangFormat.a  lib/libclangToolingInclusions.a  lib/libclangToolingCore.a  lib/libclangRewrite.a  lib/libclangEdit.a  lib/libclangSupport.a  lib/libLLVMWindowsDriver.a  lib/libclangDynamicASTMatchers.a  lib/libclangASTMatchers.a  lib/libclangAST.a  lib/libclangdRemoteIndex.a  lib/libLLVMAArch64Info.a  lib/libLLVMAMDGPUInfo.a  lib/libLLVMARMInfo.a  lib/libLLVMAVRInfo.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonInfo.a  lib/libLLVMLanaiInfo.a  lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMSparcInfo.a  lib/libLLVMSPIRVInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMVEInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMX86Info.a  lib/libLLVMXCoreInfo.a  lib/libLLVMOption.a  lib/libclangdSupport.a  lib/libclangLex.a  lib/libclangBasic.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMTransformUtils.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMAnalysis.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMTextAPI.a  lib/libLLVMBinaryFormat.a  lib/libLLVMFrontendDirective.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  /usr/lib/x86_64-linux-gnu/libz.so  lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyCheck
>>> referenced by UnusedReturnValueCheck.cpp
>>>               UnusedReturnValueCheck.cpp.o:(typeinfo for clang::tidy::bugprone::UnusedReturnValueCheck) in archive lib/libclangTidy.a
>>> referenced by TransformerClangTidyCheck.cpp
>>>               TransformerClangTidyCheck.cpp.o:(typeinfo for clang::tidy::utils::TransformerClangTidyCheck) in archive lib/libclangTidy.a
>>> referenced by HeaderGuard.cpp
>>>               HeaderGuard.cpp.o:(typeinfo for clang::tidy::utils::HeaderGuardCheck) in archive lib/libclangTidy.a
>>> referenced 358 more times
>>> did you mean: vtable for clang::tidy::ClangTidyCheck
>>> defined in: lib/libclangTidy.a(ClangTidyCheck.cpp.o)

ld.lld: error: undefined symbol: clang::transformer::detail::buildMatchers(clang::transformer::RewriteRuleBase const&)
>>> referenced by TransformerClangTidyCheck.cpp:98 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp:98)
>>>               TransformerClangTidyCheck.cpp.o:(clang::tidy::utils::TransformerClangTidyCheck::registerMatchers(clang::ast_matchers::MatchFinder*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::findSelectedCase(clang::ast_matchers::MatchFinder::MatchResult const&, clang::transformer::RewriteRuleBase const&)
>>> referenced by TransformerClangTidyCheck.cpp:107 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp:107)
>>>               TransformerClangTidyCheck.cpp.o:(clang::tidy::utils::TransformerClangTidyCheck::check(clang::ast_matchers::MatchFinder::MatchResult const&)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for clang::PPCallbacks
>>> referenced by IncludeInserter.cpp
>>>               IncludeInserter.cpp.o:(typeinfo for clang::tidy::utils::IncludeInserterCallback) in archive lib/libclangTidy.a
>>> referenced by HeaderGuard.cpp
>>>               HeaderGuard.cpp.o:(typeinfo for clang::tidy::utils::(anonymous namespace)::HeaderGuardPPCallbacks) in archive lib/libclangTidy.a
>>> referenced by UseConcisePreprocessorDirectivesCheck.cpp
>>>               UseConcisePreprocessorDirectivesCheck.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::IfPreprocessorCallbacks) in archive lib/libclangTidy.a
>>> referenced 22 more times

ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyModule
>>> referenced by ZirconTidyModule.cpp
>>>               ZirconTidyModule.cpp.o:(typeinfo for clang::tidy::zircon::(anonymous namespace)::ZirconModule) in archive lib/libclangTidy.a
>>> referenced by ReadabilityTidyModule.cpp
>>>               ReadabilityTidyModule.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::ReadabilityModule) in archive lib/libclangTidy.a
>>> referenced by PortabilityTidyModule.cpp
>>>               PortabilityTidyModule.cpp.o:(typeinfo for clang::tidy::portability::(anonymous namespace)::PortabilityModule) in archive lib/libclangTidy.a
>>> referenced 21 more times

ld.lld: error: undefined symbol: typeinfo for clang::analyze_format_string::FormatStringHandler
>>> referenced by FormatStringConverter.cpp
>>>               FormatStringConverter.cpp.o:(typeinfo for clang::tidy::utils::FormatStringConverter) in archive lib/libclangTidy.a
>>> referenced by UncheckedStringToNumberConversionCheck.cpp
>>>               UncheckedStringToNumberConversionCheck.cpp.o:(typeinfo for clang::tidy::bugprone::classifyFormatString(llvm::StringRef, clang::LangOptions const&, clang::TargetInfo const&)::Handler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for llvm::support::detail::format_adapter
>>> referenced by UseStdNumbersCheck.cpp
>>>               UseStdNumbersCheck.cpp.o:(typeinfo for llvm::support::detail::provider_format_adapter<double const&>) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for clang::CommentHandler
>>> referenced by MisleadingBidirectionalCheck.cpp
>>>               MisleadingBidirectionalCheck.cpp.o:(typeinfo for clang::tidy::misc::MisleadingBidirectionalCheck::MisleadingBidirectionalHandler) in archive lib/libclangTidy.a
>>> referenced by TodoCommentCheck.cpp
>>>               TodoCommentCheck.cpp.o:(typeinfo for clang::tidy::google::readability::TodoCommentCheck::TodoCommentHandler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced 31 more times

ld.lld: error: undefined symbol: clang::transformer::noopEdit(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](llvm::StringRef)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 18 more times

ld.lld: error: undefined symbol: clang::transformer::catVector(std::vector<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>, std::allocator<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 14 more times

ld.lld: error: undefined symbol: clang::query::QueryParser::parse(llvm::StringRef, clang::query::QuerySession const&)
>>> referenced by QueryCheck.cpp:36 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/custom/QueryCheck.cpp:36)
>>>               QueryCheck.cpp.o:(clang::tidy::custom::QueryCheck::QueryCheck(llvm::StringRef, clang::tidy::ClangTidyOptions::CustomCheckValue const&, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::remove(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by StringviewNullptrCheck.cpp:85 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:85)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:94 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:94)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:124 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:124)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 7 more times

ld.lld: error: undefined symbol: clang::transformer::changeTo(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:100 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:100)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:106 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:106)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:115 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:115)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 13 more times

ld.lld: error: undefined symbol: clang::transformer::name(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by StringviewNullptrCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:134)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::access(llvm::StringRef, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:239 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:239)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:250 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:250)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeEditGenerator(clang::transformer::ASTEdit)
>>> referenced by RewriteRule.h:345 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/RewriteRule.h:345)
>>>               StringviewNullptrCheck.cpp.o:(clang::transformer::RewriteRuleWith<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>> clang::transformer::makeRule<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, clang::transformer::ASTEdit>(clang::ast_matchers::internal::DynTypedMatcher, clang::transformer::ASTEdit&&, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::RootID
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:435 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:435)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::addInclude(llvm::StringRef, clang::transformer::IncludeFormat)) in archive lib/libclangTidy.a
>>> referenced 1 more times

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced 2 more times

ld.lld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```
</details>
<details>
<summary>bin/clang-tidy</summary>

```
FAILED: bin/clang-tidy
: && /opt/llvm/bin/clang++ -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 -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG -no-pie -fuse-ld=lld -Wl,--color-diagnostics   -Wl,--export-dynamic tools/clang/tools/extra/clang-tidy/tool/CMakeFiles/clang-tidy.dir/ClangTidyToolMain.cpp.o -o bin/clang-tidy  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAMDGPUAsmParser.a  lib/libLLVMARMAsmParser.a  lib/libLLVMAVRAsmParser.a  lib/libLLVMBPFAsmParser.a  lib/libLLVMHexagonAsmParser.a  lib/libLLVMLanaiAsmParser.a  lib/libLLVMLoongArchAsmParser.a  lib/libLLVMMipsAsmParser.a  lib/libLLVMMSP430AsmParser.a  lib/libLLVMPowerPCAsmParser.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMSparcAsmParser.a  lib/libLLVMSystemZAsmParser.a  lib/libLLVMVEAsmParser.a  lib/libLLVMWebAssemblyAsmParser.a  lib/libLLVMX86AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAMDGPUDesc.a  lib/libLLVMARMDesc.a  lib/libLLVMAVRDesc.a  lib/libLLVMBPFDesc.a  lib/libLLVMHexagonDesc.a  lib/libLLVMLanaiDesc.a  lib/libLLVMLoongArchDesc.a  lib/libLLVMMipsDesc.a  lib/libLLVMMSP430Desc.a  lib/libLLVMNVPTXDesc.a  lib/libLLVMPowerPCDesc.a  lib/libLLVMRISCVDesc.a  lib/libLLVMSparcDesc.a  lib/libLLVMSPIRVDesc.a  lib/libLLVMSystemZDesc.a  lib/libLLVMVEDesc.a  lib/libLLVMWebAssemblyDesc.a  lib/libLLVMX86Desc.a  lib/libLLVMXCoreDesc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAMDGPUInfo.a  lib/libLLVMARMInfo.a  lib/libLLVMAVRInfo.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonInfo.a  lib/libLLVMLanaiInfo.a  lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMSparcInfo.a  lib/libLLVMSPIRVInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMVEInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMX86Info.a  lib/libLLVMXCoreInfo.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  lib/libclangAST.a  lib/libclangASTMatchers.a  lib/libclangBasic.a  lib/libclangTooling.a  lib/libclangToolingCore.a  lib/libclangTidy.a  lib/libclangTidyMain.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAMDGPUAsmParser.a  lib/libLLVMARMAsmParser.a  lib/libLLVMAVRAsmParser.a  lib/libLLVMBPFAsmParser.a  lib/libLLVMHexagonAsmParser.a  lib/libLLVMLanaiAsmParser.a  lib/libLLVMLoongArchAsmParser.a  lib/libLLVMMipsAsmParser.a  lib/libLLVMMSP430AsmParser.a  lib/libLLVMPowerPCAsmParser.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMSparcAsmParser.a  lib/libLLVMSystemZAsmParser.a  lib/libLLVMVEAsmParser.a  lib/libLLVMWebAssemblyAsmParser.a  lib/libLLVMX86AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Utils.a  lib/libLLVMAMDGPUDesc.a  lib/libLLVMAMDGPUUtils.a  lib/libLLVMARMDesc.a  lib/libLLVMARMUtils.a  lib/libLLVMAVRDesc.a  lib/libLLVMBPFDesc.a  lib/libLLVMHexagonDesc.a  lib/libLLVMLanaiDesc.a  lib/libLLVMLoongArchDesc.a  lib/libLLVMMipsDesc.a  lib/libLLVMMSP430Desc.a  lib/libLLVMNVPTXDesc.a  lib/libLLVMPowerPCDesc.a  lib/libLLVMRISCVDesc.a  lib/libLLVMSparcDesc.a  lib/libLLVMSPIRVDesc.a  lib/libLLVMSystemZDesc.a  lib/libLLVMVEDesc.a  lib/libLLVMWebAssemblyDesc.a  lib/libLLVMX86Desc.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMMCDisassembler.a  lib/libLLVMXCoreDesc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAMDGPUInfo.a  lib/libLLVMARMInfo.a  lib/libLLVMAVRInfo.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonInfo.a  lib/libLLVMLanaiInfo.a  lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMSparcInfo.a  lib/libLLVMSPIRVInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMVEInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMX86Info.a  lib/libLLVMXCoreInfo.a  lib/libclangTidy.a  lib/libclangTooling.a  lib/libclangDependencyScanning.a  lib/libclangAnalysisFlowSensitiveModels.a  lib/libclangAnalysisFlowSensitive.a  lib/libclangStaticAnalyzerFrontend.a  lib/libclangStaticAnalyzerCheckers.a  lib/libclangStaticAnalyzerCore.a  lib/libclangCrossTU.a  lib/libclangDriver.a  lib/libLLVMWindowsDriver.a  lib/libclangIndex.a  lib/libclangFrontend.a  lib/libclangOptions.a  lib/libLLVMOption.a  lib/libclangParse.a  lib/libLLVMPlugins.a  lib/libclangSerialization.a  lib/libclangSema.a  lib/libclangAPINotes.a  lib/libclangEdit.a  lib/libclangAnalysisLifetimeSafety.a  lib/libclangAnalysis.a  lib/libclangSupport.a  lib/libclangDynamicASTMatchers.a  lib/libclangASTMatchers.a  lib/libclangIncludeCleaner.a  lib/libclangFormat.a  lib/libclangToolingInclusions.a  lib/libclangToolingCore.a  lib/libclangRewrite.a  lib/libclangToolingInclusionsStdlib.a  lib/libclangAST.a  lib/libclangLex.a  lib/libclangBasic.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMTransformUtils.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMFrontendDirective.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMCore.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMSupport.a  lib/libLLVMDemangle.a  -lrt  -ldl  -lm  /usr/lib/x86_64-linux-gnu/libz.so && :
ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyModule
>>> referenced by ZirconTidyModule.cpp
>>>               ZirconTidyModule.cpp.o:(typeinfo for clang::tidy::zircon::(anonymous namespace)::ZirconModule) in archive lib/libclangTidy.a
>>> referenced by PortabilityTidyModule.cpp
>>>               PortabilityTidyModule.cpp.o:(typeinfo for clang::tidy::portability::(anonymous namespace)::PortabilityModule) in archive lib/libclangTidy.a
>>> referenced by ReadabilityTidyModule.cpp
>>>               ReadabilityTidyModule.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::ReadabilityModule) in archive lib/libclangTidy.a
>>> referenced 22 more times
>>> did you mean: vtable for clang::tidy::ClangTidyModule
>>> defined in: lib/libclangTidy.a(ClangTidyModule.cpp.o)

ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyCheck
>>> referenced by UseConcisePreprocessorDirectivesCheck.cpp
>>>               UseConcisePreprocessorDirectivesCheck.cpp.o:(typeinfo for clang::tidy::readability::UseConcisePreprocessorDirectivesCheck) in archive lib/libclangTidy.a
>>> referenced by UseStdMinMaxCheck.cpp
>>>               UseStdMinMaxCheck.cpp.o:(typeinfo for clang::tidy::readability::UseStdMinMaxCheck) in archive lib/libclangTidy.a
>>> referenced by UniqueptrDeleteReleaseCheck.cpp
>>>               UniqueptrDeleteReleaseCheck.cpp.o:(typeinfo for clang::tidy::readability::UniqueptrDeleteReleaseCheck) in archive lib/libclangTidy.a
>>> referenced 360 more times
>>> did you mean: vtable for clang::tidy::ClangTidyCheck
>>> defined in: lib/libclangTidy.a(ClangTidyCheck.cpp.o)

ld.lld: error: undefined symbol: typeinfo for clang::PPCallbacks
>>> referenced by UseConcisePreprocessorDirectivesCheck.cpp
>>>               UseConcisePreprocessorDirectivesCheck.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::IfPreprocessorCallbacks) in archive lib/libclangTidy.a
>>> referenced by RedundantPreprocessorCheck.cpp
>>>               RedundantPreprocessorCheck.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::RedundantPreprocessorCallbacks) in archive lib/libclangTidy.a
>>> referenced by DuplicateIncludeCheck.cpp
>>>               DuplicateIncludeCheck.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::DuplicateIncludeCallbacks) in archive lib/libclangTidy.a
>>> referenced 22 more times

ld.lld: error: undefined symbol: typeinfo for llvm::support::detail::format_adapter
>>> referenced by UseStdNumbersCheck.cpp
>>>               UseStdNumbersCheck.cpp.o:(typeinfo for llvm::support::detail::provider_format_adapter<double const&>) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp
>>>               UseNewMLIROpBuilderCheck.cpp.o:(typeinfo for llvm::support::detail::provider_format_adapter<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp
>>>               UseNewMLIROpBuilderCheck.cpp.o:(typeinfo for llvm::support::detail::provider_format_adapter<char const*>) in archive lib/libclangTidy.a
>>> referenced 4 more times

ld.lld: error: undefined symbol: typeinfo for clang::analyze_format_string::FormatStringHandler
>>> referenced by FormatStringConverter.cpp
>>>               FormatStringConverter.cpp.o:(typeinfo for clang::tidy::utils::FormatStringConverter) in archive lib/libclangTidy.a
>>> referenced by UncheckedStringToNumberConversionCheck.cpp
>>>               UncheckedStringToNumberConversionCheck.cpp.o:(typeinfo for clang::tidy::bugprone::classifyFormatString(llvm::StringRef, clang::LangOptions const&, clang::TargetInfo const&)::Handler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for clang::CommentHandler
>>> referenced by MisleadingBidirectionalCheck.cpp
>>>               MisleadingBidirectionalCheck.cpp.o:(typeinfo for clang::tidy::misc::MisleadingBidirectionalCheck::MisleadingBidirectionalHandler) in archive lib/libclangTidy.a
>>> referenced by TodoCommentCheck.cpp
>>>               TodoCommentCheck.cpp.o:(typeinfo for clang::tidy::google::readability::TodoCommentCheck::TodoCommentHandler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced 31 more times

ld.lld: error: undefined symbol: clang::transformer::noopEdit(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](llvm::StringRef)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 18 more times

ld.lld: error: undefined symbol: clang::transformer::catVector(std::vector<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>, std::allocator<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 14 more times

ld.lld: error: undefined symbol: clang::query::QueryParser::parse(llvm::StringRef, clang::query::QuerySession const&)
>>> referenced by QueryCheck.cpp:36 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/custom/QueryCheck.cpp:36)
>>>               QueryCheck.cpp.o:(clang::tidy::custom::QueryCheck::QueryCheck(llvm::StringRef, clang::tidy::ClangTidyOptions::CustomCheckValue const&, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::remove(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by StringviewNullptrCheck.cpp:85 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:85)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:94 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:94)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:124 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:124)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 7 more times

ld.lld: error: undefined symbol: clang::transformer::changeTo(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:100 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:100)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:106 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:106)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:115 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:115)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 13 more times

ld.lld: error: undefined symbol: clang::transformer::name(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by StringviewNullptrCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:134)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::access(llvm::StringRef, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:239 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:239)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:250 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:250)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeEditGenerator(clang::transformer::ASTEdit)
>>> referenced by RewriteRule.h:345 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/RewriteRule.h:345)
>>>               StringviewNullptrCheck.cpp.o:(clang::transformer::RewriteRuleWith<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>> clang::transformer::makeRule<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, clang::transformer::ASTEdit>(clang::ast_matchers::internal::DynTypedMatcher, clang::transformer::ASTEdit&&, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::RootID
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:435 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:435)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::addInclude(llvm::StringRef, clang::transformer::IncludeFormat)) in archive lib/libclangTidy.a
>>> referenced 1 more times

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced 2 more times

ld.lld: error: undefined symbol: clang::transformer::expansion(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by RewriteRule.h:228 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/RewriteRule.h:228)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::addInclude(llvm::StringRef, clang::transformer::IncludeFormat)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::addInclude(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, llvm::StringRef, clang::transformer::IncludeFormat)
>>> referenced by RewriteRule.h:228 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/RewriteRule.h:228)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::addInclude(llvm::StringRef, clang::transformer::IncludeFormat)) in archive lib/libclangTidy.a

ld.lld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```
</details>
<details>
<summary>tools/clang/tools/extra/clangd/unittests/ClangdTests</summary>

```
FAILED: tools/clang/tools/extra/clangd/unittests/ClangdTests
: && /opt/llvm/bin/clang++ -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 -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG -no-pie -fuse-ld=lld -Wl,--color-diagnostics    -Wl,--gc-sections tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/AddUsing.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/AnnotateHighlightings.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DefineInline.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DefineOutline.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/DumpAST.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExpandDeducedType.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExpandMacro.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExtractFunction.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ExtractVariable.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/MemberwiseConstructor.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ObjCLocalizeStringLiteral.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ObjCMemberwiseInitializer.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/OverridePureVirtuals.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/PopulateSwitch.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/RawStringLiteral.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/RemoveUsingNamespace.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/ScopifyEnum.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/SpecialMembers.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/SwapBinaryOperands.cpp.o tools/clang/tools/extra/clangd/refactor/tweaks/CMakeFiles/obj.clangDaemonTweaks.dir/SwapIfBranches.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/Annotations.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ASTTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ASTSignalsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/BackgroundIndexTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/CallHierarchyTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/CanonicalIncludesTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ClangdTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ClangdLSPServerTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/CodeCompleteTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/CodeCompletionStringsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/CollectMacrosTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/CompileCommandsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/CompilerTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ConfigCompileTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ConfigProviderTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ConfigYAMLTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/DecisionForestTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/DexTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/DiagnosticsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/DraftStoreTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/DumpASTTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ExpectedTypeTest.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FeatureModulesTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FeatureModulesRegistryTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FileDistanceTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FileIndexTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FindSymbolsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FindTargetTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FormatTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FSTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/FuzzyMatchTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/GlobalCompilationDatabaseTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/HeadersTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/HeaderSourceSwitchTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/HoverTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/IncludeCleanerTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/IndexActionTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/IndexTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/InlayHintTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/InsertionPointTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/JSONTransportTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/LoggerTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/LSPBinderTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/LSPClient.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/PrerequisiteModulesTest.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ModulesTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ParsedASTTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/PathMappingTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/PreambleTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/PrintASTTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ProjectAwareIndexTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/QualityTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/RIFFTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/RenameTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ReplayPeambleTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SelectionTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SemanticHighlightingTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SemanticSelectionTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SerializationTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SourceCodeTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/StdLibTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SymbolCollectorTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SymbolDocumentationTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SymbolInfoTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/SyncAPI.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/TUSchedulerTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/TestFS.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/TestIndex.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/TestTU.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/TestWorkspace.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/ThreadCrashReporterTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/TidyProviderTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/TypeHierarchyTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/URITests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/XRefsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/DecisionForestRuntimeTest.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/CancellationTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/ContextTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/FileCacheTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/FunctionTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/MarkupTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/MemoryTreeTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/PathTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/TestTracer.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/ThreadingTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/support/TraceTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/AddUsingTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/AnnotateHighlightingsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/DefineInlineTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/DefineOutlineTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/DumpASTTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/DumpRecordLayoutTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/DumpSymbolTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ExpandDeducedTypeTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ExpandMacroTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ExtractFunctionTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ExtractVariableTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/MemberwiseConstructorTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ObjCLocalizeStringLiteralTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ObjCMemberwiseInitializerTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/OverridePureVirtualsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/PopulateSwitchTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/RawStringLiteralTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/RemoveUsingNamespaceTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ScopifyEnumTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/ShowSelectionTreeTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/SpecialMembersTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/SwapBinaryOperandsTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/SwapIfBranchesTests.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/TweakTesting.cpp.o tools/clang/tools/extra/clangd/unittests/CMakeFiles/ClangdTests.dir/tweaks/TweakTests.cpp.o -o tools/clang/tools/extra/clangd/unittests/ClangdTests  lib/libLLVMSupport.a  lib/libLLVMAArch64Info.a  lib/libLLVMAMDGPUInfo.a  lib/libLLVMARMInfo.a  lib/libLLVMAVRInfo.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonInfo.a  lib/libLLVMLanaiInfo.a  lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMSparcInfo.a  lib/libLLVMSPIRVInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMVEInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMX86Info.a  lib/libLLVMXCoreInfo.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  lib/libllvm_gtest_main.a  lib/libllvm_gtest.a  lib/libclangAST.a  lib/libclangASTMatchers.a  lib/libclangBasic.a  lib/libclangFormat.a  lib/libclangFrontend.a  lib/libclangIndex.a  lib/libclangLex.a  lib/libclangSema.a  lib/libclangSerialization.a  lib/libclangTooling.a  lib/libclangToolingCore.a  lib/libclangToolingInclusions.a  lib/libclangToolingInclusionsStdlib.a  lib/libclangToolingRefactoring.a  lib/libclangToolingSyntax.a  lib/libLLVMTestingAnnotations.a  lib/libLLVMTestingSupport.a  lib/libclangDaemon.a  lib/libclangIncludeCleaner.a  lib/libclangTesting.a  lib/libclangTidy.a  lib/libclangdSupport.a  lib/libLLVMAArch64Info.a  lib/libLLVMAMDGPUInfo.a  lib/libLLVMARMInfo.a  lib/libLLVMAVRInfo.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonInfo.a  lib/libLLVMLanaiInfo.a  lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMSparcInfo.a  lib/libLLVMSPIRVInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMVEInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMX86Info.a  lib/libLLVMXCoreInfo.a  lib/libclangToolingSyntax.a  lib/libclangTooling.a  lib/libclangIncludeCleaner.a  lib/libclangToolingInclusionsStdlib.a  lib/libclangAnalysisFlowSensitiveModels.a  lib/libclangAnalysisFlowSensitive.a  lib/libclangStaticAnalyzerFrontend.a  lib/libclangStaticAnalyzerCheckers.a  lib/libclangStaticAnalyzerCore.a  lib/libclangCrossTU.a  lib/libclangIndex.a  lib/libclangDynamicASTMatchers.a  lib/libclangDependencyScanning.a  lib/libclangDriver.a  lib/libLLVMWindowsDriver.a  lib/libllvm_gtest.a  -lpthread  lib/libclangFrontend.a  lib/libclangOptions.a  lib/libclangParse.a  lib/libLLVMOption.a  lib/libLLVMPlugins.a  lib/libclangSerialization.a  lib/libclangSema.a  lib/libclangAPINotes.a  lib/libclangEdit.a  lib/libclangAnalysisLifetimeSafety.a  lib/libclangAnalysis.a  lib/libclangASTMatchers.a  lib/libclangAST.a  lib/libclangFormat.a  lib/libclangToolingInclusions.a  lib/libclangToolingCore.a  lib/libclangRewrite.a  lib/libclangLex.a  lib/libclangBasic.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMTransformUtils.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMAnalysis.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMFrontendDirective.a  lib/libclangSupport.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMMC.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  /usr/lib/x86_64-linux-gnu/libz.so  lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyCheck
>>> referenced by MultipleStatementMacroCheck.cpp
>>>               MultipleStatementMacroCheck.cpp.o:(typeinfo for clang::tidy::bugprone::MultipleStatementMacroCheck) in archive lib/libclangTidy.a
>>> referenced by ReferenceToConstructedTemporaryCheck.cpp
>>>               ReferenceToConstructedTemporaryCheck.cpp.o:(typeinfo for clang::tidy::readability::ReferenceToConstructedTemporaryCheck) in archive lib/libclangTidy.a
>>> referenced by RedundantTypenameCheck.cpp
>>>               RedundantTypenameCheck.cpp.o:(typeinfo for clang::tidy::readability::RedundantTypenameCheck) in archive lib/libclangTidy.a
>>> referenced 358 more times
>>> did you mean: vtable for clang::tidy::ClangTidyCheck
>>> defined in: lib/libclangTidy.a(ClangTidyCheck.cpp.o)

ld.lld: error: undefined symbol: typeinfo for clang::tidy::ClangTidyModule
>>> referenced by CppCoreGuidelinesTidyModule.cpp
>>>               CppCoreGuidelinesTidyModule.cpp.o:(typeinfo for clang::tidy::cppcoreguidelines::(anonymous namespace)::CppCoreGuidelinesModule) in archive lib/libclangTidy.a
>>> referenced by ZirconTidyModule.cpp
>>>               ZirconTidyModule.cpp.o:(typeinfo for clang::tidy::zircon::(anonymous namespace)::ZirconModule) in archive lib/libclangTidy.a
>>> referenced by ReadabilityTidyModule.cpp
>>>               ReadabilityTidyModule.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::ReadabilityModule) in archive lib/libclangTidy.a
>>> referenced 21 more times

ld.lld: error: undefined symbol: clang::transformer::detail::buildMatchers(clang::transformer::RewriteRuleBase const&)
>>> referenced by TransformerClangTidyCheck.cpp:98 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp:98)
>>>               TransformerClangTidyCheck.cpp.o:(clang::tidy::utils::TransformerClangTidyCheck::registerMatchers(clang::ast_matchers::MatchFinder*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::findSelectedCase(clang::ast_matchers::MatchFinder::MatchResult const&, clang::transformer::RewriteRuleBase const&)
>>> referenced by TransformerClangTidyCheck.cpp:107 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp:107)
>>>               TransformerClangTidyCheck.cpp.o:(clang::tidy::utils::TransformerClangTidyCheck::check(clang::ast_matchers::MatchFinder::MatchResult const&)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for clang::PPCallbacks
>>> referenced by HeaderGuard.cpp
>>>               HeaderGuard.cpp.o:(typeinfo for clang::tidy::utils::(anonymous namespace)::HeaderGuardPPCallbacks) in archive lib/libclangTidy.a
>>> referenced by IncludeInserter.cpp
>>>               IncludeInserter.cpp.o:(typeinfo for clang::tidy::utils::IncludeInserterCallback) in archive lib/libclangTidy.a
>>> referenced by UseConcisePreprocessorDirectivesCheck.cpp
>>>               UseConcisePreprocessorDirectivesCheck.cpp.o:(typeinfo for clang::tidy::readability::(anonymous namespace)::IfPreprocessorCallbacks) in archive lib/libclangTidy.a
>>> referenced 22 more times

ld.lld: error: undefined symbol: typeinfo for clang::analyze_format_string::FormatStringHandler
>>> referenced by FormatStringConverter.cpp
>>>               FormatStringConverter.cpp.o:(typeinfo for clang::tidy::utils::FormatStringConverter) in archive lib/libclangTidy.a
>>> referenced by UncheckedStringToNumberConversionCheck.cpp
>>>               UncheckedStringToNumberConversionCheck.cpp.o:(typeinfo for clang::tidy::bugprone::classifyFormatString(llvm::StringRef, clang::LangOptions const&, clang::TargetInfo const&)::Handler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for llvm::support::detail::format_adapter
>>> referenced by UseStdNumbersCheck.cpp
>>>               UseStdNumbersCheck.cpp.o:(typeinfo for llvm::support::detail::provider_format_adapter<double const&>) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: typeinfo for clang::CommentHandler
>>> referenced by MisleadingBidirectionalCheck.cpp
>>>               MisleadingBidirectionalCheck.cpp.o:(typeinfo for clang::tidy::misc::MisleadingBidirectionalCheck::MisleadingBidirectionalHandler) in archive lib/libclangTidy.a
>>> referenced by TodoCommentCheck.cpp
>>>               TodoCommentCheck.cpp.o:(typeinfo for clang::tidy::google::readability::TodoCommentCheck::TodoCommentHandler) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:134)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a
>>> referenced 31 more times

ld.lld: error: undefined symbol: clang::transformer::noopEdit(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by UseNewMLIROpBuilderCheck.cpp:135 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp:135)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(clang::tidy::llvm_check::UseNewMlirOpBuilderCheck::UseNewMlirOpBuilderCheck(llvm::StringRef, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](llvm::StringRef)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 18 more times

ld.lld: error: undefined symbol: clang::transformer::catVector(std::vector<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>, std::allocator<std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               UseNewMLIROpBuilderCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [76]>(char const (&) [76])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [92]>(char const (&) [92])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringviewNullptrCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [83]>(char const (&) [83])) in archive lib/libclangTidy.a
>>> referenced 14 more times

ld.lld: error: undefined symbol: clang::query::QueryParser::parse(llvm::StringRef, clang::query::QuerySession const&)
>>> referenced by QueryCheck.cpp:36 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/custom/QueryCheck.cpp:36)
>>>               QueryCheck.cpp.o:(clang::tidy::custom::QueryCheck::QueryCheck(llvm::StringRef, clang::tidy::ClangTidyOptions::CustomCheckValue const&, clang::tidy::ClangTidyContext*)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::remove(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by StringviewNullptrCheck.cpp:85 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:85)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:94 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:94)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:124 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:124)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 7 more times

ld.lld: error: undefined symbol: clang::transformer::changeTo(std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:100 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:100)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:106 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:106)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:115 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:115)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced 13 more times

ld.lld: error: undefined symbol: clang::transformer::name(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
>>> referenced by StringviewNullptrCheck.cpp:134 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:134)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::access(llvm::StringRef, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
>>> referenced by StringviewNullptrCheck.cpp:239 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:239)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a
>>> referenced by StringviewNullptrCheck.cpp:250 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp:250)
>>>               StringviewNullptrCheck.cpp.o:(clang::tidy::bugprone::stringviewNullptrCheckImpl[abi:cxx11]()) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::detail::makeEditGenerator(clang::transformer::ASTEdit)
>>> referenced by RewriteRule.h:345 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/RewriteRule.h:345)
>>>               StringviewNullptrCheck.cpp.o:(clang::transformer::RewriteRuleWith<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>> clang::transformer::makeRule<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, clang::transformer::ASTEdit>(clang::ast_matchers::internal::DynTypedMatcher, clang::transformer::ASTEdit&&, std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a

ld.lld: error: undefined symbol: clang::transformer::RootID
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:435 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:435)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::changeTo(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)) in archive lib/libclangTidy.a
>>> referenced by char_traits.h:399 (/usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399)
>>>               StringFindStrContainsCheck.cpp.o:(clang::transformer::addInclude(llvm::StringRef, clang::transformer::IncludeFormat)) in archive lib/libclangTidy.a
>>> referenced 1 more times

ld.lld: error: undefined symbol: clang::transformer::detail::makeStencil[abi:cxx11](std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>)
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [20], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced by Stencil.h:65 (/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include/clang/Tooling/Transformer/Stencil.h:65)
>>>               StringFindStrContainsCheck.cpp.o:(std::shared_ptr<clang::transformer::MatchComputation<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> clang::transformer::cat<char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>, char const (&) [2]>(char const (&) [19], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [3], std::function<llvm::Expected<clang::CharSourceRange> (clang::ast_matchers::MatchFinder::MatchResult const&)>&&, char const (&) [2])) in archive lib/libclangTidy.a
>>> referenced 2 more times

ld.lld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```
</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/173518


More information about the cfe-commits mailing list