]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGenObjC/debuginfo-properties.m
Vendor import of clang release_34 branch r197841 (effectively, 3.4 RC3):
[FreeBSD/FreeBSD.git] / test / CodeGenObjC / debuginfo-properties.m
1 // RUN: %clang_cc1 -g -emit-llvm -triple x86_64-apple-darwin -o - %s | FileCheck %s
2 // Check that we emit the correct method names for properties from a protocol.
3 // rdar://problem/13798000
4 @protocol NSObject
5 - (id)init;
6 @end
7 @interface NSObject <NSObject> {}
8 @end
9
10 @class Selection;
11
12 @protocol HasASelection <NSObject>
13 @property (nonatomic, retain) Selection* selection;
14 // CHECK: [ DW_TAG_subprogram ] [line [[@LINE-1]]] [local] [def] [-[MyClass selection]]
15 // CHECK: [ DW_TAG_subprogram ] [line [[@LINE-2]]] [local] [def] [-[MyClass setSelection:]]
16 // CHECK: [ DW_TAG_subprogram ] [line [[@LINE-3]]] [local] [def] [-[OtherClass selection]]
17 // CHECK: [ DW_TAG_subprogram ] [line [[@LINE-4]]] [local] [def] [-[OtherClass setSelection:]]
18 @end
19
20 @interface MyClass : NSObject <HasASelection> {
21   Selection *_selection;
22 }
23 @end
24
25 @implementation MyClass
26 @synthesize selection = _selection;
27 @end
28
29 @interface OtherClass : NSObject <HasASelection> {
30   Selection *_selection;
31 }
32 @end
33 @implementation OtherClass
34 @synthesize selection = _selection;
35 @end