# Why we disabled individual checks: # # clang-analyzer-optin.cplusplus.UninitializedObject # TODO: Occurs commonly in graphics_threaded.h # clang-analyzer-optin.cplusplus.VirtualCall # Occurs very commonly all over # clang-analyzer-optin.performance.Padding # Too annoying to always align for perfect padding # clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling, # TODO: Requires C11 to fix # modernize-use-override, # TODO: modernize-use-override.IgnoreDestructors not supported on ubuntu-latest yet for CI # misc-unused-parameters # TODO: Many changes # readability-static-accessed-through-instance, # Crashes: https://github.com/llvm/llvm-project/issues/53359 # misc-use-anonymous-namespace # We don't want to use anonymous namespaces instead of static functions. # bugprone-suspicious-realloc-usage # We generally don't handle memory allocation failures. Checks: > -*, bugprone-*, -bugprone-assignment-in-if-condition, -bugprone-branch-clone, -bugprone-easily-swappable-parameters, -bugprone-implicit-widening-of-multiplication-result, -bugprone-incorrect-roundings, -bugprone-integer-division, -bugprone-macro-parentheses, -bugprone-narrowing-conversions, -bugprone-parent-virtual-call, -bugprone-reserved-identifier, -bugprone-suspicious-include, -bugprone-unhandled-self-assignment, -bugprone-suspicious-realloc-usage, clang-analyzer-*, -clang-analyzer-optin.cplusplus.UninitializedObject, -clang-analyzer-optin.cplusplus.VirtualCall, -clang-analyzer-optin.osx.cocoa.localizability.NonLocalizedStringChecker, -clang-analyzer-optin.performance.Padding, -clang-analyzer-osx.cocoa.RetainCount, -clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling, -clang-analyzer-security.insecureAPI.rand, cppcoreguidelines-avoid-goto, cppcoreguidelines-interfaces-global-init, cppcoreguidelines-slicing, cppcoreguidelines-virtual-class-destructor, misc-*, -misc-const-correctness, -misc-no-recursion, -misc-non-private-member-variables-in-classes, -misc-static-assert, -misc-unused-parameters, -misc-use-anonymous-namespace, modernize-avoid-bind, modernize-concat-nested-namespaces, modernize-deprecated-headers, modernize-deprecated-ios-base-aliases, modernize-loop-convert, modernize-make-unique, modernize-make-shared, modernize-redundant-void-arg, modernize-replace-auto-ptr, modernize-replace-disallow-copy-and-assign-macro, modernize-replace-random-shuffle, modernize-shrink-to-fit, modernize-unary-static-assert, modernize-use-bool-literals, modernize-use-emplace, modernize-use-equals-default, modernize-use-equals-delete, modernize-use-transparent-functors, modernize-use-uncaught-exceptions, readability-*, -readability-braces-around-statements, -readability-convert-member-functions-to-static, -readability-else-after-return, -readability-function-cognitive-complexity, -readability-function-size, -readability-identifier-length, -readability-identifier-naming, -readability-implicit-bool-conversion, -readability-isolate-declaration, -readability-magic-numbers, -readability-make-member-function-const, -readability-named-parameter, -readability-non-const-parameter, -readability-simplify-boolean-expr, -readability-static-accessed-through-instance, -readability-suspicious-call-argument, -readability-uppercase-literal-suffix, performance-*, -performance-no-int-to-ptr, portability-*,