xref: /openbmc/libpldm/.clang-tidy (revision 5ee8a94e4fc95bd6945ac5176072af1eb7dfb1d2)
1*5ee8a94eSAndrew JefferyChecks: '
2*5ee8a94eSAndrew Jeffery-*,
3*5ee8a94eSAndrew Jefferybugprone-argument-comment,
4*5ee8a94eSAndrew Jefferybugprone-assert-side-effect,
5*5ee8a94eSAndrew Jefferybugprone-bad-signal-to-kill-thread,
6*5ee8a94eSAndrew Jefferybugprone-bool-pointer-implicit-conversion,
7*5ee8a94eSAndrew Jefferybugprone-branch-clone,
8*5ee8a94eSAndrew Jefferybugprone-dangling-handle,
9*5ee8a94eSAndrew Jefferybugprone-dynamic-static-initializers,
10*5ee8a94eSAndrew Jefferybugprone-fold-init-type,
11*5ee8a94eSAndrew Jefferybugprone-implicit-widening-of-multiplication-result,
12*5ee8a94eSAndrew Jefferybugprone-inaccurate-erase,
13*5ee8a94eSAndrew Jefferybugprone-incorrect-roundings,
14*5ee8a94eSAndrew Jefferybugprone-infinite-loop,
15*5ee8a94eSAndrew Jefferybugprone-integer-division,
16*5ee8a94eSAndrew Jefferybugprone-macro-parentheses,
17*5ee8a94eSAndrew Jefferybugprone-macro-repeated-side-effects,
18*5ee8a94eSAndrew Jefferybugprone-misplaced-operator-in-strlen-in-alloc,
19*5ee8a94eSAndrew Jefferybugprone-misplaced-pointer-arithmetic-in-alloc,
20*5ee8a94eSAndrew Jefferybugprone-misplaced-widening-cast,
21*5ee8a94eSAndrew Jefferybugprone-multiple-statement-macro,
22*5ee8a94eSAndrew Jefferybugprone-narrowing-conversions,
23*5ee8a94eSAndrew Jefferybugprone-no-escape,
24*5ee8a94eSAndrew Jefferybugprone-not-null-terminated-result,
25*5ee8a94eSAndrew Jefferybugprone-posix-return,
26*5ee8a94eSAndrew Jefferybugprone-redundant-branch-condition,
27*5ee8a94eSAndrew Jefferybugprone-reserved-identifier,
28*5ee8a94eSAndrew Jefferybugprone-signal-handler,
29*5ee8a94eSAndrew Jefferybugprone-signed-char-misuse,
30*5ee8a94eSAndrew Jefferybugprone-sizeof-container,
31*5ee8a94eSAndrew Jefferybugprone-sizeof-expression,
32*5ee8a94eSAndrew Jefferybugprone-spuriously-wake-up-functions,
33*5ee8a94eSAndrew Jefferybugprone-string-constructor,
34*5ee8a94eSAndrew Jefferybugprone-string-integer-assignment,
35*5ee8a94eSAndrew Jefferybugprone-string-literal-with-embedded-nul,
36*5ee8a94eSAndrew Jefferybugprone-suspicious-enum-usage,
37*5ee8a94eSAndrew Jefferybugprone-suspicious-include,
38*5ee8a94eSAndrew Jefferybugprone-suspicious-memset-usage,
39*5ee8a94eSAndrew Jefferybugprone-suspicious-missing-comma,
40*5ee8a94eSAndrew Jefferybugprone-suspicious-semicolon,
41*5ee8a94eSAndrew Jefferybugprone-suspicious-string-compare,
42*5ee8a94eSAndrew Jefferybugprone-swapped-arguments,
43*5ee8a94eSAndrew Jefferybugprone-terminating-continue,
44*5ee8a94eSAndrew Jefferybugprone-too-small-loop-variable,
45*5ee8a94eSAndrew Jefferybugprone-undefined-memory-manipulation,
46*5ee8a94eSAndrew Jefferybugprone-unhandled-self-assignment,
47*5ee8a94eSAndrew Jefferybugprone-unused-return-value,
48*5ee8a94eSAndrew Jefferycert-con36-c,
49*5ee8a94eSAndrew Jefferycert-con54-cpp,
50*5ee8a94eSAndrew Jefferycert-dcl03-c,
51*5ee8a94eSAndrew Jefferycert-dcl16-c,
52*5ee8a94eSAndrew Jefferycert-dcl21-cpp,
53*5ee8a94eSAndrew Jefferycert-dcl37-c,
54*5ee8a94eSAndrew Jefferycert-dcl50-cpp,
55*5ee8a94eSAndrew Jefferycert-dcl51-cpp,
56*5ee8a94eSAndrew Jefferycert-dcl54-cpp,
57*5ee8a94eSAndrew Jefferycert-dcl58-cpp,
58*5ee8a94eSAndrew Jefferycert-dcl59-cpp,
59*5ee8a94eSAndrew Jefferycert-env33-c,
60*5ee8a94eSAndrew Jefferycert-err09-cpp,
61*5ee8a94eSAndrew Jefferycert-err34-c,
62*5ee8a94eSAndrew Jefferycert-err52-cpp,
63*5ee8a94eSAndrew Jefferycert-err60-cpp,
64*5ee8a94eSAndrew Jefferycert-err61-cpp,
65*5ee8a94eSAndrew Jefferycert-fio38-c,
66*5ee8a94eSAndrew Jefferycert-flp30-c,
67*5ee8a94eSAndrew Jefferycert-mem57-cpp,
68*5ee8a94eSAndrew Jefferycert-msc30-c,
69*5ee8a94eSAndrew Jefferycert-msc32-c,
70*5ee8a94eSAndrew Jefferycert-msc50-cpp,
71*5ee8a94eSAndrew Jefferycert-msc51-cpp,
72*5ee8a94eSAndrew Jefferycert-oop11-cpp,
73*5ee8a94eSAndrew Jefferycert-oop54-cpp,
74*5ee8a94eSAndrew Jefferycert-oop57-cpp,
75*5ee8a94eSAndrew Jefferycert-oop58-cpp,
76*5ee8a94eSAndrew Jefferycert-pos44-c,
77*5ee8a94eSAndrew Jefferycert-pos47-c,
78*5ee8a94eSAndrew Jefferycert-sig30-c,
79*5ee8a94eSAndrew Jefferycert-str34-c,
80*5ee8a94eSAndrew Jefferyclang-analyzer-apiModeling.TrustNonnull,
81*5ee8a94eSAndrew Jefferyclang-analyzer-apiModeling.google.GTest,
82*5ee8a94eSAndrew Jefferyclang-analyzer-apiModeling.llvm.CastValue,
83*5ee8a94eSAndrew Jefferyclang-analyzer-apiModeling.llvm.ReturnValue,
84*5ee8a94eSAndrew Jefferyclang-analyzer-core.CallAndMessage,
85*5ee8a94eSAndrew Jefferyclang-analyzer-core.CallAndMessageModeling,
86*5ee8a94eSAndrew Jefferyclang-analyzer-core.DivideZero,
87*5ee8a94eSAndrew Jefferyclang-analyzer-core.DynamicTypePropagation,
88*5ee8a94eSAndrew Jefferyclang-analyzer-core.NonNullParamChecker,
89*5ee8a94eSAndrew Jefferyclang-analyzer-core.NonnilStringConstants,
90*5ee8a94eSAndrew Jefferyclang-analyzer-core.NullDereference,
91*5ee8a94eSAndrew Jefferyclang-analyzer-core.StackAddrEscapeBase,
92*5ee8a94eSAndrew Jefferyclang-analyzer-core.StackAddressEscape,
93*5ee8a94eSAndrew Jefferyclang-analyzer-core.UndefinedBinaryOperatorResult,
94*5ee8a94eSAndrew Jefferyclang-analyzer-core.VLASize,
95*5ee8a94eSAndrew Jefferyclang-analyzer-core.builtin.BuiltinFunctions,
96*5ee8a94eSAndrew Jefferyclang-analyzer-core.builtin.NoReturnFunctions,
97*5ee8a94eSAndrew Jefferyclang-analyzer-core.uninitialized.ArraySubscript,
98*5ee8a94eSAndrew Jefferyclang-analyzer-core.uninitialized.Assign,
99*5ee8a94eSAndrew Jefferyclang-analyzer-core.uninitialized.Branch,
100*5ee8a94eSAndrew Jefferyclang-analyzer-core.uninitialized.CapturedBlockVariable,
101*5ee8a94eSAndrew Jefferyclang-analyzer-core.uninitialized.UndefReturn,
102*5ee8a94eSAndrew Jefferyclang-analyzer-deadcode.DeadStores,
103*5ee8a94eSAndrew Jefferyclang-analyzer-nullability.NullPassedToNonnull,
104*5ee8a94eSAndrew Jefferyclang-analyzer-nullability.NullReturnedFromNonnull,
105*5ee8a94eSAndrew Jefferyclang-analyzer-nullability.NullabilityBase,
106*5ee8a94eSAndrew Jefferyclang-analyzer-nullability.NullableDereferenced,
107*5ee8a94eSAndrew Jefferyclang-analyzer-nullability.NullablePassedToNonnull,
108*5ee8a94eSAndrew Jefferyclang-analyzer-nullability.NullableReturnedFromNonnull,
109*5ee8a94eSAndrew Jefferyclang-analyzer-optin.mpi.MPI-Checker,
110*5ee8a94eSAndrew Jefferyclang-analyzer-optin.performance.GCDAntipattern,
111*5ee8a94eSAndrew Jefferyclang-analyzer-optin.performance.Padding,
112*5ee8a94eSAndrew Jefferyclang-analyzer-optin.portability.UnixAPI,
113*5ee8a94eSAndrew Jefferyclang-analyzer-security.FloatLoopCounter,
114*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.SecuritySyntaxChecker,
115*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.UncheckedReturn,
116*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.bcmp,
117*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.bcopy,
118*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.bzero,
119*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.decodeValueOfObjCType,
120*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.getpw,
121*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.gets,
122*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.mkstemp,
123*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.mktemp,
124*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.rand,
125*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.strcpy,
126*5ee8a94eSAndrew Jefferyclang-analyzer-security.insecureAPI.vfork,
127*5ee8a94eSAndrew Jefferyclang-analyzer-unix.API,
128*5ee8a94eSAndrew Jefferyclang-analyzer-unix.DynamicMemoryModeling,
129*5ee8a94eSAndrew Jefferyclang-analyzer-unix.Malloc,
130*5ee8a94eSAndrew Jefferyclang-analyzer-unix.MallocSizeof,
131*5ee8a94eSAndrew Jefferyclang-analyzer-unix.MismatchedDeallocator,
132*5ee8a94eSAndrew Jefferyclang-analyzer-unix.Vfork,
133*5ee8a94eSAndrew Jefferyclang-analyzer-unix.cstring.BadSizeArg,
134*5ee8a94eSAndrew Jefferyclang-analyzer-unix.cstring.CStringModeling,
135*5ee8a94eSAndrew Jefferyclang-analyzer-unix.cstring.NullArg,
136*5ee8a94eSAndrew Jefferyclang-analyzer-valist.CopyToSelf,
137*5ee8a94eSAndrew Jefferyclang-analyzer-valist.Uninitialized,
138*5ee8a94eSAndrew Jefferyclang-analyzer-valist.Unterminated,
139*5ee8a94eSAndrew Jefferyclang-analyzer-valist.ValistBase,
140*5ee8a94eSAndrew Jefferyclang-analyzer-webkit.NoUncountedMemberChecker,
141*5ee8a94eSAndrew Jefferyclang-analyzer-webkit.RefCntblBaseVirtualDtor,
142*5ee8a94eSAndrew Jefferymisc-misplaced-const,
143*5ee8a94eSAndrew Jefferymisc-redundant-expression,
144*5ee8a94eSAndrew Jefferymisc-static-assert,
145*5ee8a94eSAndrew Jefferymisc-throw-by-value-catch-by-reference,
146*5ee8a94eSAndrew Jefferymisc-unconventional-assign-operator,
147*5ee8a94eSAndrew Jefferymisc-uniqueptr-reset-release,
148*5ee8a94eSAndrew Jefferymisc-unused-using-decls,
149*5ee8a94eSAndrew Jefferymodernize-avoid-bind,
150*5ee8a94eSAndrew Jefferymodernize-deprecated-headers,
151*5ee8a94eSAndrew Jefferymodernize-deprecated-ios-base-aliases,
152*5ee8a94eSAndrew Jefferymodernize-loop-convert,
153*5ee8a94eSAndrew Jefferymodernize-make-shared,
154*5ee8a94eSAndrew Jefferymodernize-make-unique,
155*5ee8a94eSAndrew Jefferymodernize-raw-string-literal,
156*5ee8a94eSAndrew Jefferymodernize-replace-auto-ptr,
157*5ee8a94eSAndrew Jefferymodernize-replace-random-shuffle,
158*5ee8a94eSAndrew Jefferymodernize-return-braced-init-list,
159*5ee8a94eSAndrew Jefferymodernize-shrink-to-fit,
160*5ee8a94eSAndrew Jefferymodernize-unary-static-assert,
161*5ee8a94eSAndrew Jefferymodernize-use-bool-literals,
162*5ee8a94eSAndrew Jefferymodernize-use-transparent-functors,
163*5ee8a94eSAndrew Jefferymodernize-use-uncaught-exceptions,
164*5ee8a94eSAndrew Jefferyperformance-faster-string-find,
165*5ee8a94eSAndrew Jefferyperformance-for-range-copy,
166*5ee8a94eSAndrew Jefferyperformance-implicit-conversion-in-loop,
167*5ee8a94eSAndrew Jefferyperformance-inefficient-algorithm,
168*5ee8a94eSAndrew Jefferyperformance-inefficient-string-concatenation,
169*5ee8a94eSAndrew Jefferyperformance-inefficient-vector-operation,
170*5ee8a94eSAndrew Jefferyperformance-no-int-to-ptr,
171*5ee8a94eSAndrew Jefferyperformance-type-promotion-in-math-fn,
172*5ee8a94eSAndrew Jefferyperformance-unnecessary-copy-initialization,
173*5ee8a94eSAndrew Jefferyperformance-unnecessary-value-param,
174*5ee8a94eSAndrew Jefferyreadability-avoid-const-params-in-decls,
175*5ee8a94eSAndrew Jefferyreadability-braces-around-statements,
176*5ee8a94eSAndrew Jefferyreadability-const-return-type,
177*5ee8a94eSAndrew Jefferyreadability-container-size-empty,
178*5ee8a94eSAndrew Jefferyreadability-convert-member-functions-to-static,
179*5ee8a94eSAndrew Jefferyreadability-delete-null-pointer,
180*5ee8a94eSAndrew Jefferyreadability-deleted-default,
181*5ee8a94eSAndrew Jefferyreadability-else-after-return,
182*5ee8a94eSAndrew Jefferyreadability-function-size,
183*5ee8a94eSAndrew Jeffery-readability-identifier-naming,
184*5ee8a94eSAndrew Jefferyreadability-inconsistent-declaration-parameter-name,
185*5ee8a94eSAndrew Jefferyreadability-isolate-declaration,
186*5ee8a94eSAndrew Jefferyreadability-make-member-function-const,
187*5ee8a94eSAndrew Jefferyreadability-misleading-indentation,
188*5ee8a94eSAndrew Jefferyreadability-misplaced-array-index,
189*5ee8a94eSAndrew Jefferyreadability-named-parameter,
190*5ee8a94eSAndrew Jefferyreadability-non-const-parameter,
191*5ee8a94eSAndrew Jeffery-readability-qualified-auto,
192*5ee8a94eSAndrew Jefferyreadability-redundant-access-specifiers,
193*5ee8a94eSAndrew Jefferyreadability-redundant-control-flow,
194*5ee8a94eSAndrew Jefferyreadability-redundant-declaration,
195*5ee8a94eSAndrew Jefferyreadability-redundant-function-ptr-dereference,
196*5ee8a94eSAndrew Jefferyreadability-redundant-member-init,
197*5ee8a94eSAndrew Jefferyreadability-redundant-preprocessor,
198*5ee8a94eSAndrew Jefferyreadability-redundant-smartptr-get,
199*5ee8a94eSAndrew Jefferyreadability-redundant-string-cstr,
200*5ee8a94eSAndrew Jefferyreadability-redundant-string-init,
201*5ee8a94eSAndrew Jefferyreadability-simplify-boolean-expr,
202*5ee8a94eSAndrew Jefferyreadability-simplify-subscript-expr,
203*5ee8a94eSAndrew Jefferyreadability-static-accessed-through-instance,
204*5ee8a94eSAndrew Jefferyreadability-static-definition-in-anonymous-namespace,
205*5ee8a94eSAndrew Jefferyreadability-string-compare,
206*5ee8a94eSAndrew Jefferyreadability-suspicious-call-argument,
207*5ee8a94eSAndrew Jeffery'
208*5ee8a94eSAndrew Jeffery
209*5ee8a94eSAndrew JefferyWarningsAsErrors: '*'
210*5ee8a94eSAndrew JefferyHeaderFilterRegex: '.*'
211*5ee8a94eSAndrew JefferyCheckOptions:
212*5ee8a94eSAndrew Jeffery  - { key: readability-identifier-naming.VariableCase,  value: lower_case }
213*5ee8a94eSAndrew Jeffery  - { key: readability-identifier-naming.FunctionCase,  value: lower_case }
214*5ee8a94eSAndrew Jeffery  - { key: readability-identifier-naming.ParameterCase, value: lower_case }
215*5ee8a94eSAndrew Jeffery  - { key: readability-identifier-naming.NamespaceCase, value: lower_case }
216*5ee8a94eSAndrew Jeffery  - { key: readability-identifier-naming.StructCase,    value: lower_case  }
217*5ee8a94eSAndrew Jeffery  - { key: cppcoreguidelines-macro-usage.AllowedRegexp, value: DEBUG*|NLOHMANN_JSON_SERIALIZE_ENUM }
218