# Copyright 2020-2022 David Robillard <d@drobilla.net>
# SPDX-License-Identifier: CC0-1.0 OR MIT

Checks: >
  *,
  -*-avoid-c-arrays,
  -*-braces-around-statements,
  -*-no-malloc,
  -*-non-private-member-variables-in-classes,
  -*-special-member-functions,
  -*-use-auto,
  -*-use-equals-default,
  -*-use-override,
  -*-vararg,
  -altera-*,
  -bugprone-branch-clone,
  -bugprone-easily-swappable-parameters,
  -bugprone-macro-parentheses,
  -bugprone-narrowing-conversions,
  -bugprone-reserved-identifier,
  -cert-dcl37-c,
  -cert-dcl51-cpp,
  -cert-err33-c,
  -cert-err33-c,
  -cert-msc30-c,
  -cert-msc50-cpp,
  -clang-analyzer-core.UndefinedBinaryOperatorResult,
  -clang-analyzer-optin.cplusplus.VirtualCall,
  -clang-analyzer-security.insecureAPI.strcpy,
  -concurrency-mt-unsafe,
  -cppcoreguidelines-avoid-magic-numbers,
  -cppcoreguidelines-avoid-non-const-global-variables,
  -cppcoreguidelines-explicit-virtual-functions,
  -cppcoreguidelines-init-variables,
  -cppcoreguidelines-macro-usage,
  -cppcoreguidelines-narrowing-conversions,
  -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-cstyle-cast,
  -cppcoreguidelines-pro-type-member-init,
  -cppcoreguidelines-pro-type-union-access,
  -fuchsia-statically-constructed-objects,
  -google-explicit-constructor,
  -google-readability-casting,
  -google-readability-todo,
  -google-runtime-int,
  -hicpp-explicit-conversions,
  -hicpp-member-init,
  -hicpp-multiway-paths-covered,
  -hicpp-named-parameter,
  -hicpp-no-array-decay,
  -hicpp-signed-bitwise,
  -hicpp-uppercase-literal-suffix,
  -llvm-header-guard,
  -llvm-include-order,
  -llvmlibc-*,
  -misc-unused-parameters,
  -modernize-loop-convert,
  -modernize-use-bool-literals,
  -modernize-use-default-member-init,
  -modernize-use-nullptr,
  -modernize-use-trailing-return-type,
  -modernize-use-using,
  -performance-type-promotion-in-math-fn,
  -readability-convert-member-functions-to-static,
  -readability-delete-null-pointer,
  -readability-function-cognitive-complexity,
  -readability-identifier-length,
  -readability-implicit-bool-conversion,
  -readability-inconsistent-declaration-parameter-name,
  -readability-isolate-declaration,
  -readability-magic-numbers,
  -readability-misleading-indentation,
  -readability-named-parameter,
  -readability-non-const-parameter,
  -readability-uppercase-literal-suffix,
WarningsAsErrors: '*'
HeaderFilterRegex: '.*'
FormatStyle: file
