Update clang-tidy configuration. The previous clang-tidy file had some issues where the check configuration wasn't working correctly. This CL switches to disabling all checks, enabling specific categories and then disabling specific failing tests in those categories. Bug: dawn:1414 Change-Id: Id43cabfc57807991df652284a169e4733c70e632 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/91722 Auto-Submit: Dan Sinclair <dsinclair@chromium.org> Reviewed-by: Ben Clayton <bclayton@google.com> Commit-Queue: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/.clang-tidy b/.clang-tidy index 7245011..532e020 100644 --- a/.clang-tidy +++ b/.clang-tidy
@@ -1,116 +1,107 @@ FormatStyle: file -Checks: "+*,\ - -bugprone-argument-comment,\ +Checks: "-*,\ + abseil-*,\ + -abseil-string-find-startswith,\ + -abseil-string-find-str-contains,\ + bugprone-*,\ -bugprone-branch-clone,\ -bugprone-copy-constructor-init,\ -bugprone-easily-swappable-parameters,\ - -bugprone-exception-escape,\ - -bugprone-fold-init-type,\ -bugprone-forward-declaration-namespace,\ -bugprone-forwarding-reference-overload,\ -bugprone-implicit-widening-of-multiplication-result,\ - -bugprone-incorrect-roundings,\ - -bugprone-infinite-loop,\ - -bugprone-integer-division,\ -bugprone-lambda-function-name,\ -bugprone-macro-parentheses,\ -bugprone-misplaced-widening-cast,\ - -bugprone-move-forwarding-reference,\ - -bugprone-multiple-statement-macro,\ -bugprone-narrowing-conversions,\ - -bugprone-not-null-terminated-result,\ -bugprone-parent-virtual-call,\ - -bugprone-redundant-branch-condition,\ -bugprone-reserved-identifier,\ -bugprone-signed-char-misuse,\ -bugprone-sizeof-expression,\ -bugprone-string-constructor,\ - -bugprone-suspicious-enum-usage,\ -bugprone-suspicious-include,\ - -bugprone-suspicious-memory-comparison,\ - -bugprone-suspicious-string-compare,\ - -bugprone-terminating-continue,\ - -bugprone-throw-keyword-missing,\ -bugprone-too-small-loop-variable,\ - -bugprone-undefined-memory-manipulation,\ -bugprone-unhandled-self-assignment,\ - -bugprone-unused-raii,\ - -bugprone-unused-return-value,\ -bugprone-use-after-move,\ - -bugprone-virtual-near-miss,\ - -cert-dcl03-c,\ + cert-*,\ -cert-dcl16-c,\ -cert-dcl21-cpp,\ + -cert-dcl37-c,\ -cert-dcl50-cpp,\ + -cert-dcl51-cpp,\ -cert-dcl54-cpp,\ -cert-dcl58-cpp,\ - -cert-dcl59-cpp,\ - -cert-err09-cpp,\ -cert-err33-c,\ - -cert-err34-c,\ - -cert-err52-cpp,\ - -cert-err58-cpp,\ -cert-msc30-c,\ -cert-msc32-c,\ - -cert-oop11-cpp,\ + -cert-msc50-cpp,\ + -cert-msc51-cpp,\ -cert-oop54-cpp,\ - -cert-oop57-cpp,\ - -clang-analyzer-core.CallAndMessage,\ - -clang-analyzer-core.DivideZero,\ - -clang-analyzer-core.NonNullParamChecker,\ - -clang-analyzer-core.NullDereference,\ - -clang-analyzer-core.UndefinedBinaryOperatorResult,\ - -clang-analyzer-core.uninitialized.Assign,\ - -clang-analyzer-core.uninitialized.Branch,\ - -clang-analyzer-core.uninitialized.UndefReturn,\ - -clang-analyzer-cplusplus.Move,\ - -clang-analyzer-cplusplus.NewDelete,\ - -clang-analyzer-cplusplus.NewDeleteLeaks,\ - -clang-analyzer-cplusplus.PlacementNew,\ - -clang-analyzer-deadcode.DeadStores,\ - -clang-analyzer-optin.cplusplus.UninitializedObject,\ - -clang-analyzer-optin.cplusplus.VirtualCall,\ - -clang-analyzer-optin.performance.Padding,\ - -clang-analyzer-optin.portability.UnixAPI,\ - -clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,\ - -clang-analyzer-security.insecureAPI.strcpy,\ - -clang-analyzer-unix.Malloc,\ - -clang-analyzer-valist.Unterminated,\ + -cert-str34-c,\ + -cert-str34-c,\ + -cert-str34-c,\ + -cert-str34-c,\ + -clang-analyzer-*,\ + concurrency-*,\ -concurrency-mt-unsafe,\ - -google-build-using-namespace,\ + cppcoreguidelines-*,\ + -concurrency-mt-unsafe,\ + -cppcoreguidelines-avoid-c-arrays,\ + -cppcoreguidelines-avoid-goto,\ + -cppcoreguidelines-avoid-magic-numbers,\ + -cppcoreguidelines-avoid-non-const-global-variables,\ + -cppcoreguidelines-c-copy-assignment-signature,\ + -cppcoreguidelines-explicit-virtual-functions,\ + -cppcoreguidelines-init-variables,\ + -cppcoreguidelines-interfaces-global-init,\ + -cppcoreguidelines-macro-usage,\ + -cppcoreguidelines-narrowing-conversions,\ + -cppcoreguidelines-no-malloc,\ + -cppcoreguidelines-non-private-member-variables-in-classes,\ + -cppcoreguidelines-owning-memory,\ + -cppcoreguidelines-prefer-member-initializer,\ + -cppcoreguidelines-pro-bounds-array-to-pointer-decay,\ + -cppcoreguidelines-pro-bounds-constant-array-index,\ + -cppcoreguidelines-pro-bounds-pointer-arithmetic,\ + -cppcoreguidelines-pro-type-const-cast,\ + -cppcoreguidelines-pro-type-member-init,\ + -cppcoreguidelines-pro-type-reinterpret-cast,\ + -cppcoreguidelines-pro-type-static-cast-downcast,\ + -cppcoreguidelines-pro-type-union-access,\ + -cppcoreguidelines-pro-type-vararg,\ + -cppcoreguidelines-slicing,\ + -cppcoreguidelines-special-member-functions,\ + -cppcoreguidelines-virtual-class-destructor,\ + google-*,\ -google-default-arguments,\ -google-explicit-constructor,\ - -google-global-names-in-headers,\ -google-readability-avoid-underscore-in-googletest-name,\ -google-readability-braces-around-statements,\ -google-readability-casting,\ - -google-readability-function-size,\ -google-readability-namespace-comments,\ -google-readability-todo,\ -google-runtime-int,\ - -google-runtime-operator,\ -google-upgrade-googletest-case,\ - -misc-definitions-in-headers,\ + misc-*,\ -misc-misplaced-const,\ + -misc-new-delete-overloads,\ -misc-non-private-member-variables-in-classes,\ -misc-no-recursion,\ -misc-redundant-expression,\ - -misc-unconventional-assign-operator,\ -misc-uniqueptr-reset-release,\ + -misc-unconventional-assign-operator,\ -misc-unused-parameters,\ -misc-unused-using-decls,\ - -modernize-avoid-bind,\ + modernize-*,\ -modernize-avoid-c-arrays,\ -modernize-concat-nested-namespaces,\ -modernize-deprecated-headers,\ -modernize-loop-convert,\ -modernize-macro-to-enum,\ - -modernize-make-shared,\ -modernize-make-unique,\ -modernize-pass-by-value,\ -modernize-raw-string-literal,\ -modernize-redundant-void-arg,\ - -modernize-replace-disallow-copy-and-assign-macro,\ -modernize-return-braced-init-list,\ -modernize-unary-static-assert,\ -modernize-use-auto,\ @@ -120,12 +111,12 @@ -modernize-use-equals-default,\ -modernize-use-equals-delete,\ -modernize-use-nodiscard,\ - -modernize-use-noexcept,\ -modernize-use-nullptr,\ -modernize-use-override,\ -modernize-use-trailing-return-type,\ -modernize-use-transparent-functors,\ -modernize-use-using,\ + performance-*,\ -performance-faster-string-find,\ -performance-for-range-copy,\ -performance-inefficient-algorithm,\ @@ -138,25 +129,22 @@ -performance-trivially-destructible,\ -performance-unnecessary-copy-initialization,\ -performance-unnecessary-value-param,\ - -portability-std-allocator-const,\ + portability-*,\ + readability-*,\ -readability-avoid-const-params-in-decls,\ -readability-braces-around-statements,\ -readability-const-return-type,\ -readability-container-data-pointer,\ -readability-container-size-empty,\ -readability-convert-member-functions-to-static,\ - -readability-delete-null-pointer,\ - -readability-duplicate-include,\ -readability-else-after-return,\ -readability-function-cognitive-complexity,\ -readability-identifier-length,\ - -readability-identifier-naming,\ -readability-implicit-bool-conversion,\ -readability-inconsistent-declaration-parameter-name,\ -readability-isolate-declaration,\ -readability-magic-numbers,\ -readability-make-member-function-const,\ - -readability-misleading-indentation,\ -readability-named-parameter,\ -readability-non-const-parameter,\ -readability-qualified-auto,\ @@ -164,16 +152,13 @@ -readability-redundant-control-flow,\ -readability-redundant-declaration,\ -readability-redundant-member-init,\ - -readability-redundant-preprocessor,\ -readability-redundant-smartptr-get,\ -readability-redundant-string-cstr,\ -readability-redundant-string-init,\ -readability-simplify-boolean-expr,\ - -readability-simplify-subscript-expr,\ -readability-static-accessed-through-instance,\ -readability-static-definition-in-anonymous-namespace,\ - -readability-string-compare,\ -readability-suspicious-call-argument,\ -readability-uppercase-literal-suffix,\ - -readability-use-anyofallof,\ + -readability-use-anyofallof "