2 # - modernize-deprecated-headers: We don't use std:: versions of the standard
3 # types and functions like size_t or printf, so we should include <stdio.h>
5 # - modernize-return-braced-init-list: this often doesn't improve readability.
6 # - modernize-use-auto: is too aggressive towards using auto.
7 # - modernize-use-default-member-init: with a mix of constructors and default
8 # member initialization this can be confusing if enforced.
9 # - modernize-use-trailing-return-type: does not improve readability when used
11 # - modernize-use-using: typedefs are ok.
13 # - readability-else-after-return: It doesn't always improve readability.
14 # - readability-static-accessed-through-instance
15 # It is often more useful and readable to access a constant of a passed
16 # variable (like d.N) instead of using the type of the variable that could be
18 # - readability-uppercase-literal-suffix: we write 1.0f, not 1.0F.
23 -clang-diagnostic-unused-command-line-argument,
28 -bugprone-narrowing-conversions,
29 -bugprone-branch-clone,
30 -bugprone-easily-swappable-parameters,
31 -bugprone-implicit-widening-of-multiplication-result,
32 -bugprone-infinite-loop,
33 -bugprone-unused-local-non-trivial-variable,
34 -modernize-avoid-c-arrays,
35 -modernize-deprecated-headers,
36 -modernize-return-braced-init-list,
38 -modernize-use-default-member-init,
39 -modernize-use-trailing-return-type,
41 -performance-enum-size,
42 -readability-avoid-nested-conditional-operator,
43 -readability-else-after-return,
44 -readability-function-cognitive-complexity,
45 -readability-identifier-length,
46 -readability-magic-numbers,
47 -readability-redundant-access-specifiers,
48 -readability-simplify-boolean-expr,
49 -readability-static-accessed-through-instance,
50 -readability-suspicious-call-argument,
51 -readability-uppercase-literal-suffix,
52 -readability-use-anyofallof,
56 bugprone-argument-comment,
57 bugprone-macro-parentheses,
58 bugprone-suspicious-string-compare,
59 bugprone-use-after-move,
62 -clang-diagnostic-unused-command-line-argument,
63 google-build-using-namespace,
64 google-explicit-constructor,
65 google-readability-braces-around-statements,
66 google-readability-namespace-comments,
67 modernize-use-override,
68 readability-inconsistent-declaration-parameter-name
70 # We are only interested in the headers from this projects, excluding
71 # third_party/ and build/.
72 HeaderFilterRegex: '^.*/(lib|tools)/.*\.h$'
75 - key: readability-braces-around-statements.ShortStatementLines
77 - key: google-readability-braces-around-statements.ShortStatementLines
79 - key: readability-implicit-bool-conversion.AllowPointerConditions
81 - key: readability-implicit-bool-conversion.AllowIntegerConditions
83 - key: bugprone-signed-char-misuse.CharTypdefsToIgnore