---
HeaderFilterRegex: .*/gtk/.*

Checks:
  - bugprone-*
  - -bugprone-easily-swappable-parameters
  - -bugprone-narrowing-conversions
  - cert-*
  - -cert-int09-c # alias of `readability-enum-initial-value`
  - clang-analyzer-optin*
  - -clang-analyzer-optin.core.EnumCastOutOfRange # TODO: enable after https://github.com/llvm/llvm-project/issues/179094 is fixed
  - cppcoreguidelines-*
  - -cppcoreguidelines-avoid-const-or-ref-data-members
  - -cppcoreguidelines-avoid-magic-numbers # alias of `readability-magic-numbers`
  - -cppcoreguidelines-avoid-non-const-global-variables
  - -cppcoreguidelines-narrowing-conversions # alias of `bugprone-narrowing-conversions`
  - -cppcoreguidelines-pro-bounds-array-to-pointer-decay
  - -cppcoreguidelines-pro-bounds-constant-array-index
  - hicpp-*
  - -hicpp-no-array-decay # alias of `cppcoreguidelines-pro-bounds-array-to-pointer-decay`
  - -hicpp-special-member-functions # alias of `cppcoreguidelines-special-member-functions`
  - misc-*
  - -misc-include-cleaner
  - modernize-*
  - -modernize-use-trailing-return-type
  - performance-*
  - readability-*
  - -readability-container-contains
  - -readability-enum-initial-value
  - -readability-function-cognitive-complexity
  - -readability-identifier-length
  - -readability-magic-numbers
  - -readability-qualified-auto
  - -readability-redundant-access-specifiers

CheckOptions:
  - { key: cppcoreguidelines-avoid-do-while.IgnoreMacros, value: true }
  - { key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic, value: true }
  - { key: modernize-pass-by-value.ValuesOnly, value: true }
  - { key: readability-implicit-bool-conversion.UseUpperCaseLiteralSuffix, value: true }
