On 9 November 2016 at 18:50, Devin Coughlin <dcough...@apple.com> wrote:
> We agree that this is a valuable checker and are committed to getting it out > of alpha. This check is in alpha because: > > a) The diagnostic experience is not very good. It reports a call path > directly in the diagnostic message (for example “Call path: foo <— bar” for a > call to foo() in bar()) rather than as a path diagnostic. Agreed. > b) The lack of path-sensitive reasoning may result in false positives when a > called function uses a member variable flag to track whether initialization > is complete and does not call the virtual member function during > initialization. Right, we're not doing this. > c) The check issues a warning for both calls to pure virtual functions (which > is always an error) and non-pure virtual functions (which is more of a code > smell and may be a false positive). I'm using static analysis to find code smells. > I’ll commit to doing Step 1) in the immediate future and Step 2) eventually. > Once the checker is on by default we’ll need to assess whether the false > positive rate from c) is too high — if so, we’ll need to turn the > non-pure-virtual case off by default. LGTM. Thanks, -- Malcolm Parsons _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits