ZedThree / clang-tidy-review

Create a pull request review based on clang-tidy warnings
MIT License
90 stars 45 forks source link

`clang-tidy` 17 and above break snippets #135

Open sykhro opened 1 month ago

sykhro commented 1 month ago

clang 17 has increased the snippet lines from 1 to a maximum of 16 https://github.com/llvm/llvm-project/blob/6009708b4367171ccdbf4b5905cb6a803753fe18/clang/include/clang/Basic/DiagnosticOptions.h#L87

(introduced in https://github.com/llvm/llvm-project/commit/f63155aaa6467bd2610820dfd1996af3bb6029a7)

This breaks the suggestions:

image
sykhro commented 1 month ago

The old behaviour can be restored by passing -fcaret-diagnostics-max-lines=1 -fdiagnostics-show-line-numbers=0

ZedThree commented 1 month ago

Ah, that's a pain! Thanks for the heads up. PRs very welcome :)

sykhro commented 1 month ago

I'm happy to contribute but the project is a bit hard to nagivate. Could you point me to where options are passed to clang-tidy? For now I can at least restore the old behaviour.

For the future, I would consider not parsing the output and switching to this tool which transforms the clang-tidy output to SARIF, a standard format for static analysis that should end up in clang too someday. The action can then act on that