---
  # NOTE: This is intended to stay mostly in sync with Chromium's global clang-tidy file at:
  # https://source.chromium.org/chromium/chromium/src/+/main:.clang-tidy
  # TODO(b/296805310): readd modernize-use-emplace once its bugs are worked out.
  Checks:          '-*,
                    bugprone-argument-comment,
                    bugprone-assert-side-effect,
                    bugprone-dangling-handle,
                    bugprone-inaccurate-erase,
                    bugprone-string-constructor,
                    bugprone-string-integer-assignment,
                    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-default-member-init,
                    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 .
    # TODO(b/296805310): readd modernize-use-emplace once its bugs are worked out.
    #- key:          modernize-use-emplace.IgnoreImplicitConstructors
    #  value:        1
...
