[clang-tools-extra] [clang-tidy][NFC] Devirtualize `GlobList` and don't heap allocate it (PR #164212)

via cfe-commits cfe-commits at lists.llvm.org
Mon Dec 15 22:57:43 PST 2025


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

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

<details>
<summary>[code=1] tools/clang/tools/extra/clang-tidy/CMakeFiles/obj.clangTidy.dir/ClangTidyDiagnosticConsumer.cpp.obj</summary>

```
FAILED: [code=1] tools/clang/tools/extra/clang-tidy/CMakeFiles/obj.clangTidy.dir/ClangTidyDiagnosticConsumer.cpp.obj
sccache C:\clang\clang-msvc\bin\clang-cl.exe  /nologo -TP -DCLANG_BUILD_STATIC -DGTEST_HAS_RTTI=0 -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS=0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Itools\clang\tools\extra\clang-tidy -IC:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy -IC:\_work\llvm-project\llvm-project\clang\include -Itools\clang\include -Iinclude -IC:\_work\llvm-project\llvm-project\llvm\include /DWIN32 /D_WINDOWS   /Zc:inline /Zc:__cplusplus /Oi /Brepro /bigobj /permissive- -Werror=unguarded-availability-new /W4  -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -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 /Gw /O2 /Ob2  -MD  /EHs-c- /GR- -UNDEBUG -std:c++17 /showIncludes /Fotools\clang\tools\extra\clang-tidy\CMakeFiles\obj.clangTidy.dir\ClangTidyDiagnosticConsumer.cpp.obj /Fdtools\clang\tools\extra\clang-tidy\CMakeFiles\obj.clangTidy.dir\ -c -- C:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy\ClangTidyDiagnosticConsumer.cpp
C:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy\ClangTidyDiagnosticConsumer.cpp(161,19): error: call to implicitly-deleted default constructor of 'CachedGlobList'
161 | ClangTidyContext::ClangTidyContext(
|                   ^
C:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy\ClangTidyDiagnosticConsumer.h(246,18): note: default constructed field 'CheckFilter' declared here
246 |   CachedGlobList CheckFilter;
|                  ^
C:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy\GlobList.h(55,24): note: default constructor of 'CachedGlobList' is implicitly deleted because base class 'GlobList' has no default constructor
55 | class CachedGlobList : public GlobList {
|                        ^
C:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy\ClangTidyDiagnosticConsumer.cpp(161,19): error: call to implicitly-deleted default constructor of 'CachedGlobList'
161 | ClangTidyContext::ClangTidyContext(
|                   ^
C:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy\ClangTidyDiagnosticConsumer.h(247,18): note: default constructed field 'WarningAsErrorFilter' declared here
247 |   CachedGlobList WarningAsErrorFilter;
|                  ^
C:\_work\llvm-project\llvm-project\clang-tools-extra\clang-tidy\GlobList.h(55,24): note: default constructor of 'CachedGlobList' is implicitly deleted because base class 'GlobList' has no default constructor
55 | class CachedGlobList : public GlobList {
|                        ^
2 errors generated.
```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/164212


More information about the cfe-commits mailing list