Quick answer: SPIR-V Cross output with debug info removed showing different line numbers than source? Debug info stripped; line attribution lost - keep debug for dev builds.

Production-style cross-compile; debugging session can't map errors to source.

Dev builds keep debug

spirv-cross flag for debug retention. Larger output; debuggable.

Or maintain source map

Source-to-output map; map line numbers manually.

Audit per build type

Debug vs release: different stripping. Document.

“Debug info has cost and value. Strip for production; keep for dev.”

Establish per-build-type shader compile config. Dev = debug; release = stripped.

Related reading