# Disable the following checks with reasons in parenthesis: # # -bugprone-macro-parentheses (inconsistent style) # -google-readability-todo (potentially too restrictive) # -misc-non-private-member-variables-in-classes (potentially too restrictive) # -misc-unused-parameters (can be cleaned up in batch and enabled) # -modernize-avoid-c-arrays (too restrictive) # -modernize-concat-nested-namespaces (inconsistent style) # -modernize-pass-by-value (too restrictive) # -modernize-return-braced-init-list (inconsistent style) # -modernize-use-emplace (more subtle behavior) # -modernize-use-nodiscard (too much noise) # -modernize-use-trailing-return-type (inconsistent style) # -modernize-use-override (TODO(mwtian): re-enable after fixing existing derived classes) # -modernize-avoid-bind (incorrect conversion) # -modernize-loop-convert (more subtle behavior) # -modernize-replace-disallow-copy-and-assign-macro (inconsistent style) # -modernize-make-unique (doesn't work with private constructor) # -modernize-make-shared (doesn't work with private constructor) # Other readability-* rules (potentially too noisy, inconsistent style) # Other rules not mentioned here or below (not yet evaluated) # # TODO: enable google-* and readability-* families of checks. Checks: > abseil-*, bugprone-*, -bugprone-macro-parentheses, google-*, -google-readability-todo, misc-*, -misc-non-private-member-variables-in-classes, -misc-unused-parameters, modernize-*, -modernize-avoid-c-arrays, -modernize-concat-nested-namespaces, -modernize-pass-by-value, -modernize-return-braced-init-list, -modernize-use-emplace, -modernize-use-nodiscard, -modernize-use-trailing-return-type, -modernize-avoid-bind, -modernize-loop-convert, -modernize-replace-disallow-copy-and-assign-macro, -modernize-make-unique, -modernize-make-shared, -modernize-use-override, performance-*, readability-avoid-const-params-in-decls, readability-braces-around-statements, readability-const-return-type, readability-container-size-empty, readability-delete-null-pointer, readability-else-after-return, readability-implicit-bool-conversion, readability-make-member-function-const, readability-misleading-indentation, readability-misplaced-array-index, readability-named-parameter, readability-non-const-parameter, readability-redundant-*, readability-static-definition-in-anonymous-namespace, readability-string-compare, readability-suspicious-call-argument, CheckOptions: # Reduce noisiness of the bugprone-narrowing-conversions check. - key: bugprone-narrowing-conversions.IgnoreConversionFromTypes value: 'size_t;ptrdiff_t;size_type;difference_type' - key: bugprone-narrowing-conversions.WarnOnEquivalentBitWidth value: 'false' # Turn all the warnings from the checks above into errors. WarningsAsErrors: "*"