xref: /aosp_15_r20/external/clang/test/CodeGenObjC/debug-info-ivars.m (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -debug-info-kind=limited %s -o - | FileCheck %s
2*67e74705SXin Li
3*67e74705SXin Li__attribute((objc_root_class)) @interface NSObject {
4*67e74705SXin Li    id isa;
5*67e74705SXin Li}
6*67e74705SXin Li@end
7*67e74705SXin Li
8*67e74705SXin Li@interface BaseClass : NSObject
9*67e74705SXin Li{
10*67e74705SXin Li    int i;
11*67e74705SXin Li    unsigned flag_1 : 9;
12*67e74705SXin Li    unsigned flag_2 : 9;
13*67e74705SXin Li    unsigned : 1;
14*67e74705SXin Li    unsigned flag_3 : 9;
15*67e74705SXin Li}
16*67e74705SXin Li@end
17*67e74705SXin Li
18*67e74705SXin Li@implementation BaseClass
19*67e74705SXin Li@end
20*67e74705SXin Li
21*67e74705SXin Li// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "i"
22*67e74705SXin Li// CHECK-SAME:           line: 10
23*67e74705SXin Li// CHECK-SAME:           baseType: ![[INT:[0-9]+]]
24*67e74705SXin Li// CHECK-SAME:           size: 32, align: 32,
25*67e74705SXin Li// CHECK-NOT:            offset:
26*67e74705SXin Li// CHECK-SAME:           flags: DIFlagProtected
27*67e74705SXin Li// CHECK: ![[INT]] = !DIBasicType(name: "int"
28*67e74705SXin Li// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "flag_1"
29*67e74705SXin Li// CHECK-SAME:           line: 11
30*67e74705SXin Li// CHECK-SAME:           baseType: ![[UNSIGNED:[0-9]+]]
31*67e74705SXin Li// CHECK-SAME:           size: 9, align: 32,
32*67e74705SXin Li// CHECK-NOT:            offset:
33*67e74705SXin Li// CHECK-SAME:           flags: DIFlagProtected
34*67e74705SXin Li// CHECK: ![[UNSIGNED]] = !DIBasicType(name: "unsigned int"
35*67e74705SXin Li// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "flag_2"
36*67e74705SXin Li// CHECK-SAME:           line: 12
37*67e74705SXin Li// CHECK-SAME:           baseType: ![[UNSIGNED]]
38*67e74705SXin Li// CHECK-SAME:           size: 9, align: 32, offset: 1,
39*67e74705SXin Li// CHECK-SAME:           flags: DIFlagProtected
40*67e74705SXin Li// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "flag_3"
41*67e74705SXin Li// CHECK-SAME:           line: 14
42*67e74705SXin Li// CHECK-SAME:           baseType: ![[UNSIGNED]]
43*67e74705SXin Li// CHECK-SAME:           size: 9, align: 32, offset: 3,
44*67e74705SXin Li// CHECK-SAME:           flags: DIFlagProtected
45