Ericsson / codechecker

CodeChecker is an analyzer tooling, defect database and viewer extension for static and dynamic analyzer tools.
https://codechecker.readthedocs.io
Apache License 2.0
2.28k stars 383 forks source link

[analyzer][clang-tidy] Consume reports and FixIts from `--export-fixes` YAML output instead of `stdout`/`stderr` #4063

Open whisperity opened 1 year ago

whisperity commented 1 year ago

Extracted from #4052

We should consider dropping the conversion from "random meaningless stdout text"-to-plist in favour of "well-formatted message and fix YAML"-to-plist. (Or SARIF?)

For a very long time now, Clang-Tidy was capable of dumping the structure of the created diagnostics (all the notes, warnings, and fixits, see https://github.com/llvm/llvm-project/blob/llvmorg-17.0.0/clang-tools-extra/test/clang-tidy/infrastructure/export-diagnostics.cpp!) in YAML.

whisperity commented 7 months ago

Something changed likely after LLVM 18.0 was snapshotted and work on 19.0 begun, because now I'm seeing the following bogus parses from CodeChecker. | and ~~~~~~~~~ alone on lines are definitely not the right fixits.

image image