From: Ted Kremenek Date: Thu, 5 Mar 2009 05:14:55 +0000 (+0000) Subject: Test case: When using RegionStore with the retain/release checker, stop tracking... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f27893a1a17dbde417dc7bccbbd25992c33215f9;p=clang Test case: When using RegionStore with the retain/release checker, stop tracking objects assigned to self's ivar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66139 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Analysis/retain-release-region-store.m b/test/Analysis/retain-release-region-store.m index ca040743b1..651ffa76df 100644 --- a/test/Analysis/retain-release-region-store.m +++ b/test/Analysis/retain-release-region-store.m @@ -99,3 +99,20 @@ CFAbsoluteTime f4() { return t; } +// Test that assigning to an self.ivar loses track of an object. +// This is a temporary hack to reduce false positives. +@interface Test3 : NSObject { + id myObj; +} +- (void)test_self_assign_ivar; +@end + +@implementation Test3 +- (void)test_self_assign_ivar { + CFAbsoluteTime t = CFAbsoluteTimeGetCurrent(); + CFDateRef date = CFDateCreate(0, t); // no-warning + myObj = (id) date; +} +@end + +