Skip to content

Commit 9d82e5f

Browse files
Merge pull request #10093 from adrian-prantl/embedded-array
[lldb] Add an embedded Swift test for InlineArray (NFC)
2 parents a73e251 + 0e9ad45 commit 9d82e5f

File tree

3 files changed

+10
-1
lines changed

3 files changed

+10
-1
lines changed

lldb/packages/Python/lldbsuite/test/make/Swift.rules

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ endif
134134
# Check if we should compile in Swift embedded mode
135135
#----------------------------------------------------------------------
136136
ifeq "$(SWIFT_EMBEDDED_MODE)" "1"
137-
SWIFTFLAGS += -gdwarf-types -enable-experimental-feature Embedded -Xfrontend -disable-objc-interop -runtime-compatibility-version none
137+
SWIFTFLAGS += -gdwarf-types -enable-experimental-feature Embedded -enable-experimental-feature ValueGenerics -Xfrontend -disable-objc-interop -runtime-compatibility-version none
138138
ifeq "$(OS)" "Darwin"
139139
SWIFTFLAGS += -target $(ARCH)-apple-macos14
140140
endif

lldb/test/API/lang/swift/embedded/frame_variable/TestSwiftEmbeddedFrameVariable.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,3 +208,10 @@ def implementation(self):
208208
innerFunctionType = frame.FindVariable("innerFunctionType")
209209
innerFuncField = innerFunctionType.GetChildMemberWithName("innerFuncField")
210210
lldbutil.check_variable(self, innerFuncField, False, value='8479')
211+
212+
array = frame.FindVariable("array")
213+
arrayStorage = array.GetChildMemberWithName("_storage")
214+
lldbutil.check_variable(self, arrayStorage, False, num_children=4)
215+
for i in range(4):
216+
lldbutil.check_variable(self, arrayStorage.GetChildAtIndex(i),
217+
False, value=str(i+1))

lldb/test/API/lang/swift/embedded/frame_variable/main.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,8 @@ func g() {
159159
let functionType = FunctionType()
160160
let innerFunctionType = InnerFunctionType()
161161

162+
var array: InlineArray<4, Int> = [1, 2, 3, 4]
163+
162164
// Dummy statement to set breakpoint print can't be used in embedded Swift for now.
163165
let dummy = A() // break here
164166
let string = StaticString("Hello")

0 commit comments

Comments
 (0)