build: corregir cppcheck del pre-commit (path relatiu)

Amb -I "\$REPO_ROOT/source" (path absolut), cppcheck no resolia bé el
<cstdint> i emetia un syntaxError fals sobre les capçaleres del tipus
"enum class X : std::uint8_t {" (afecta scene_context.hpp i d'altres
que tenen enums tipats).

El bug estava latent des del commit c45e524 ("clang-tidy --fix
mecánico (... enum size)"), que va afegir els underlying-types als
enums. Cap commit posterior va tocar fitxers que els inclogueren,
així que ningú l'havia activat fins ara.

Resolt amb path relatiu (els git hooks corren sempre des del repo
root, així que "source" és suficient).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-20 18:06:51 +02:00
parent 97c98272c9
commit e4b6d2df6a
+5 -1
View File
@@ -71,6 +71,10 @@ if [ ${#CPP_STAGED[@]} -eq 0 ]; then
fi fi
echo "pre-commit: cppcheck sobre ${#CPP_STAGED[@]} fitxer(s)..." >&2 echo "pre-commit: cppcheck sobre ${#CPP_STAGED[@]} fitxer(s)..." >&2
# Nota: el path d'inclusió ha d'anar en relatiu. Amb path absolut, cppcheck
# falla a parsejar "enum class X : std::uint8_t" (no resol <cstdint> bé) i
# emet un syntaxError fals. Els hooks de git s'executen sempre des de la
# rel del repo, així que "source" relatiu és prou.
if ! cppcheck \ if ! cppcheck \
--enable=warning,style,performance,portability \ --enable=warning,style,performance,portability \
--std=c++20 \ --std=c++20 \
@@ -85,7 +89,7 @@ if ! cppcheck \
-DLINUX_BUILD \ -DLINUX_BUILD \
--quiet \ --quiet \
--error-exitcode=1 \ --error-exitcode=1 \
-I "$REPO_ROOT/source" \ -I source \
"${CPP_STAGED[@]}"; then "${CPP_STAGED[@]}"; then
echo "pre-commit: cppcheck ha trobat errors — commit avortat" >&2 echo "pre-commit: cppcheck ha trobat errors — commit avortat" >&2
exit 1 exit 1