--- FormatStyle: "file" WarningsAsErrors: "*" HeaderFilterRegex: ".*" Checks: "google-build-explicit-make-pair, google-build-namespaces, google-build-using-namespace, google-default-arguments, google-explicit-constructor, google-global-names-in-headers, google-objc-avoid-nsobject-new, google-objc-avoid-throwing-exception, google-objc-function-naming, google-objc-global-variable-declaration, google-readability-avoid-underscore-in-googletest-name, google-readability-braces-around-statements, google-readability-casting, google-readability-function-size, google-readability-namespace-comments, google-runtime-int, google-runtime-operator, google-upgrade-googletest-case, clang-analyzer-apiModeling.StdCLibraryFunctions, clang-analyzer-apiModeling.TrustNonnull, clang-analyzer-apiModeling.google.GTest, clang-analyzer-apiModeling.llvm.CastValue, clang-analyzer-apiModeling.llvm.ReturnValue, clang-analyzer-core.CallAndMessage, clang-analyzer-core.CallAndMessageModeling, clang-analyzer-core.DivideZero, clang-analyzer-core.DynamicTypePropagation, clang-analyzer-core.NonNullParamChecker, clang-analyzer-core.NonnilStringConstants, clang-analyzer-core.NullDereference, clang-analyzer-core.StackAddrEscapeBase, clang-analyzer-core.StackAddressEscape, clang-analyzer-core.UndefinedBinaryOperatorResult, clang-analyzer-core.VLASize, clang-analyzer-core.builtin.BuiltinFunctions, clang-analyzer-core.builtin.NoReturnFunctions, clang-analyzer-core.uninitialized.ArraySubscript, clang-analyzer-core.uninitialized.Assign, clang-analyzer-core.uninitialized.Branch, clang-analyzer-core.uninitialized.CapturedBlockVariable, clang-analyzer-core.uninitialized.UndefReturn, clang-analyzer-cplusplus.InnerPointer, clang-analyzer-cplusplus.Move, clang-analyzer-cplusplus.NewDelete, clang-analyzer-cplusplus.NewDeleteLeaks, clang-analyzer-cplusplus.PlacementNew, clang-analyzer-cplusplus.PureVirtualCall, clang-analyzer-cplusplus.SelfAssignment, clang-analyzer-cplusplus.SmartPtrModeling, clang-analyzer-cplusplus.StringChecker, clang-analyzer-cplusplus.VirtualCallModeling, clang-analyzer-deadcode.DeadStores, clang-analyzer-fuchsia.HandleChecker, clang-analyzer-nullability.NullPassedToNonnull, clang-analyzer-nullability.NullReturnedFromNonnull, clang-analyzer-nullability.NullabilityBase, clang-analyzer-nullability.NullableDereferenced, clang-analyzer-nullability.NullablePassedToNonnull, clang-analyzer-nullability.NullableReturnedFromNonnull, clang-analyzer-optin.cplusplus.UninitializedObject, clang-analyzer-optin.cplusplus.VirtualCall, clang-analyzer-optin.mpi.MPI-Checker, clang-analyzer-optin.osx.OSObjectCStyleCast, clang-analyzer-optin.osx.cocoa.localizability.EmptyLocalizationContextChecker, clang-analyzer-optin.osx.cocoa.localizability.NonLocalizedStringChecker, clang-analyzer-optin.performance.GCDAntipattern, clang-analyzer-optin.performance.Padding, clang-analyzer-optin.portability.UnixAPI, clang-analyzer-osx.API, clang-analyzer-osx.MIG, clang-analyzer-osx.NSOrCFErrorDerefChecker, clang-analyzer-osx.NumberObjectConversion, clang-analyzer-osx.OSObjectRetainCount, clang-analyzer-osx.ObjCProperty, clang-analyzer-osx.SecKeychainAPI, clang-analyzer-osx.cocoa.AtSync, clang-analyzer-osx.cocoa.AutoreleaseWrite, clang-analyzer-osx.cocoa.ClassRelease, clang-analyzer-osx.cocoa.Dealloc, clang-analyzer-osx.cocoa.IncompatibleMethodTypes, clang-analyzer-osx.cocoa.Loops, clang-analyzer-osx.cocoa.MissingSuperCall, clang-analyzer-osx.cocoa.NSAutoreleasePool, clang-analyzer-osx.cocoa.NSError, clang-analyzer-osx.cocoa.NilArg, clang-analyzer-osx.cocoa.NonNilReturnValue, clang-analyzer-osx.cocoa.ObjCGenerics, clang-analyzer-osx.cocoa.RetainCount, clang-analyzer-osx.cocoa.RetainCountBase, clang-analyzer-osx.cocoa.RunLoopAutoreleaseLeak, clang-analyzer-osx.cocoa.SelfInit, clang-analyzer-osx.cocoa.SuperDealloc, clang-analyzer-osx.cocoa.UnusedIvars, clang-analyzer-osx.cocoa.VariadicMethodTypes, clang-analyzer-osx.coreFoundation.CFError, clang-analyzer-osx.coreFoundation.CFNumber, clang-analyzer-osx.coreFoundation.CFRetainRelease, clang-analyzer-osx.coreFoundation.containers.OutOfBounds, clang-analyzer-osx.coreFoundation.containers.PointerSizedValues, clang-analyzer-security.FloatLoopCounter, clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling, clang-analyzer-security.insecureAPI.SecuritySyntaxChecker, clang-analyzer-security.insecureAPI.UncheckedReturn, clang-analyzer-security.insecureAPI.bcmp, clang-analyzer-security.insecureAPI.bcopy, clang-analyzer-security.insecureAPI.bzero, clang-analyzer-security.insecureAPI.decodeValueOfObjCType, clang-analyzer-security.insecureAPI.getpw, clang-analyzer-security.insecureAPI.gets, clang-analyzer-security.insecureAPI.mkstemp, clang-analyzer-security.insecureAPI.mktemp, clang-analyzer-security.insecureAPI.rand, clang-analyzer-security.insecureAPI.strcpy, clang-analyzer-security.insecureAPI.vfork, clang-analyzer-unix.API, clang-analyzer-unix.DynamicMemoryModeling, clang-analyzer-unix.Malloc, clang-analyzer-unix.MallocSizeof, clang-analyzer-unix.MismatchedDeallocator, clang-analyzer-unix.Vfork, clang-analyzer-unix.cstring.BadSizeArg, clang-analyzer-unix.cstring.CStringModeling, clang-analyzer-unix.cstring.NullArg, clang-analyzer-valist.CopyToSelf, clang-analyzer-valist.Uninitialized, clang-analyzer-valist.Unterminated, clang-analyzer-valist.ValistBase, clang-analyzer-webkit.NoUncountedMemberChecker, clang-analyzer-webkit.RefCntblBaseVirtualDtor, clang-analyzer-webkit.UncountedLambdaCapturesChecker, ################################################ Optional checks ################################################ #google-readability-todo, #bugprone-argument-comment, #bugprone-assert-side-effect, #bugprone-bad-signal-to-kill-thread, #bugprone-bool-pointer-implicit-conversion, #bugprone-branch-clone, #bugprone-copy-constructor-init, #bugprone-dangling-handle, #bugprone-dynamic-static-initializers, #bugprone-easily-swappable-parameters, #bugprone-exception-escape, #bugprone-fold-init-type, #bugprone-forward-declaration-namespace, #bugprone-forwarding-reference-overload, #bugprone-implicit-widening-of-multiplication-result, #bugprone-inaccurate-erase, #bugprone-incorrect-roundings, #bugprone-infinite-loop, #bugprone-integer-division, #bugprone-lambda-function-name, #bugprone-macro-parentheses, #bugprone-macro-repeated-side-effects, #bugprone-misplaced-operator-in-strlen-in-alloc, #bugprone-misplaced-pointer-arithmetic-in-alloc, #bugprone-misplaced-widening-cast, #bugprone-move-forwarding-reference, #bugprone-multiple-statement-macro, #bugprone-narrowing-conversions, #bugprone-no-escape, #bugprone-not-null-terminated-result, #bugprone-parent-virtual-call, #bugprone-posix-return, #bugprone-redundant-branch-condition, #bugprone-reserved-identifier, #bugprone-signal-handler, #bugprone-signed-char-misuse, #bugprone-sizeof-container, #bugprone-sizeof-expression, #bugprone-spuriously-wake-up-functions, #bugprone-string-constructor, #bugprone-string-integer-assignment, #bugprone-string-literal-with-embedded-nul, #bugprone-stringview-nullptr, #bugprone-suspicious-enum-usage, #bugprone-suspicious-include, #bugprone-suspicious-memory-comparison, #bugprone-suspicious-memset-usage, #bugprone-suspicious-missing-comma, #bugprone-suspicious-semicolon, #bugprone-suspicious-string-compare, #bugprone-swapped-arguments, #bugprone-terminating-continue, #bugprone-throw-keyword-missing, #bugprone-too-small-loop-variable, #bugprone-undefined-memory-manipulation, #bugprone-undelegated-constructor, #bugprone-unhandled-exception-at-new, #bugprone-unhandled-self-assignment, #bugprone-unused-raii, #bugprone-unused-return-value, #bugprone-use-after-move, #bugprone-virtual-near-miss, #cppcoreguidelines-avoid-c-arrays, #cppcoreguidelines-avoid-goto, #cppcoreguidelines-avoid-magic-numbers, #cppcoreguidelines-avoid-non-const-global-variables, #cppcoreguidelines-c-copy-assignment-signature, #cppcoreguidelines-explicit-virtual-functions, #cppcoreguidelines-init-variables, #cppcoreguidelines-interfaces-global-init, #cppcoreguidelines-macro-usage, #cppcoreguidelines-narrowing-conversions, #cppcoreguidelines-no-malloc, #cppcoreguidelines-non-private-member-variables-in-classes, #cppcoreguidelines-owning-memory, #cppcoreguidelines-prefer-member-initializer, #cppcoreguidelines-pro-bounds-array-to-pointer-decay, #cppcoreguidelines-pro-bounds-constant-array-index, #cppcoreguidelines-pro-bounds-pointer-arithmetic, #cppcoreguidelines-pro-type-const-cast, #cppcoreguidelines-pro-type-cstyle-cast, #cppcoreguidelines-pro-type-member-init, #cppcoreguidelines-pro-type-reinterpret-cast, #cppcoreguidelines-pro-type-static-cast-downcast, #cppcoreguidelines-pro-type-union-access, #cppcoreguidelines-pro-type-vararg, #cppcoreguidelines-slicing, #cppcoreguidelines-special-member-functions, #cppcoreguidelines-virtual-class-destructor, #hicpp-avoid-c-arrays, #hicpp-avoid-goto, #hicpp-braces-around-statements, #hicpp-deprecated-headers, #hicpp-exception-baseclass, #hicpp-explicit-conversions, #hicpp-function-size, #hicpp-invalid-access-moved, #hicpp-member-init, #hicpp-move-const-arg, #hicpp-multiway-paths-covered, #hicpp-named-parameter, #hicpp-new-delete-operators, #hicpp-no-array-decay, #hicpp-no-assembler, #hicpp-no-malloc, #hicpp-noexcept-move, #hicpp-signed-bitwise, #hicpp-special-member-functions, #hicpp-static-assert, #hicpp-undelegated-constructor, #hicpp-uppercase-literal-suffix, #hicpp-use-auto, #hicpp-use-emplace, #hicpp-use-equals-default, #hicpp-use-equals-delete, #hicpp-use-noexcept, #hicpp-use-nullptr, #hicpp-use-override, #hicpp-vararg, #modernize-avoid-bind, #modernize-avoid-c-arrays, #modernize-concat-nested-namespaces, #modernize-deprecated-headers, #modernize-deprecated-ios-base-aliases, #modernize-loop-convert, #modernize-make-shared, #modernize-make-unique, #modernize-pass-by-value, #modernize-raw-string-literal, #modernize-redundant-void-arg, #modernize-replace-auto-ptr, #modernize-replace-disallow-copy-and-assign-macro, #modernize-replace-random-shuffle, #modernize-return-braced-init-list, #modernize-shrink-to-fit, #modernize-unary-static-assert, #modernize-use-auto, #modernize-use-bool-literals, #modernize-use-default-member-init, #modernize-use-emplace, #modernize-use-equals-default, #modernize-use-equals-delete, #modernize-use-nodiscard, #modernize-use-noexcept, #modernize-use-nullptr, #modernize-use-override, #modernize-use-trailing-return-type, #modernize-use-transparent-functors, #modernize-use-uncaught-exceptions, #modernize-use-using, #performance-faster-string-find, #performance-for-range-copy, #performance-implicit-conversion-in-loop, #performance-inefficient-algorithm, #performance-inefficient-string-concatenation, #performance-inefficient-vector-operation, #performance-move-const-arg, #performance-move-constructor-init, #performance-no-automatic-move, #performance-no-int-to-ptr, #performance-noexcept-move-constructor, #performance-trivially-destructible, #performance-type-promotion-in-math-fn, #performance-unnecessary-copy-initialization, #performance-unnecessary-value-param, #portability-restrict-system-includes, #portability-simd-intrinsics, #readability-avoid-const-params-in-decls, #readability-braces-around-statements, #readability-const-return-type, #readability-container-contains, #readability-container-data-pointer, #readability-container-size-empty, #readability-convert-member-functions-to-static, #readability-delete-null-pointer, #readability-duplicate-include, #readability-else-after-return, #readability-function-cognitive-complexity, #readability-function-size, #readability-identifier-length, #readability-identifier-naming, #readability-implicit-bool-conversion, #readability-inconsistent-declaration-parameter-name, #readability-isolate-declaration, #readability-magic-numbers, #readability-make-member-function-const, #readability-misleading-indentation, #readability-misplaced-array-index, #readability-named-parameter, #readability-non-const-parameter, #readability-qualified-auto, #readability-redundant-access-specifiers, #readability-redundant-control-flow, #readability-redundant-declaration, #readability-redundant-function-ptr-dereference, #readability-redundant-member-init, #readability-redundant-preprocessor, #readability-redundant-smartptr-get, #readability-redundant-string-cstr, #readability-redundant-string-init, #readability-simplify-boolean-expr, #readability-simplify-subscript-expr, #readability-static-accessed-through-instance, #readability-static-definition-in-anonymous-namespace, #readability-string-compare, #readability-suspicious-call-argument, #readability-uniqueptr-delete-release, #readability-uppercase-literal-suffix, #readability-use-anyofallof "