Re: r345099 - [analyzer] Trust summaries for OSObject::retain and OSObject::release

2018-11-28 Thread Mikael Holmén via cfe-commits
Hi, On 11/27/18 12:23 AM, George Karpenkov wrote: > The error is indeed strange. > The body is declared as > >   LazyDeclStmtPtr Body; > > where > > using LazyDeclStmtPtr = >     LazyOffsetPtr; > > where > > template Offset)> > struct LazyOffsetPtr { >   mutable uint64_t Ptr = 0; > (…) >

Re: r345099 - [analyzer] Trust summaries for OSObject::retain and OSObject::release

2018-11-26 Thread George Karpenkov via cfe-commits
The error is indeed strange. The body is declared as LazyDeclStmtPtr Body; where using LazyDeclStmtPtr = LazyOffsetPtr; where template struct LazyOffsetPtr { mutable uint64_t Ptr = 0; (…) explicit operator bool() const { return Ptr != 0; } (…) } so it does not seem like it can be un

Re: r345099 - [analyzer] Trust summaries for OSObject::retain and OSObject::release

2018-11-26 Thread Mikael Holmén via cfe-commits
Hi again, Do you have any opinion about the below valgrind complaint that starts appearing with this patch? valgrind still complains on it on current trunk. I see it when compiling with clang 3.6.0. I've also tried gcc 5.4.0 but then I don't get it. Regards, Mikael On 11/21/18 8:33 AM, Mikae

Re: r345099 - [analyzer] Trust summaries for OSObject::retain and OSObject::release

2018-11-20 Thread Mikael Holmén via cfe-commits
Hi George, I noticed that valgrind started complaining in one case with this patch. I've no idea if it's really due to something in the patch or if it's something old that surfaced or if it's a false flag. Anyway, with this patch the following valgrind clang-tidy -checks='-*,clang-analyzer-*

r345099 - [analyzer] Trust summaries for OSObject::retain and OSObject::release

2018-10-23 Thread George Karpenkov via cfe-commits
Author: george.karpenkov Date: Tue Oct 23 16:11:30 2018 New Revision: 345099 URL: http://llvm.org/viewvc/llvm-project?rev=345099&view=rev Log: [analyzer] Trust summaries for OSObject::retain and OSObject::release Refactor the way in which summaries are consumed for safeMetaCast Differential Revi