[PATCH] D38675: [analyzer] MisusedMovedObjectChecker: Moving the checker out of alpha state

Daniel Marjamäki via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 10 00:45:05 PDT 2017


danielmarjamaki added a comment.

In https://reviews.llvm.org/D38675#891912, @xazax.hun wrote:

> In https://reviews.llvm.org/D38675#891750, @danielmarjamaki wrote:
>
> > > However, the checker seems to work with a low false positive rate.  (<15 on the LLVM, 6 effectively different)
> >
> > This does not sound like a low false positive rate to me. Could you describe what the false positives are? Is it possible to fix them?
>
>
> Note that the unique findings are 6. I think there are non-alpha checks with more false positives.


This does not answer the important questions. What are the false positives, and is it possible to fix them?

In https://reviews.llvm.org/D38675#891750, @danielmarjamaki wrote:

>




>> Is it enough or should I check it on other open source projects?
> 
> you should check a number of different projects. There might be idioms/usages in other projects that are not seen in LLVM.
> 
> However I don't know what other open source C++11 projects there are.
> 
> But I have a script that runs clang on various Debian projects and I can run that and provide you with the results.

Something didn't go well. I started my script yesterday afternoon. It has checked 426 projects so far. I do not see a single MisusedMovedObject warning. I am thinking that my script doesn't work well in this case. A wild idea is that maybe my script must somehow tell scan-build to use -std=c++11.

For information here are the cppcheck results for a similar checker:
http://cppcheck.sourceforge.net/cgi-bin/daca2-search.cgi?id=accessMoved

Maybe you could pick a few of those projects and check those. That should exercise this checker.

Please tell me if you think some of the accessMoved warnings are false positives. These warnings are "inconclusive" which indicates they might not always be correct.


https://reviews.llvm.org/D38675





More information about the cfe-commits mailing list