--- # TODO(crbug.com/1282228): reenable google-readability-casting once it no # longer has as many false-positives. # TODO(crbug.com/1406869): reenable modernize-use-default-member-init once # C++20 is everywhere; it recommends using default member init for bit fields, # which is C++20-only. Checks: '-*, bugprone-argument-comment, bugprone-assert-side-effect, bugprone-dangling-handle, bugprone-inaccurate-erase, bugprone-string-constructor, bugprone-string-integer-assignment, bugprone-undefined-memory-manipulation, bugprone-unused-raii, bugprone-use-after-move, google-build-explicit-make-pair, google-explicit-constructor, misc-misleading-identifier, misc-homoglyph, modernize-avoid-bind, modernize-concat-nested-namespaces, modernize-loop-convert, modernize-make-shared, modernize-make-unique, modernize-redundant-void-arg, modernize-replace-random-shuffle, modernize-shrink-to-fit, modernize-use-bool-literals, modernize-use-emplace, modernize-use-equals-default, modernize-use-equals-delete, modernize-use-noexcept, modernize-use-nullptr, modernize-use-override, modernize-use-transparent-functors, readability-redundant-member-init' CheckOptions: - key: bugprone-assert-side-effect.AssertMacros value: assert,DCHECK - key: bugprone-dangling-handle.HandleClasses value: ::std::basic_string_view;::std::span;::absl::string_view;::base::BasicStringPiece;::base::span - key: bugprone-string-constructor.StringNames value: ::std::basic_string;::std::basic_string_view;::base::BasicStringPiece;::absl::string_view - key: modernize-use-default-member-init.UseAssignment value: 1 # crbug.com/1342136, crbug.com/1343915: At times, this check makes # suggestions that break builds. Safe mode allows us to sidestep that. - key: modernize-use-transparent-functors.SafeMode value: 1 # This relaxes modernize-use-emplace in some cases; we might want to make it # more aggressive in the future. See discussion on # https://groups.google.com/a/chromium.org/g/cxx/c/noMMTNYiM0w . - key: modernize-use-emplace.IgnoreImplicitConstructors value: 1 # crbug.com/1420969, crbug.com/1421042: Tricium's `show fix` button isn't # working, which leads to devs thinking that clang-tidy is suggesting C++20 # constructs in some cases. Until fixes can be surfaced to show that # `base::Reversed` is encouraged, just turn reverse ranges off entirely. # TODO(crbug.com/1404958): alternatively, remove these once C++20 is # everywhere. - key: modernize-loop-convert.UseCxx20ReverseRanges value: false ...