summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis/CFRefCount.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-10-13 22:55:33 +0000
committerTed Kremenek <kremenek@apple.com>2009-10-13 22:55:33 +0000
commit80816acf9b867c0f54477a95d6861372860ab83c (patch)
tree30eeaccfcc34eb03219ced8a047e735d0ee40331 /clang/lib/Analysis/CFRefCount.cpp
parent284312176a414215d88cc016f7b6edb70626ffaf (diff)
downloadbcm5719-llvm-80816acf9b867c0f54477a95d6861372860ab83c.tar.gz
bcm5719-llvm-80816acf9b867c0f54477a95d6861372860ab83c.zip
retain/release checker: retained objects passed to pthread_create (as
the data argument) should not be tracked further until we support full IPA. (fixes <rdar://problem/7299394>) llvm-svn: 84047
Diffstat (limited to 'clang/lib/Analysis/CFRefCount.cpp')
-rw-r--r--clang/lib/Analysis/CFRefCount.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/clang/lib/Analysis/CFRefCount.cpp b/clang/lib/Analysis/CFRefCount.cpp
index 755819197e7..3a4120c642b 100644
--- a/clang/lib/Analysis/CFRefCount.cpp
+++ b/clang/lib/Analysis/CFRefCount.cpp
@@ -971,7 +971,13 @@ RetainSummary* RetainSummaryManager::getSummary(FunctionDecl* FD) {
switch (strlen(FName)) {
default: break;
-
+ case 14:
+ if (!memcmp(FName, "pthread_create", 14)) {
+ // Part of: <rdar://problem/7299394>. This will be addressed
+ // better with IPA.
+ S = getPersistentStopSummary();
+ }
+ break;
case 17:
// Handle: id NSMakeCollectable(CFTypeRef)
OpenPOWER on IntegriCloud