Potential Topics for BoF on the Clang Static Analyzer

Hi Everyone,

We are interested in proposing to host a BoF at the next LLVM Dev meeting.

For those of you who plan on attending, what topics would you be interested in discussing? (Feel free to send these either directly to us or to the list.)


One thing i'd gladly talk or listen about would be our checker API. We have lots of boilerplate and code duplication in the analyzer's checkers, and also common mistakes in typical tasks - in fact there are just too many typical tasks that take experience to identify and implement properly, that need to be re-implemented in every checker. I often look at the newly submitted checker and wonder: the idea for the check seems trivial, how come it's already 1k lines of code and keeps growing? The smell of these issues suggests that possibly a better API could have reduced the code size of many checkers dramatically, which would in turn catch bugs and maybe even simplify and speed up reviews. Even if grand projects like implementing a domain-specific language for checkers (that would ideally reduce the checker to its typestate diagram) would not necessarily be immediately taken up, i believe that many good realistic ideas may arise from such discussion, or be shared and investigated.

I agree with this 100%. I think there are a lot of opportunities for higher-level checker APIs that would make it possible to “make the easy things easy”.