Diagnostics:
  ClangTidy:
    Add: [clang-diagnostic-*, clang-analyzer-*, modernize-*, performance-*,
      readability-*, objc-*, cert-*, misc-*, linux*, bugprone-*,
      altera-*, abseil-*, cppcoreguidelines-init-variables, 
      cpdarwin-*, llvm-*]
    Remove: [altera-id-dependent-backward-branch, altera-unroll-loops,
      hicpp-signed-bitwise, concurrency-*, altera-struct-pack-align,
      cert-err33-c]
    CheckOptions:
      readability-identifier-length.IgnoredParameterNames: "^[n|_]$"
---
CompileFlags:
  Add:
    - "-O3"
    - "-Wall"
    - "-Wextra"
    - "-Wshadow"
    - "-Wdouble-promotion"
    - "-Wformat=2"
    - "-Wformat-truncation=2"
    - "-Wformat-overflow=2"
    - "-Wwrite-strings"
    - "-Wundef"
Diagnostics:
  ClangTidy:
    Remove: [bugprone-easily-swappable-parameters]
---
If:
  PathMatch: .\*.c
CompileFlags:
  Add:
    - "-std=gnu23"
    - "-xc"
    - "-Dconstexpr=const"
---
If:
  PathMatch: .*\.cpp
CompileFlags:
  Add:
    - "-std=gnu++20"
    - "-xc++"
---
InlayHints:
  Enabled: Yes
  ParameterNames: No
  DeducedTypes: Yes
  BlockEnd: No
