# clangd project configuration.
#
# CompilationDatabase points at the build tree directly. Note what this replaces:
# copying or symlinking compile_commands.json into the project root, which goes
# stale silently and is how the previous setup broke.
CompileFlags:
  CompilationDatabase: build/debug

Index:
  Background: Build
  StandardLibrary: Yes

Diagnostics:
  # misc-include-cleaner is already disabled in .clang-tidy; these are clangd's
  # own equivalents and would contradict it.
  UnusedIncludes: None
  MissingIncludes: None

InlayHints:
  Enabled: Yes
  ParameterNames: Yes
  DeducedTypes: Yes

---
# Vendored code is not ours: no diagnostics, no clang-tidy, ever. Without this,
# opening third_party/doctest/doctest.h shows hundreds of findings from our own
# strict check list against code we will never edit.
If:
  PathMatch: .*/third_party/.*
Diagnostics:
  Suppress: '*'
  ClangTidy:
    Remove:
      - '*'
