Checks: > # 1. Retained categories: easier to find bugs/performance issues clang-analyzer-*, cppcoreguidelines-pro-type-static-cast-downcast, cppcoreguidelines-pro-type-member-init, cppcoreguidelines-pro-bounds-array-to-pointer-decay, cppcoreguidelines-pro-bounds-pointer-arithmetic, cppcoreguidelines-slicing, cppcoreguidelines-narrowing-conversions, performance-*, # 2. Readability: only keep useful rules readability-braces-around-statements, readability-container-size-empty, readability-delete-null-pointer, readability-redundant-member-init, readability-redundant-smartptr-get, readability-redundant-string-cstr, # 3. Disable all intrusive/style-breaking rules -readability-identifier-length, -readability-avoid-const-params-in-decls, -readability-else-after-return, -cppcoreguidelines-avoid-magic-numbers, -modernize-use-trailing-return-type, -modernize-use-nodiscard, -modernize-use-auto, -modernize-pass-by-value, -modernize-return-braced-init-list, -modernize-use-default-member-init, -modernize-loop-convert, -modernize-concat-nested-namespaces, -llvm-include-order, -bugprone-unused-return-value, -clang-diagnostic-unused-result, -cppcoreguidelines-special-member-functions, -performance-noexcept-move-constructor, -cppcoreguidelines-narrowing-conversions, -clang-diagnostic-error, -cppcoreguidelines-pro-type-member-init, -clang-analyzer-optin.cplusplus.UninitializedObject, -cppcoreguidelines-pro-type-static-cast-downcast, -performance-unnecessary-value-param, WarningsAsErrors: '*' HeaderFilterRegex: '^(?!.*(3rdparty|build)).*$'