SUMMARY Clazy's incorrect-emit check gets confused by parentheses around the slot after emit or Q_EMIT. STEPS TO REPRODUCE 1. emit(slot); => warning 2. emit slot; => no warning 3. Kile has always paranthesis, e.g. kile/src/kileproject.h:213:16: warning: Missing emit keyword on signal call KileProject::nameChanged [-Wclazy-incorrect-emit] 213 | Q_EMIT(nameChanged(name)); | ^ OBSERVED RESULT Compiler warning warning: Missing emit keyword on signal call KileProject::nameChanged [-Wclazy-incorrect-emit] EXPECTED RESULT No compiler warning SOFTWARE/OS VERSIONS clazy version: 1.12 (Git master) clang version: 18.1.5
This is reasonable, because we also have cases where we used that syntax due to clang-format bugs (introduced in v18, but fixed in v19 already)
Your sentence is ambiguous. What is reasonable, the current behavior or my request to change it?
The request is reasonable
I have a local patch in the works, but want to check if it can be done a bit more elegantly. Macros are a PAIN to work with the clang API, I spent quite some time on it....
https://invent.kde.org/sdk/clazy/-/merge_requests/157
Fixed in 1.13. Thanks for fixing this issue, it makes the Clazy output much more usable for working with Kile.
Thanks :)