srctree

blame
.clang-tidy
--- # -bugprone-easily-swappable-parameters: Noisy, and there are other checks that # catch things like suspicious call arguments. # # -bugprone-exception-escape: We don't use exceptions and will be building with # -fno-exceptions soon. # # -bugprone-narrowing-conversions: Very noisy for not much gain. # # -cppcoreguidelines-[...]: TODO(robinlidnen): Investigate. # # -google-build-using-namespace: We use `using namespace` in tests and for std::literals. # # -misc-const-correctness: Consts some things that can't be const, and very very noisy. # # -modernize-make-unique, -modernize-use-emplace: Clang doesn't implement p0960 # yet, and we're not adding c-tors to all our structs. # # -modernize-use-nodiscard: Very noisy, and probably more meaningful if we only # add it where it matters. # # -modernize-use-trailing-return-type: Stylistic change, and something we # haven't been doing so far. # # -readability-container-data-pointer: We actually want a pointer to the first element. # # -readability-convert-member-functions-to-static: Makes some APIs confusing, especially when # used in combination with readability-static-accessed-through-instance. # # -readability-function-cognitive-complexity: TODO(robinlinden): Investigate. Maybe case-by-case. # # -readability-function-size: TODO(robinlinden): Investigate. Maybe case-by-case. # # -readability-identifier-length: Requiring at least 3 characters for identifiers is silly. # # -readability-magic-numbers: Things implemented from specs and unit tests # contain a lot of magic numbers. # # -readability-named-parameter: Leaving out argument names is fine where it doesn't add anything. # # TODO(robinlinden): Investigate. # -readability-redundant-member-init # -readability-uppercase-literal-suffix # -bugprone-suspicious-stringview-data-usage # -modernize-use-designated-initializers # -modernize-use-ranges # -readability-math-missing-parentheses Checks: > bugprone-*, cert-*, concurrency-*, cppcoreguidelines-*, google-*, misc-*, modernize-*, performance-*, readability-*, readability-avoid-unconditional-preprocessor-if, -bugprone-easily-swappable-parameters, -bugprone-exception-escape, -bugprone-narrowing-conversions, -cppcoreguidelines-avoid-const-or-ref-data-members, -cppcoreguidelines-avoid-do-while, -cppcoreguidelines-avoid-magic-numbers, -cppcoreguidelines-narrowing-conversions, -cppcoreguidelines-pro-bounds-array-to-pointer-decay, -cppcoreguidelines-pro-bounds-constant-array-index, -cppcoreguidelines-pro-bounds-pointer-arithmetic, -cppcoreguidelines-pro-type-reinterpret-cast, -cppcoreguidelines-pro-type-static-cast-downcast, -cppcoreguidelines-pro-type-union-access, -cppcoreguidelines-rvalue-reference-param-not-moved, -cppcoreguidelines-special-member-functions, -google-build-using-namespace, -misc-const-correctness, -modernize-make-unique, -modernize-use-emplace, -modernize-use-nodiscard, -modernize-use-trailing-return-type, -readability-container-data-pointer, -readability-convert-member-functions-to-static, -readability-function-cognitive-complexity, -readability-function-size, -readability-identifier-length, -readability-magic-numbers, -readability-named-parameter, -readability-redundant-member-init, -readability-uppercase-literal-suffix, -bugprone-suspicious-stringview-data-usage, -modernize-use-designated-initializers, -modernize-use-ranges, -readability-math-missing-parentheses WarningsAsErrors: "*" HeaderFilterRegex: "\\./(archive|azm|browser|css|css2|dom|engine|etest|geom|gfx|html|html2|idna|img|js|layout|net|os|protocol|render|style|tui|type|unicode|uri|url|util|wasm)/" CheckOptions: # performance-move-const-arg - key: performance-move-const-arg.CheckTriviallyCopyableMove value: false # readability-identifier-naming # Classes, structs, ... - key: readability-identifier-naming.NamespaceCase value: lower_case - key: readability-identifier-naming.ClassCase value: CamelCase - key: readability-identifier-naming.StructCase value: CamelCase - key: readability-identifier-naming.EnumCase value: CamelCase # Variables, member variables, ... - key: readability-identifier-naming.ParameterCase value: lower_case - key: readability-identifier-naming.VariableCase value: lower_case - key: readability-identifier-naming.MemberCase value: lower_case - key: readability-identifier-naming.ProtectedMemberCase value: lower_case - key: readability-identifier-naming.ProtectedMemberSuffix value: _ - key: readability-identifier-naming.PrivateMemberCase value: lower_case - key: readability-identifier-naming.PrivateMemberSuffix value: _ # Functions, methods, ... - key: readability-identifier-naming.FunctionCase value: lower_case - key: readability-identifier-naming.MethodCase value: lower_case - key: readability-identifier-naming.FunctionIgnoredRegexp value: LLVMFuzzerTestOneInput # Constants - key: readability-identifier-naming.ConstantCase value: lower_case - key: readability-identifier-naming.ConstexprVariablePrefix value: k - key: readability-identifier-naming.ConstexprVariableCase value: CamelCase - key: readability-identifier-naming.EnumConstantCase value: CamelCase # misc-non-private-member-variables-in-classes - key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic value: true