xref: /openbmc/dbus-sensors/.clang-tidy (revision 72bd273526e99813c36d67fb6d64d8f542c3bdce)
1 Checks: '
2 -*,
3 boost-use-to-string,
4 bugprone-argument-comment,
5 bugprone-assert-side-effect,
6 bugprone-assignment-in-if-condition,
7 bugprone-bad-signal-to-kill-thread,
8 bugprone-bool-pointer-implicit-conversion,
9 bugprone-branch-clone,
10 bugprone-casting-through-void,
11 bugprone-chained-comparison,
12 bugprone-compare-pointer-to-member-virtual-function,
13 bugprone-copy-constructor-init,
14 bugprone-dangling-handle,
15 bugprone-dynamic-static-initializers,
16 bugprone-empty-catch,
17 bugprone-fold-init-type,
18 bugprone-forward-declaration-namespace,
19 bugprone-forwarding-reference-overload,
20 bugprone-implicit-widening-of-multiplication-result,
21 bugprone-inaccurate-erase,
22 bugprone-inc-dec-in-conditions,
23 bugprone-incorrect-enable-if,
24 bugprone-incorrect-roundings,
25 bugprone-infinite-loop,
26 bugprone-integer-division,
27 bugprone-lambda-function-name,
28 bugprone-macro-parentheses,
29 bugprone-macro-repeated-side-effects,
30 bugprone-misplaced-operator-in-strlen-in-alloc,
31 bugprone-misplaced-pointer-arithmetic-in-alloc,
32 bugprone-misplaced-widening-cast,
33 bugprone-move-forwarding-reference,
34 bugprone-multi-level-implicit-pointer-conversion,
35 bugprone-multiple-new-in-one-expression,
36 bugprone-multiple-statement-macro,
37 bugprone-no-escape,
38 bugprone-non-zero-enum-to-bool-conversion,
39 bugprone-not-null-terminated-result,
40 bugprone-optional-value-conversion,
41 bugprone-parent-virtual-call,
42 bugprone-posix-return,
43 bugprone-redundant-branch-condition,
44 bugprone-reserved-identifier,
45 bugprone-shared-ptr-array-mismatch,
46 bugprone-signal-handler,
47 bugprone-signed-char-misuse,
48 bugprone-sizeof-container,
49 bugprone-sizeof-expression,
50 bugprone-spuriously-wake-up-functions,
51 bugprone-standalone-empty,
52 bugprone-string-constructor,
53 bugprone-string-integer-assignment,
54 bugprone-string-literal-with-embedded-nul,
55 bugprone-stringview-nullptr,
56 bugprone-suspicious-enum-usage,
57 bugprone-suspicious-include,
58 bugprone-suspicious-memory-comparison,
59 bugprone-suspicious-memset-usage,
60 bugprone-suspicious-missing-comma,
61 bugprone-suspicious-realloc-usage,
62 bugprone-suspicious-semicolon,
63 bugprone-suspicious-string-compare,
64 bugprone-swapped-arguments,
65 bugprone-switch-missing-default-case,
66 bugprone-terminating-continue,
67 bugprone-throw-keyword-missing,
68 bugprone-too-small-loop-variable,
69 bugprone-unchecked-optional-access,
70 bugprone-undefined-memory-manipulation,
71 bugprone-undelegated-constructor,
72 bugprone-unhandled-exception-at-new,
73 bugprone-unhandled-self-assignment,
74 bugprone-unique-ptr-array-mismatch,
75 bugprone-unsafe-functions,
76 bugprone-unused-local-non-trivial-variable,
77 bugprone-unused-raii,
78 bugprone-unused-return-value,
79 bugprone-use-after-move,
80 bugprone-virtual-near-miss,
81 cert-con36-c,
82 cert-con54-cpp,
83 cert-dcl03-c,
84 cert-dcl16-c,
85 cert-dcl21-cpp,
86 cert-dcl37-c,
87 cert-dcl50-cpp,
88 cert-dcl51-cpp,
89 cert-dcl54-cpp,
90 cert-dcl58-cpp,
91 cert-dcl59-cpp,
92 cert-env33-c,
93 cert-err09-cpp,
94 cert-err34-c,
95 cert-err52-cpp,
96 cert-err60-cpp,
97 cert-err61-cpp,
98 cert-fio38-c,
99 cert-flp30-c,
100 cert-mem57-cpp,
101 cert-msc30-c,
102 cert-msc32-c,
103 cert-msc50-cpp,
104 cert-msc51-cpp,
105 cert-oop11-cpp,
106 cert-oop54-cpp,
107 cert-oop57-cpp,
108 cert-oop58-cpp,
109 cert-pos44-c,
110 cert-pos47-c,
111 cert-sig30-c,
112 cert-str34-c,
113 clang-analyzer-apiModeling.Errno,
114 clang-analyzer-apiModeling.TrustNonnull,
115 clang-analyzer-apiModeling.TrustReturnsNonnull,
116 clang-analyzer-apiModeling.google.GTest,
117 clang-analyzer-apiModeling.llvm.CastValue,
118 clang-analyzer-apiModeling.llvm.ReturnValue,
119 clang-analyzer-core.BitwiseShift,
120 clang-analyzer-core.CallAndMessage,
121 clang-analyzer-core.CallAndMessageModeling,
122 clang-analyzer-core.DivideZero,
123 clang-analyzer-core.DynamicTypePropagation,
124 clang-analyzer-core.NonNullParamChecker,
125 clang-analyzer-core.NonnilStringConstants,
126 clang-analyzer-core.NullDereference,
127 clang-analyzer-core.StackAddrEscapeBase,
128 clang-analyzer-core.StackAddressEscape,
129 clang-analyzer-core.UndefinedBinaryOperatorResult,
130 clang-analyzer-core.VLASize,
131 clang-analyzer-core.builtin.BuiltinFunctions,
132 clang-analyzer-core.builtin.NoReturnFunctions,
133 clang-analyzer-core.uninitialized.ArraySubscript,
134 clang-analyzer-core.uninitialized.Assign,
135 clang-analyzer-core.uninitialized.Branch,
136 clang-analyzer-core.uninitialized.CapturedBlockVariable,
137 clang-analyzer-core.uninitialized.NewArraySize,
138 clang-analyzer-core.uninitialized.UndefReturn,
139 clang-analyzer-cplusplus.InnerPointer,
140 clang-analyzer-cplusplus.Move,
141 clang-analyzer-cplusplus.NewDelete,
142 clang-analyzer-cplusplus.NewDeleteLeaks,
143 clang-analyzer-cplusplus.PlacementNew,
144 clang-analyzer-cplusplus.PureVirtualCall,
145 clang-analyzer-cplusplus.SelfAssignment,
146 clang-analyzer-cplusplus.SmartPtrModeling,
147 clang-analyzer-cplusplus.StringChecker,
148 clang-analyzer-cplusplus.VirtualCallModeling,
149 clang-analyzer-deadcode.DeadStores,
150 clang-analyzer-fuchsia.HandleChecker,
151 clang-analyzer-nullability.NullPassedToNonnull,
152 clang-analyzer-nullability.NullReturnedFromNonnull,
153 clang-analyzer-nullability.NullabilityBase,
154 clang-analyzer-nullability.NullableDereferenced,
155 clang-analyzer-nullability.NullablePassedToNonnull,
156 clang-analyzer-nullability.NullableReturnedFromNonnull,
157 clang-analyzer-optin.core.EnumCastOutOfRange,
158 clang-analyzer-optin.cplusplus.UninitializedObject,
159 clang-analyzer-optin.cplusplus.VirtualCall,
160 clang-analyzer-optin.mpi.MPI-Checker,
161 clang-analyzer-optin.osx.OSObjectCStyleCast,
162 clang-analyzer-optin.osx.cocoa.localizability.EmptyLocalizationContextChecker,
163 clang-analyzer-optin.osx.cocoa.localizability.NonLocalizedStringChecker,
164 clang-analyzer-optin.performance.GCDAntipattern,
165 clang-analyzer-optin.performance.Padding,
166 clang-analyzer-optin.portability.UnixAPI,
167 clang-analyzer-osx.API,
168 clang-analyzer-osx.MIG,
169 clang-analyzer-osx.NSOrCFErrorDerefChecker,
170 clang-analyzer-osx.NumberObjectConversion,
171 clang-analyzer-osx.OSObjectRetainCount,
172 clang-analyzer-osx.ObjCProperty,
173 clang-analyzer-osx.SecKeychainAPI,
174 clang-analyzer-osx.cocoa.AtSync,
175 clang-analyzer-osx.cocoa.AutoreleaseWrite,
176 clang-analyzer-osx.cocoa.ClassRelease,
177 clang-analyzer-osx.cocoa.Dealloc,
178 clang-analyzer-osx.cocoa.IncompatibleMethodTypes,
179 clang-analyzer-osx.cocoa.Loops,
180 clang-analyzer-osx.cocoa.MissingSuperCall,
181 clang-analyzer-osx.cocoa.NSAutoreleasePool,
182 clang-analyzer-osx.cocoa.NSError,
183 clang-analyzer-osx.cocoa.NilArg,
184 clang-analyzer-osx.cocoa.NonNilReturnValue,
185 clang-analyzer-osx.cocoa.ObjCGenerics,
186 clang-analyzer-osx.cocoa.RetainCount,
187 clang-analyzer-osx.cocoa.RetainCountBase,
188 clang-analyzer-osx.cocoa.RunLoopAutoreleaseLeak,
189 clang-analyzer-osx.cocoa.SelfInit,
190 clang-analyzer-osx.cocoa.SuperDealloc,
191 clang-analyzer-osx.cocoa.UnusedIvars,
192 clang-analyzer-osx.cocoa.VariadicMethodTypes,
193 clang-analyzer-osx.coreFoundation.CFError,
194 clang-analyzer-osx.coreFoundation.CFNumber,
195 clang-analyzer-osx.coreFoundation.CFRetainRelease,
196 clang-analyzer-osx.coreFoundation.containers.OutOfBounds,
197 clang-analyzer-osx.coreFoundation.containers.PointerSizedValues,
198 clang-analyzer-security.FloatLoopCounter,
199 clang-analyzer-security.cert.env.InvalidPtr,
200 clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,
201 clang-analyzer-security.insecureAPI.SecuritySyntaxChecker,
202 clang-analyzer-security.insecureAPI.UncheckedReturn,
203 clang-analyzer-security.insecureAPI.bcmp,
204 clang-analyzer-security.insecureAPI.bcopy,
205 clang-analyzer-security.insecureAPI.bzero,
206 clang-analyzer-security.insecureAPI.decodeValueOfObjCType,
207 clang-analyzer-security.insecureAPI.getpw,
208 clang-analyzer-security.insecureAPI.gets,
209 clang-analyzer-security.insecureAPI.mkstemp,
210 clang-analyzer-security.insecureAPI.mktemp,
211 clang-analyzer-security.insecureAPI.rand,
212 clang-analyzer-security.insecureAPI.strcpy,
213 clang-analyzer-security.insecureAPI.vfork,
214 clang-analyzer-unix.API,
215 clang-analyzer-unix.DynamicMemoryModeling,
216 clang-analyzer-unix.Errno,
217 clang-analyzer-unix.Malloc,
218 clang-analyzer-unix.MallocSizeof,
219 clang-analyzer-unix.MismatchedDeallocator,
220 clang-analyzer-unix.StdCLibraryFunctions,
221 clang-analyzer-unix.Vfork,
222 clang-analyzer-unix.cstring.BadSizeArg,
223 clang-analyzer-unix.cstring.CStringModeling,
224 clang-analyzer-unix.cstring.NullArg,
225 clang-analyzer-valist.CopyToSelf,
226 clang-analyzer-valist.Uninitialized,
227 clang-analyzer-valist.Unterminated,
228 clang-analyzer-valist.ValistBase,
229 clang-analyzer-webkit.NoUncountedMemberChecker,
230 clang-analyzer-webkit.RefCntblBaseVirtualDtor,
231 clang-analyzer-webkit.UncountedLambdaCapturesChecker,
232 cppcoreguidelines-avoid-c-arrays,
233 cppcoreguidelines-avoid-capturing-lambda-coroutines,
234 cppcoreguidelines-avoid-goto,
235 cppcoreguidelines-avoid-reference-coroutine-parameters,
236 cppcoreguidelines-c-copy-assignment-signature,
237 cppcoreguidelines-explicit-virtual-functions,
238 cppcoreguidelines-init-variables,
239 cppcoreguidelines-interfaces-global-init,
240 cppcoreguidelines-macro-to-enum,
241 cppcoreguidelines-macro-usage,
242 cppcoreguidelines-misleading-capture-default-by-value,
243 cppcoreguidelines-missing-std-forward,
244 cppcoreguidelines-no-malloc,
245 cppcoreguidelines-no-suspend-with-lock,
246 cppcoreguidelines-noexcept-destructor,
247 cppcoreguidelines-noexcept-move-operations,
248 cppcoreguidelines-noexcept-swap,
249 cppcoreguidelines-prefer-member-initializer,
250 cppcoreguidelines-pro-bounds-array-to-pointer-decay,
251 cppcoreguidelines-pro-type-const-cast,
252 cppcoreguidelines-pro-type-cstyle-cast,
253 cppcoreguidelines-pro-type-member-init,
254 cppcoreguidelines-pro-type-reinterpret-cast,
255 cppcoreguidelines-pro-type-static-cast-downcast,
256 cppcoreguidelines-pro-type-union-access,
257 cppcoreguidelines-pro-type-vararg,
258 cppcoreguidelines-rvalue-reference-param-not-moved,
259 cppcoreguidelines-use-default-member-init,
260 cppcoreguidelines-virtual-class-destructor,
261 cppcoreguidelines-slicing,
262 google-explicit-constructor,
263 misc-coroutine-hostile-raii,
264 misc-header-include-cycle,
265 misc-include-cleaner,
266 misc-misleading-bidirectional,
267 misc-misleading-identifier,
268 misc-misplaced-const,
269 misc-new-delete-overloads,
270 misc-non-copyable-objects,
271 misc-redundant-expression,
272 misc-static-assert,
273 misc-throw-by-value-catch-by-reference,
274 misc-unconventional-assign-operator,
275 misc-uniqueptr-reset-release,
276 misc-unused-alias-decls,
277 misc-unused-parameters,
278 misc-unused-using-decls,
279 modernize-avoid-bind,
280 modernize-deprecated-headers,
281 modernize-deprecated-ios-base-aliases,
282 modernize-loop-convert,
283 modernize-make-shared,
284 modernize-make-unique,
285 modernize-raw-string-literal,
286 modernize-redundant-void-arg,
287 modernize-replace-auto-ptr,
288 modernize-replace-random-shuffle,
289 modernize-return-braced-init-list,
290 modernize-shrink-to-fit,
291 modernize-unary-static-assert,
292 modernize-use-bool-literals,
293 modernize-use-default-member-init,
294 modernize-use-emplace,
295 modernize-use-equals-default,
296 modernize-use-equals-delete,
297 modernize-use-noexcept,
298 modernize-use-nullptr,
299 modernize-use-override,
300 modernize-use-starts-ends-with,
301 modernize-use-std-numbers,
302 modernize-use-transparent-functors,
303 modernize-use-uncaught-exceptions,
304 modernize-use-using,
305 performance-faster-string-find,
306 performance-for-range-copy,
307 performance-implicit-conversion-in-loop,
308 performance-inefficient-algorithm,
309 performance-inefficient-string-concatenation,
310 performance-inefficient-vector-operation,
311 performance-move-const-arg,
312 performance-move-constructor-init,
313 performance-no-automatic-move,
314 performance-no-int-to-ptr,
315 performance-noexcept-destructor,
316 performance-noexcept-move-constructor,
317 performance-noexcept-swap,
318 performance-trivially-destructible,
319 performance-type-promotion-in-math-fn,
320 performance-unnecessary-copy-initialization,
321 performance-unnecessary-value-param,
322 readability-avoid-const-params-in-decls,
323 readability-avoid-nested-conditional-operator,
324 readability-avoid-return-with-void-value,
325 readability-avoid-unconditional-preprocessor-if,
326 readability-braces-around-statements,
327 readability-const-return-type,
328 readability-container-contains,
329 readability-container-data-pointer,
330 readability-container-size-empty,
331 readability-convert-member-functions-to-static,
332 readability-delete-null-pointer,
333 readability-duplicate-include,
334 readability-deleted-default,
335 readability-else-after-return,
336 readability-function-size,
337 readability-identifier-naming,
338 readability-implicit-bool-conversion,
339 readability-inconsistent-declaration-parameter-name,
340 readability-isolate-declaration,
341 readability-make-member-function-const,
342 readability-misleading-indentation,
343 readability-misplaced-array-index,
344 readability-named-parameter,
345 readability-operators-representation,
346 readability-non-const-parameter,
347 readability-qualified-auto,
348 readability-redundant-access-specifiers,
349 readability-redundant-casting,
350 readability-redundant-control-flow,
351 readability-redundant-declaration,
352 readability-redundant-function-ptr-dereference,
353 readability-redundant-inline-specifier,
354 readability-redundant-member-init,
355 readability-redundant-preprocessor,
356 readability-redundant-smartptr-get,
357 readability-redundant-string-cstr,
358 readability-redundant-string-init,
359 readability-reference-to-constructed-temporary,
360 readability-simplify-boolean-expr,
361 readability-simplify-subscript-expr,
362 readability-static-accessed-through-instance,
363 readability-static-definition-in-anonymous-namespace,
364 readability-string-compare,
365 readability-suspicious-call-argument,
366 readability-uniqueptr-delete-release,
367 readability-uppercase-literal-suffix'
368 
369 WarningsAsErrors: '*'
370 HeaderFilterRegex: '.*'
371 CheckOptions:
372   - { key: readability-identifier-naming.ClassCase,     value: CamelCase  }
373   - { key: readability-identifier-naming.VariableCase,  value: camelBack }
374   - { key: readability-identifier-naming.FunctionCase,  value: camelBack }
375   - { key: readability-identifier-naming.ParameterCase, value: camelBack }
376   - { key: readability-identifier-naming.NamespaceCase, value: lower_case }
377   - { key: readability-identifier-naming.StructCase,    value: CamelCase  }
378   - { key: cppcoreguidelines-rvalue-reference-param-not-moved.IgnoreUnnamedParams, value: true }
379   - { key: misc-include-cleaner.IgnoreHeaders, value: ((stdlib.h)|(nlohmann/json_fwd.hpp)|(boost/.*/src.hpp)|(boost/.*/detail/.*)|(nlohmann/detail/.*)|(stdio.h)|(ranges)|(bits/chrono.h)|(boost/system/error_code.hpp)) }
380