[PATCH] D17511: [analyzer] Make ObjCDeallocChecker path sensitive.
Devin Coughlin via cfe-commits
cfe-commits at lists.llvm.org
Wed Feb 24 17:44:28 PST 2016
dcoughlin updated this revision to Diff 48995.
dcoughlin marked 8 inline comments as done.
dcoughlin added a comment.
This update addresses Anna's review comments. The big change is that the program state now maps instance symbols to sets of initial ivar symbols that must be released. (Rather than just storing the set, as before). With this approach we don't need to play the trick of explicitly binding the initial field symbols in the store to get notified that they escape when the instance escapes. Instead, we can look up the instance in the map when it escapes and remove the entire set.
I've also fixed a leak where we weren't removing values properly from the set that must be released and fixed a false positive so we no longer warn about a missing release when the field is known to be nil.
http://reviews.llvm.org/D17511
Files:
lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
test/Analysis/DeallocMissingRelease.m
test/Analysis/MissingDealloc.m
test/Analysis/PR2978.m
test/Analysis/properties.m
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17511.48995.patch
Type: text/x-patch
Size: 59808 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20160225/7a09ebca/attachment-0001.bin>
More information about the cfe-commits
mailing list