48 lines · plain
1// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -debug-info-kind=limited %s -o - | FileCheck %s2 3// Debug symbols for private ivars. This test ensures that we are4// generating debug info for ivars added by the implementation.5__attribute((objc_root_class)) @interface NSObject {6 id isa;7}8@end9 10@protocol Protocol11@end12 13@interface Delegate : NSObject<Protocol> {14 @protected int foo;15}16@end17 18@interface Delegate(NSObject)19- (void)f;20@end21 22@implementation Delegate(NSObject)23- (void)f { return; }24@end25 26@implementation Delegate {27 int bar;28}29 30- (void)g:(NSObject*) anObject {31 bar = foo;32}33@end34 35// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "foo"36// CHECK-SAME: line: 1437// CHECK-SAME: baseType: ![[INT:[0-9]+]]38// CHECK-SAME: size: 32,39// CHECK-NOT: offset:40// CHECK-SAME: flags: DIFlagProtected41// CHECK: ![[INT]] = !DIBasicType(name: "int"42// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "bar"43// CHECK-SAME: line: 2744// CHECK-SAME: baseType: ![[INT:[0-9]+]]45// CHECK-SAME: size: 32,46// CHECK-NOT: offset:47// CHECK-SAME: flags: DIFlagPrivate48