From a6b4013ee3380458f8e06d702ceb277b230a37ff Mon Sep 17 00:00:00 2001 From: Sean McManus Date: Thu, 27 Aug 2026 12:00:29 -0700 Subject: [PATCH] Update clang-tidy checks to 23.1.0 --- Extension/package.json | 138 +++++++++---------- Extension/src/LanguageServer/codeAnalysis.ts | 2 +- 2 files changed, 67 insertions(+), 73 deletions(-) diff --git a/Extension/package.json b/Extension/package.json index 805ab83ff..3f7a2584c 100644 --- a/Extension/package.json +++ b/Extension/package.json @@ -2357,7 +2357,9 @@ "bugprone-*", "bugprone-argument-comment", "bugprone-assert-side-effect", + "bugprone-assignment-*", "bugprone-assignment-in-if-condition", + "bugprone-assignment-in-selection-statement", "bugprone-bad-signal-to-kill-thread", "bugprone-bitwise-pointer-cast", "bugprone-bool-pointer-implicit-conversion", @@ -2402,6 +2404,7 @@ "bugprone-misplaced-operator-in-strlen-in-alloc", "bugprone-misplaced-pointer-arithmetic-in-alloc", "bugprone-misplaced-widening-cast", + "bugprone-missing-end-comparison", "bugprone-move-forwarding-reference", "bugprone-multi-level-implicit-pointer-conversion", "bugprone-multiple-*", @@ -2423,12 +2426,16 @@ "bugprone-return-const-ref-from-parameter", "bugprone-shared-ptr-array-mismatch", "bugprone-signal-handler", + "bugprone-signed-*", + "bugprone-signed-bitwise", "bugprone-signed-char-misuse", "bugprone-sizeof-*", "bugprone-sizeof-container", "bugprone-sizeof-expression", "bugprone-spuriously-wake-up-functions", "bugprone-standalone-empty", + "bugprone-std-*", + "bugprone-std-exception-baseclass", "bugprone-std-namespace-modification", "bugprone-string-*", "bugprone-string-constructor", @@ -2458,11 +2465,14 @@ "bugprone-undefined-memory-manipulation", "bugprone-undelegated-constructor", "bugprone-unhandled-*", + "bugprone-unhandled-code-paths", "bugprone-unhandled-exception-at-new", "bugprone-unhandled-self-assignment", "bugprone-unintended-char-ostream-output", "bugprone-unique-ptr-array-mismatch", + "bugprone-unsafe-*", "bugprone-unsafe-functions", + "bugprone-unsafe-to-allow-exceptions", "bugprone-unused-*", "bugprone-unused-local-non-trivial-variable", "bugprone-unused-raii", @@ -2492,7 +2502,9 @@ "cert-err58-cpp", "cert-err60-cpp", "cert-err61-cpp", + "cert-exp*", "cert-exp42-c", + "cert-exp45-c", "cert-fio38-c", "cert-flp*", "cert-flp30-c", @@ -2654,6 +2666,8 @@ "cppcoreguidelines-avoid-non-const-global-variables", "cppcoreguidelines-avoid-reference-coroutine-parameters", "cppcoreguidelines-c-copy-assignment-signature", + "cppcoreguidelines-explicit-*", + "cppcoreguidelines-explicit-constructor", "cppcoreguidelines-explicit-virtual-functions", "cppcoreguidelines-init-variables", "cppcoreguidelines-interfaces-global-init", @@ -2732,45 +2746,10 @@ "google-runtime-int", "google-runtime-operator", "google-upgrade-googletest-case", - "hicpp-*", - "hicpp-avoid-*", - "hicpp-avoid-c-arrays", - "hicpp-avoid-goto", - "hicpp-braces-around-statements", - "hicpp-deprecated-headers", - "hicpp-exception-baseclass", - "hicpp-explicit-conversions", - "hicpp-function-size", - "hicpp-ignored-remove-result", - "hicpp-invalid-access-moved", - "hicpp-member-init", - "hicpp-move-const-arg", - "hicpp-multiway-paths-covered", - "hicpp-named-parameter", - "hicpp-new-delete-operators", - "hicpp-no-*", - "hicpp-no-array-decay", - "hicpp-no-assembler", - "hicpp-no-malloc", - "hicpp-noexcept-move", - "hicpp-signed-bitwise", - "hicpp-special-member-functions", - "hicpp-static-assert", - "hicpp-undelegated-constructor", - "hicpp-uppercase-literal-suffix", - "hicpp-use-*", - "hicpp-use-auto", - "hicpp-use-emplace", - "hicpp-use-equals-*", - "hicpp-use-equals-default", - "hicpp-use-equals-delete", - "hicpp-use-noexcept", - "hicpp-use-nullptr", - "hicpp-use-override", - "hicpp-vararg", "linuxkernel-must-check-errs", "llvm-*", "llvm-else-after-return", + "llvm-formatv-string", "llvm-header-guard", "llvm-include-order", "llvm-namespace-comment", @@ -2779,10 +2758,13 @@ "llvm-prefer-register-over-unsigned", "llvm-prefer-static-over-anonymous-namespace", "llvm-qualified-auto", + "llvm-redundant-casting", "llvm-twine-local", + "llvm-type-switch-case-types", "llvm-use-*", "llvm-use-new-mlir-op-builder", "llvm-use-ranges", + "llvm-use-vector-utils", "llvmlibc-*", "llvmlibc-callee-namespace", "llvmlibc-implementation-in-namespace", @@ -2794,6 +2776,7 @@ "misc-const-correctness", "misc-coroutine-hostile-raii", "misc-definitions-in-headers", + "misc-explicit-constructor", "misc-header-include-cycle", "misc-include-cleaner", "misc-misleading-*", @@ -2809,7 +2792,9 @@ "misc-override-with-different-visibility", "misc-predictable-rand", "misc-redundant-expression", + "misc-static-*", "misc-static-assert", + "misc-static-initialization-cycle", "misc-throw-by-value-catch-by-reference", "misc-unconventional-assign-operator", "misc-uniqueptr-reset-release", @@ -2869,9 +2854,12 @@ "modernize-use-scoped-lock", "modernize-use-starts-ends-with", "modernize-use-std-*", + "modernize-use-std-bit", "modernize-use-std-format", "modernize-use-std-numbers", "modernize-use-std-print", + "modernize-use-string-view", + "modernize-use-structured-binding", "modernize-use-trailing-return-type", "modernize-use-transparent-functors", "modernize-use-uncaught-exceptions", @@ -2912,13 +2900,17 @@ "performance-noexcept-destructor", "performance-noexcept-move-constructor", "performance-noexcept-swap", + "performance-prefer-single-char-overloads", + "performance-string-view-conversions", "performance-trivially-destructible", "performance-type-promotion-in-math-fn", "performance-unnecessary-*", "performance-unnecessary-copy-initialization", "performance-unnecessary-value-param", + "performance-use-std-move", "portability-*", "portability-avoid-pragma-once", + "portability-no-assembler", "portability-restrict-system-includes", "portability-simd-intrinsics", "portability-std-allocator-const", @@ -2968,9 +2960,12 @@ "readability-redundant-declaration", "readability-redundant-function-ptr-dereference", "readability-redundant-inline-specifier", + "readability-redundant-lambda-parameter-list", "readability-redundant-member-init", + "readability-redundant-nested-if", "readability-redundant-parentheses", "readability-redundant-preprocessor", + "readability-redundant-qualified-alias", "readability-redundant-smartptr-get", "readability-redundant-string-*", "readability-redundant-string-cstr", @@ -2985,6 +2980,8 @@ "readability-static-definition-in-anonymous-namespace", "readability-string-compare", "readability-suspicious-call-argument", + "readability-trailing-comma", + "readability-trivial-switch", "readability-uniqueptr-delete-release", "readability-uppercase-literal-suffix", "readability-use-*", @@ -3061,7 +3058,9 @@ "bugprone-*", "bugprone-argument-comment", "bugprone-assert-side-effect", + "bugprone-assignment-*", "bugprone-assignment-in-if-condition", + "bugprone-assignment-in-selection-statement", "bugprone-bad-signal-to-kill-thread", "bugprone-bitwise-pointer-cast", "bugprone-bool-pointer-implicit-conversion", @@ -3106,6 +3105,7 @@ "bugprone-misplaced-operator-in-strlen-in-alloc", "bugprone-misplaced-pointer-arithmetic-in-alloc", "bugprone-misplaced-widening-cast", + "bugprone-missing-end-comparison", "bugprone-move-forwarding-reference", "bugprone-multi-level-implicit-pointer-conversion", "bugprone-multiple-*", @@ -3127,12 +3127,16 @@ "bugprone-return-const-ref-from-parameter", "bugprone-shared-ptr-array-mismatch", "bugprone-signal-handler", + "bugprone-signed-*", + "bugprone-signed-bitwise", "bugprone-signed-char-misuse", "bugprone-sizeof-*", "bugprone-sizeof-container", "bugprone-sizeof-expression", "bugprone-spuriously-wake-up-functions", "bugprone-standalone-empty", + "bugprone-std-*", + "bugprone-std-exception-baseclass", "bugprone-std-namespace-modification", "bugprone-string-*", "bugprone-string-constructor", @@ -3162,11 +3166,14 @@ "bugprone-undefined-memory-manipulation", "bugprone-undelegated-constructor", "bugprone-unhandled-*", + "bugprone-unhandled-code-paths", "bugprone-unhandled-exception-at-new", "bugprone-unhandled-self-assignment", "bugprone-unintended-char-ostream-output", "bugprone-unique-ptr-array-mismatch", + "bugprone-unsafe-*", "bugprone-unsafe-functions", + "bugprone-unsafe-to-allow-exceptions", "bugprone-unused-*", "bugprone-unused-local-non-trivial-variable", "bugprone-unused-raii", @@ -3196,7 +3203,9 @@ "cert-err58-cpp", "cert-err60-cpp", "cert-err61-cpp", + "cert-exp*", "cert-exp42-c", + "cert-exp45-c", "cert-fio38-c", "cert-flp*", "cert-flp30-c", @@ -3358,6 +3367,8 @@ "cppcoreguidelines-avoid-non-const-global-variables", "cppcoreguidelines-avoid-reference-coroutine-parameters", "cppcoreguidelines-c-copy-assignment-signature", + "cppcoreguidelines-explicit-*", + "cppcoreguidelines-explicit-constructor", "cppcoreguidelines-explicit-virtual-functions", "cppcoreguidelines-init-variables", "cppcoreguidelines-interfaces-global-init", @@ -3436,45 +3447,10 @@ "google-runtime-int", "google-runtime-operator", "google-upgrade-googletest-case", - "hicpp-*", - "hicpp-avoid-*", - "hicpp-avoid-c-arrays", - "hicpp-avoid-goto", - "hicpp-braces-around-statements", - "hicpp-deprecated-headers", - "hicpp-exception-baseclass", - "hicpp-explicit-conversions", - "hicpp-function-size", - "hicpp-ignored-remove-result", - "hicpp-invalid-access-moved", - "hicpp-member-init", - "hicpp-move-const-arg", - "hicpp-multiway-paths-covered", - "hicpp-named-parameter", - "hicpp-new-delete-operators", - "hicpp-no-*", - "hicpp-no-array-decay", - "hicpp-no-assembler", - "hicpp-no-malloc", - "hicpp-noexcept-move", - "hicpp-signed-bitwise", - "hicpp-special-member-functions", - "hicpp-static-assert", - "hicpp-undelegated-constructor", - "hicpp-uppercase-literal-suffix", - "hicpp-use-*", - "hicpp-use-auto", - "hicpp-use-emplace", - "hicpp-use-equals-*", - "hicpp-use-equals-default", - "hicpp-use-equals-delete", - "hicpp-use-noexcept", - "hicpp-use-nullptr", - "hicpp-use-override", - "hicpp-vararg", "linuxkernel-must-check-errs", "llvm-*", "llvm-else-after-return", + "llvm-formatv-string", "llvm-header-guard", "llvm-include-order", "llvm-namespace-comment", @@ -3483,10 +3459,13 @@ "llvm-prefer-register-over-unsigned", "llvm-prefer-static-over-anonymous-namespace", "llvm-qualified-auto", + "llvm-redundant-casting", "llvm-twine-local", + "llvm-type-switch-case-types", "llvm-use-*", "llvm-use-new-mlir-op-builder", "llvm-use-ranges", + "llvm-use-vector-utils", "llvmlibc-*", "llvmlibc-callee-namespace", "llvmlibc-implementation-in-namespace", @@ -3498,6 +3477,7 @@ "misc-const-correctness", "misc-coroutine-hostile-raii", "misc-definitions-in-headers", + "misc-explicit-constructor", "misc-header-include-cycle", "misc-include-cleaner", "misc-misleading-*", @@ -3513,7 +3493,9 @@ "misc-override-with-different-visibility", "misc-predictable-rand", "misc-redundant-expression", + "misc-static-*", "misc-static-assert", + "misc-static-initialization-cycle", "misc-throw-by-value-catch-by-reference", "misc-unconventional-assign-operator", "misc-uniqueptr-reset-release", @@ -3573,9 +3555,12 @@ "modernize-use-scoped-lock", "modernize-use-starts-ends-with", "modernize-use-std-*", + "modernize-use-std-bit", "modernize-use-std-format", "modernize-use-std-numbers", "modernize-use-std-print", + "modernize-use-string-view", + "modernize-use-structured-binding", "modernize-use-trailing-return-type", "modernize-use-transparent-functors", "modernize-use-uncaught-exceptions", @@ -3616,13 +3601,17 @@ "performance-noexcept-destructor", "performance-noexcept-move-constructor", "performance-noexcept-swap", + "performance-prefer-single-char-overloads", + "performance-string-view-conversions", "performance-trivially-destructible", "performance-type-promotion-in-math-fn", "performance-unnecessary-*", "performance-unnecessary-copy-initialization", "performance-unnecessary-value-param", + "performance-use-std-move", "portability-*", "portability-avoid-pragma-once", + "portability-no-assembler", "portability-restrict-system-includes", "portability-simd-intrinsics", "portability-std-allocator-const", @@ -3672,9 +3661,12 @@ "readability-redundant-declaration", "readability-redundant-function-ptr-dereference", "readability-redundant-inline-specifier", + "readability-redundant-lambda-parameter-list", "readability-redundant-member-init", + "readability-redundant-nested-if", "readability-redundant-parentheses", "readability-redundant-preprocessor", + "readability-redundant-qualified-alias", "readability-redundant-smartptr-get", "readability-redundant-string-*", "readability-redundant-string-cstr", @@ -3689,6 +3681,8 @@ "readability-static-definition-in-anonymous-namespace", "readability-string-compare", "readability-suspicious-call-argument", + "readability-trailing-comma", + "readability-trivial-switch", "readability-uniqueptr-delete-release", "readability-uppercase-literal-suffix", "readability-use-*", diff --git a/Extension/src/LanguageServer/codeAnalysis.ts b/Extension/src/LanguageServer/codeAnalysis.ts index 8a71a3d00..61cc8cf06 100644 --- a/Extension/src/LanguageServer/codeAnalysis.ts +++ b/Extension/src/LanguageServer/codeAnalysis.ts @@ -380,7 +380,7 @@ export function publishCodeAnalysisDiagnostics(params: PublishCodeAnalysisDiagno docPage = `checks${checksGroup}/${checksPage}.html`; } // TODO: This should be checking the clang-tidy version used to better support usage of older versions. - const primaryDocUri: vscode.Uri = vscode.Uri.parse(`https://releases.llvm.org/22.1.0/tools/clang/tools/extra/docs/clang-tidy/${docPage}`); + const primaryDocUri: vscode.Uri = vscode.Uri.parse(`https://releases.llvm.org/23.1.0/tools/clang/tools/extra/docs/clang-tidy/${docPage}`); diagnostic.code = { value: identifier.code, target: primaryDocUri }; if (new CppSettings().clangTidyCodeActionShowDocumentation) {