[cfe-dev] [analyzer][RFC] Our stance on checker dependencies and disabling core checkers

Alexey Sidorin via cfe-dev cfe-dev at lists.llvm.org
Sun Aug 25 22:57:24 PDT 2019


23.08.2019 15:50, Kristóf Umann пишет:
>
>
> On Sun, 18 Aug 2019 at 20:32, Alexey Sidorin <alexey.v.sidorin at ya.ru 
> <mailto:alexey.v.sidorin at ya.ru>> wrote:
>
>     Just some field notes. This design has a very important feature -
>     reproducible analysis. If we had this split, the warnings were always
>     the same independently on the checkers enabled or disabled.
>     Unfortunately, without this feature, the analysis depends on what
>     checkers can terminate the analysis path or add additional
>     transitions
>     making warnings of the same checker different if different
>     checkers are
>     enabled within it.
>
>
> I very much agree with you, though this issue is a tough nut to crack. 
> Say that my esoteric codebase manages to fool a checker that emits 
> fatal error nodes, I may want to disable that checker altogether, 
> diagnostics and modeling included, as it screws with the rest of the 
> analysis as well. I lean on the side of not directly exposing modeling 
> checkers to the users to tinker with, but unfortunately we're far off 
> from being so precise that we could confidently make this a developer 
> only feature.
>
> On the other hand, I only heard of such an issue with one of our 
> internal checkers, that introduced practically infinite state splits, 
> so I can't confidently say that this is a common problem either. Do 
> you guys have any experience with this?


Yes, we often seen this problem when introducing a new path-sensitive 
checker or disabling some. This usually lead to some warnings of other 
checkers appear or disappear. The only solution we had is to fix the 
checker set we run analyzer with but it didn't work if a new checker is 
added.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20190826/4f686da2/attachment.html>


More information about the cfe-dev mailing list