dcoughlin added a comment.
In https://reviews.llvm.org/D26768#619222, @malcolm.parsons wrote:
> In https://reviews.llvm.org/D26768#618651, @dcoughlin wrote:
>
> > The definite false positives were cases where the programmer seemed aware
> > of the semantics of virtual calls during construction/d
malcolm.parsons added a comment.
In https://reviews.llvm.org/D26768#618651, @dcoughlin wrote:
> The definite false positives were cases where the programmer seemed aware of
> the semantics of virtual calls during construction/destruction and had each
> subclass explicitly call its own version o
This revision was automatically updated to reflect the committed changes.
Closed by commit rL289309: [analyzer] Improve VirtualCallChecker diagnostics
and move into optin package. (authored by dcoughlin).
Changed prior to commit:
https://reviews.llvm.org/D26768?vs=80979&id=80984#toc
Repository
dcoughlin retitled this revision from "[analyzer] Improve VirtualCallChecker
diagnostics" to "[analyzer] Improve VirtualCallChecker diagnostics and move to
optin package.".
dcoughlin updated the summary for this revision.
dcoughlin updated this revision to Diff 80979.
dcoughlin added a comment.
dcoughlin retitled this revision from "[analyzer] Improve VirtualCallChecker
diagnostics and move out of alpha" to "[analyzer] Improve VirtualCallChecker
diagnostics".
dcoughlin updated this revision to Diff 80953.
dcoughlin added a comment.
Keep the diagnostic improvements but remove the change
dcoughlin added a comment.
I evaluated this checker on three internal codebases that make large use of
virtual functions.
Project 1: ~190,000 lines of C++. 16 alarms. I triaged all of them. There were
2 definite false positives (FPs) and 14 likely FPs.
Project 2: ~320,000 lines of C++. 116 alar
zaks.anna accepted this revision.
zaks.anna added a comment.
Looks great!
Thank you.
https://reviews.llvm.org/D26768
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dcoughlin marked 2 inline comments as done.
dcoughlin added a comment.
In https://reviews.llvm.org/D26768#607157, @zaks.anna wrote:
> Not sure if we should make pure vs not an option so that users could turn the
> checking off. Is there a way to suppress the warning?
There is not a way to supp
dcoughlin updated this revision to Diff 79992.
dcoughlin added a comment.
- Add a PureOnly analyzer-config option that, when set, will limit diagnostics
to calls to only pure virtual functions.
This should have gone in with the prevision updated diff; my apologies for the
noise.
https://revie
dcoughlin updated this revision to Diff 79981.
dcoughlin added a comment.
- Update the diagnostic to be explicit about whether the issue occurs during
construction or destruction
- Add test for pure, intraprocedural case (Sema also catches this).
https://reviews.llvm.org/D26768
Files:
includ
zaks.anna added a comment.
Not sure if we should make pure vs not an option so that users could turn the
checking off. Is there a way to suppress the warning?
Comment at: lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp:210
+ if (isPure)
+os << "pure ";
+
--
NoQ accepted this revision.
NoQ added a comment.
This revision is now accepted and ready to land.
LGTM!
Comment at: test/Analysis/virtualcall.h:23
+#if INTERPROCEDURAL
+ // expected-warning-re@-2 ^}}Call Path : fooCall to virtual
function during construction or de
dcoughlin created this revision.
dcoughlin added reviewers: zaks.anna, NoQ.
dcoughlin added subscribers: cfe-commits, alexfh.
The VirtualCallChecker is in alpha because its interprocedural diagnostics
represent the call path textually in the diagnostic message rather than with a
path sensitive d
13 matches
Mail list logo