[clang-tools-extra] [clang-tidy] Add IgnoreAboveThreshold option to readability-function-cognitive-complexity (PR #178965)

via cfe-commits cfe-commits at lists.llvm.org
Sun Feb 1 08:16:52 PST 2026


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/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/FunctionCognitiveComplexityCheck.cpp.o</summary>

```
FAILED: tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/FunctionCognitiveComplexityCheck.cpp.o
sccache /opt/llvm/bin/clang++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/clang/tools/extra/clang-tidy/readability -I/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/clang/tools/extra/clang-tidy -I/home/gha/actions-runner/_work/llvm-project/llvm-project/clang/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/clang/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include -gmlt -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG -std=c++17 -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/FunctionCognitiveComplexityCheck.cpp.o -MF tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/FunctionCognitiveComplexityCheck.cpp.o.d -o tools/clang/tools/extra/clang-tidy/readability/CMakeFiles/obj.clangTidyReadabilityModule.dir/FunctionCognitiveComplexityCheck.cpp.o -c /home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp:477:36: error: no matching member function for call to 'get'
477 |       IgnoreAboveThreshold(Options.get("IgnoreAboveThreshold", std::nullopt)),
|                            ~~~~~~~~^~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/../ClangTidyCheck.h:165:15: note: candidate function not viable: no known conversion from 'const nullopt_t' to 'StringRef' for 2nd argument
165 |     StringRef get(StringRef LocalName, StringRef Default) const;
|               ^                        ~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/../ClangTidyCheck.h:216:5: note: candidate template ignored: could not match 'std::optional<T>' against 'nullopt_t'
216 |     get(StringRef LocalName, std::optional<T> Default) const {
|     ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/../ClangTidyCheck.h:239:48: note: candidate template ignored: requirement 'std::is_integral_v<std::nullopt_t>' was not satisfied [with T = nullopt_t]
239 |     std::enable_if_t<std::is_integral_v<T>, T> get(StringRef LocalName,
|                                                ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/../ClangTidyCheck.h:356:44: note: candidate template ignored: requirement 'std::is_enum_v<std::nullopt_t>' was not satisfied [with T = nullopt_t]
356 |     std::enable_if_t<std::is_enum_v<T>, T> get(StringRef LocalName,
|                                            ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/../ClangTidyCheck.h:158:30: note: candidate function not viable: requires single argument 'LocalName', but 2 arguments were provided
158 |     std::optional<StringRef> get(StringRef LocalName) const;
|                              ^   ~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/../ClangTidyCheck.h:194:5: note: candidate function template not viable: requires single argument 'LocalName', but 2 arguments were provided
194 |     get(StringRef LocalName) const {
|     ^   ~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clang-tidy/readability/../ClangTidyCheck.h:336:5: note: candidate function template not viable: requires single argument 'LocalName', but 2 arguments were provided
336 |     get(StringRef LocalName) const {
|     ^   ~~~~~~~~~~~~~~~~~~~
1 error generated.
```
</details>

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

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


More information about the cfe-commits mailing list