diff --git a/.clang-tidy b/.clang-tidy new file mode 100644 index 000000000..3e4e3dbcc --- /dev/null +++ b/.clang-tidy @@ -0,0 +1,73 @@ +# First block is the enabled checks +# Second block is the disabled checks +# Third block is the checks to fix +Checks: | + bugprone-*, + cert-*, + clang-analyzer-*, + clang-diagnostic-*, + concurrency-*, + misc-*, + modernize-*, + performance-*, + portability-*, + readability-*, + + -clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling, + + -bugprone-assignment-in-if-condition, + -bugprone-branch-clone, + -bugprone-easily-swappable-parameters, + -bugprone-implicit-widening-of-multiplication-result, + -bugprone-macro-parentheses, + -bugprone-multi-level-implicit-pointer-conversion, + -bugprone-narrowing-conversions, + -bugprone-reserved-identifier, + -bugprone-sizeof-expression, + -bugprone-suspicious-memory-comparison, + -bugprone-suspicious-realloc-usage, + -bugprone-suspicious-string-compare, + -bugprone-switch-missing-default-case, + -cert-dcl37-c, + -cert-dcl51-cpp, + -cert-err33-c, + -cert-err34-c, + -cert-exp42-c, + -cert-flp37-c, + -clang-analyzer-core.NullDereference, + -clang-analyzer-core.uninitialized.Assign, + -clang-analyzer-optin.core.EnumCastOutOfRange, + -clang-analyzer-optin.portability.UnixAPI, + -clang-analyzer-optin.taint.GenericTaint, + -clang-analyzer-optin.taint.TaintedAlloc, + -clang-analyzer-security.ArrayBound, + -clang-analyzer-unix.Malloc, + -clang-analyzer-valist.Uninitialized, + -concurrency-mt-unsafe, + -misc-include-cleaner, + -misc-no-recursion, + -misc-unused-parameters, + -modernize-macro-to-enum, + -modernize-use-nullptr, + -performance-no-int-to-ptr, + -performance-type-promotion-in-math-fn, + -readability-avoid-nested-conditional-operator, + -readability-braces-around-statements, + -readability-else-after-return, + -readability-function-cognitive-complexity, + -readability-function-size, + -readability-identifier-length, + -readability-implicit-bool-conversion, + -readability-inconsistent-declaration-parameter-name, + -readability-isolate-declaration, + -readability-magic-numbers, + -readability-math-missing-parentheses, + -readability-non-const-parameter, + -readability-simplify-boolean-expr, + -readability-suspicious-call-argument, + -readability-uppercase-literal-suffix, + -readability-use-concise-preprocessor-directives, + +WarningsAsErrors: '*' +HeaderFilterRegex: '^include/.*' +FormatStyle: file