Skip to content

Commit a6d1e83

Browse files
Merge pull request #24607 from aschwaighofer/fix_opaque_result_type_test_on_older_runtime-5.1
[5.1] Opaque types require the next Swift runtime
2 parents ed79e09 + 670ce52 commit a6d1e83

File tree

2 files changed

+14
-6
lines changed

2 files changed

+14
-6
lines changed

validation-test/Evolution/Inputs/opaque_archetypes_change_underlying_type.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ public struct Pair : P {
1919
}
2020
#endif
2121

22+
@available(iOS 9999, macOS 9999, tvOS 9999, watchOS 9999, *)
2223
public func resilientFunction() -> some P {
2324
#if BEFORE
2425
return Int(5)
@@ -27,10 +28,12 @@ public func resilientFunction() -> some P {
2728
#endif
2829
}
2930

31+
@available(iOS 9999, macOS 9999, tvOS 9999, watchOS 9999, *)
3032
public func expectedResult() -> Int {
3133
return resilientFunction().getValue()
3234
}
3335

36+
@available(iOS 9999, macOS 9999, tvOS 9999, watchOS 9999, *)
3437
public func expectedSize() -> Int {
3538
return MemoryLayout.size(ofValue: resilientFunction())
3639
}
@@ -39,6 +42,7 @@ public func expectedSize() -> Int {
3942
public struct Container {
4043
public init() {}
4144

45+
@available(iOS 9999, macOS 9999, tvOS 9999, watchOS 9999, *)
4246
public var property : some P {
4347
get {
4448
#if BEFORE
@@ -49,10 +53,12 @@ public struct Container {
4953
}
5054
}
5155

56+
@available(iOS 9999, macOS 9999, tvOS 9999, watchOS 9999, *)
5257
public func expectedResult() -> Int {
5358
return property.getValue()
5459
}
5560

61+
@available(iOS 9999, macOS 9999, tvOS 9999, watchOS 9999, *)
5662
public func expectedSize() -> Int {
5763
return MemoryLayout.size(ofValue: property)
5864
}

validation-test/Evolution/test_opaque_archetypes_change_underlying_type.swift

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,15 @@ import StdlibUnittest
1010
var OpaqueArchetypes = TestSuite("OpaqueArchetypes")
1111

1212
OpaqueArchetypes.test("test1") {
13-
let o = resilientFunction()
14-
expectEqual(o.getValue(), expectedResult())
15-
expectEqual(MemoryLayout.size(ofValue: o), expectedSize())
13+
if #available(iOS 9999, macOS 9999, tvOS 9999, watchOS 9999, *) {
14+
let o = resilientFunction()
15+
expectEqual(o.getValue(), expectedResult())
16+
expectEqual(MemoryLayout.size(ofValue: o), expectedSize())
1617

17-
let c = Container()
18-
expectEqual(c.property.getValue(), c.expectedResult())
19-
expectEqual(MemoryLayout.size(ofValue: c.property), c.expectedSize())
18+
let c = Container()
19+
expectEqual(c.property.getValue(), c.expectedResult())
20+
expectEqual(MemoryLayout.size(ofValue: c.property), c.expectedSize())
21+
}
2022
}
2123

2224
runAllTests()

0 commit comments

Comments
 (0)