summaryrefslogtreecommitdiffstats
path: root/test/CodeGenObjC
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2012-03-30 01:07:51 +0000
committerEric Christopher <echristo@apple.com>2012-03-30 01:07:51 +0000
commit9ee20020255d0968fa0d8937b79e31406025a5c0 (patch)
tree12df1d5e98a0c4eb6776a6b93376beefdbb12f65 /test/CodeGenObjC
parent7435054a965eefb7ab29c0a8caa6698ec435b9f7 (diff)
Testcase for the previous commit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153715 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenObjC')
-rw-r--r--test/CodeGenObjC/debug-info-synthesis.m34
1 files changed, 34 insertions, 0 deletions
diff --git a/test/CodeGenObjC/debug-info-synthesis.m b/test/CodeGenObjC/debug-info-synthesis.m
new file mode 100644
index 0000000000..fdaeae7cc8
--- /dev/null
+++ b/test/CodeGenObjC/debug-info-synthesis.m
@@ -0,0 +1,34 @@
+// RUN: %clang_cc1 -emit-llvm -g -w -triple x86_64-apple-darwin10 %s -o - | FileCheck %s
+# 1 "foo.m" 1
+# 1 "foo.m" 2
+# 1 "./foo.h" 1
+@interface NSObject {
+ struct objc_object *isa;
+}
+@end
+@class NSDictionary;
+
+@interface Foo : NSObject {}
+@property (strong, nonatomic) NSDictionary *dict;
+@end
+# 2 "foo.m" 2
+
+
+
+
+@implementation Foo
+@synthesize dict = _dict;
+
+- (void) bork {
+}
+@end
+
+int main(int argc, char *argv[]) {
+ @autoreleasepool {
+ Foo *f = [Foo new];
+ [f bork];
+ }
+}
+
+// CHECK: !11 = metadata !{i32 {{.*}}, metadata !"./foo.h"
+// CHECK: !29 = metadata !{i32 {{.*}}, i32 0, metadata !11, metadata !"-[Foo dict]", metadata !"-[Foo dict]", metadata !"", metadata !11, i32 8, metadata !30, i1 true, i1 true, i32 0, i32 0, null, i32 320, i1 false, %1* (%0*, i8*)* @"\01-[Foo dict]", null, null, metadata !32} ; [ DW_TAG_subprogram ]