Skip to content

Commit 8de7c95

Browse files
authored
Merge pull request #1965 from adrian-prantl/property-test
apple-llvm-split-commit: 12b9012e862b68128cf30aee81233076a25e1c64 apple-llvm-split-dir: lldb/
2 parents f9ad7f7 + 86145a8 commit 8de7c95

File tree

4 files changed

+16
-1
lines changed

4 files changed

+16
-1
lines changed

lldb/packages/Python/lldbsuite/test/lang/swift/dwarfimporter/Objective-C/Inputs/objc-header.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
@end
1010

1111
@interface ObjCClass : NSObject
12+
@property (readonly) int number;
1213
- (instancetype)init;
1314
@end
1415

lldb/packages/Python/lldbsuite/test/lang/swift/dwarfimporter/Objective-C/TestSwiftDWARFImporterObjC.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,12 @@ def test_dwarf_importer(self):
4949
target.FindFirstGlobalVariable("obj"),
5050
typename="Swift.Optional<__ObjC.ObjCClass>",
5151
num_children=0)
52-
self.expect("target var obj", substrs=["ObjCClass", "private_ivar", "42"])
52+
self.expect("target var obj", substrs=["ObjCClass",
53+
"private_ivar", "42"])
54+
# FIXME: This triggers an assertion in ClangImporter:
55+
# "ObjC property without getter"
56+
#self.expect("target var swiftChild", substrs=["ObjCClass",
57+
# "private_ivar", "42"])
5358
# This is a Clang type, since Clang doesn't generate DWARF for protocols.
5459
self.expect("target var -d no-dyn proto", substrs=["(id)", "proto"])
5560
# This is a Swift type.

lldb/packages/Python/lldbsuite/test/lang/swift/dwarfimporter/Objective-C/impl.m

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ @implementation ObjCClass {
88
int private_ivar;
99
}
1010

11+
@synthesize number = private_ivar;
12+
1113
- (instancetype)init {
1214
self = [super init];
1315
if (self) {

lldb/packages/Python/lldbsuite/test/lang/swift/dwarfimporter/Objective-C/main.swift

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,16 @@ import ObjCModule
22

33
func use<T>(_ t: T) {}
44

5+
class SwiftChild : ObjCClass {
6+
}
7+
8+
59
let pureSwift = 42
610
let obj = ObjCClass()
711
let proto = getProto()
12+
let swiftChild = SwiftChild()
13+
814
use(pureSwift) // break here
915
use(obj)
1016
use(proto)
17+
use(swiftChild)

0 commit comments

Comments
 (0)