diff options
| author | Ted Kremenek <kremenek@apple.com> | 2009-02-13 22:26:30 +0000 |
|---|---|---|
| committer | Ted Kremenek <kremenek@apple.com> | 2009-02-13 22:26:30 +0000 |
| commit | 02b63b42873620d9931f44d32ed2c95f776eef07 (patch) | |
| tree | 56cf0d32028681afc7d0a7d9bd400644c150b657 /clang | |
| parent | 7f14efe66cc35d76053d451a95da77291a0a08f4 (diff) | |
| download | bcm5719-llvm-02b63b42873620d9931f44d32ed2c95f776eef07.tar.gz bcm5719-llvm-02b63b42873620d9931f44d32ed2c95f776eef07.zip | |
Add test case illustrating special handling of 'SenTestCase' subclasses for the missing -dealloc check.
llvm-svn: 64494
Diffstat (limited to 'clang')
| -rw-r--r-- | clang/test/Analysis/MissingDealloc.m | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/clang/test/Analysis/MissingDealloc.m b/clang/test/Analysis/MissingDealloc.m index c326eab300a..b06c63d426e 100644 --- a/clang/test/Analysis/MissingDealloc.m +++ b/clang/test/Analysis/MissingDealloc.m @@ -1,6 +1,10 @@ // RUN: clang -analyze -warn-objc-missing-dealloc '-DIBOutlet=__attribute__((iboutlet))' %s --verify typedef signed char BOOL; -@protocol NSObject - (BOOL)isEqual:(id)object; @end +@protocol NSObject +- (BOOL)isEqual:(id)object; +- (Class)class; +@end + @interface NSObject <NSObject> {} - (void)dealloc; - (id)init; @@ -83,3 +87,31 @@ IBOutlet NSWindow *window; [super dealloc]; } @end + +//===------------------------------------------------------------------------=== +// PR 3187: http://llvm.org/bugs/show_bug.cgi?id=3187 +// - Disable the missing -dealloc check for classes that subclass SenTestCase + +@class NSString; + +@interface SenTestCase : NSObject {} +@end + +@interface MyClassTest : SenTestCase { + NSString *resourcePath; +} +@end + +@interface NSBundle : NSObject {} ++ (NSBundle *)bundleForClass:(Class)aClass; +- (NSString *)resourcePath; +@end + +@implementation MyClassTest +- (void)setUp { + resourcePath = [[NSBundle bundleForClass:[self class]] resourcePath]; +} +- (void)testXXX { + // do something which uses resourcepath +} +@end |

