Mercurial > hg > CbC > CbC_llvm
comparison clang/test/ARCMT/atautorelease.m @ 150:1d019706d866
LLVM10
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 15:10:13 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
147:c2174574ed3a | 150:1d019706d866 |
---|---|
1 // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -fobjc-arc -x objective-c %s.result | |
2 // RUN: arcmt-test --args -triple x86_64-apple-darwin10 -fsyntax-only -x objective-c %s > %t | |
3 // RUN: diff %t %s.result | |
4 | |
5 #include "Common.h" | |
6 | |
7 void NSLog(id, ...); | |
8 | |
9 int main (int argc, const char * argv[]) { | |
10 | |
11 NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; | |
12 | |
13 if (argc) { | |
14 NSAutoreleasePool * pool = [NSAutoreleasePool new]; | |
15 NSLog(@"%s", "YES"); | |
16 [pool drain]; | |
17 } | |
18 [pool drain]; | |
19 | |
20 NSAutoreleasePool * pool1 = [[NSAutoreleasePool alloc] init]; | |
21 NSLog(@"%s", "YES"); | |
22 [pool1 release]; | |
23 | |
24 return 0; | |
25 } | |
26 | |
27 void f(void) { | |
28 NSAutoreleasePool *pool1; | |
29 | |
30 pool1 = [NSAutoreleasePool new]; | |
31 int x = 4; | |
32 | |
33 NSAutoreleasePool *pool2 = [[NSAutoreleasePool alloc] init]; | |
34 ++x; | |
35 [pool2 drain]; | |
36 | |
37 [pool1 release]; | |
38 } | |
39 | |
40 int UIApplicationMain(int argc, char *argv[]); | |
41 | |
42 int main2(int argc, char *argv[]) { | |
43 NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; | |
44 int result = UIApplicationMain(argc, argv); | |
45 [pool release]; | |
46 return result; | |
47 } | |
48 | |
49 @interface Foo : NSObject | |
50 @property (assign) id myProp; | |
51 @end | |
52 | |
53 @implementation Foo | |
54 @synthesize myProp; | |
55 | |
56 -(void)test:(id)p { | |
57 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; | |
58 [pool drain]; | |
59 self.myProp = p; | |
60 } | |
61 @end |