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