# SPDX-License-Identifier: GPL-3.0-or-later # SPDX-FileCopyrightText: 2025 ai-ad4 and the FreePDFEditor contributors # clang-tidy checks committed to the repo (§13.2 rule 7). Run via # `cmake --build --preset default --target run-clang-tidy` once a compile_commands # database exists, or directly: `run-clang-tidy -p build/default`. Checks: > -*, bugprone-*, cert-*, clang-analyzer-*, cppcoreguidelines-*, cppcoreguidelines-pro-bounds-array-to-pointer-decay, cppcoreguidelines-pro-bounds-pointer-arithmetic, google-*, hicpp-*, misc-*, modernize-*, performance-*, portability-*, readability-*, -bugprone-easily-swappable-parameters, -cppcoreguidelines-avoid-magic-numbers, -cppcoreguidelines-non-private-member-variables-in-classes, -hicpp-no-array-decay, -modernize-use-trailing-return-type, -readability-magic-numbers, -readability-identifier-length # Banned in the parsing layers per §7.2: raw pointer arithmetic over input. # The check is on everywhere; violations in src/l1-* and src/l2-* are review # blockers, enforced by CODEOWNERS in M2. WarningsAsErrors: '' HeaderFilterRegex: '.*/src/.*|.*\\[spike/.*' CheckOptions: - key: readability-function-cognitive-complexity.Threshold value: '40' - key: modernize-use-override.IgnoreDestructors value: 'true' - key: cppcoreguidelines-pro-bounds-constant-array-index.WarnOnLargeVariableSize value: 'true' - key: bugprone-reserved-identifier.Invert value: 'false' UseColor: true