mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Fix support for subscript default arguments in KeyPath
This commit is contained in:
@@ -322,6 +322,25 @@ struct Subscripts<T> {
|
||||
}
|
||||
}
|
||||
|
||||
struct SubscriptDefaults {
|
||||
subscript(x: Int = 0) -> Int {
|
||||
get { fatalError() }
|
||||
set { fatalError() }
|
||||
}
|
||||
subscript(x: Int, y: Int, z: Int = 0) -> Int {
|
||||
get { fatalError() }
|
||||
set { fatalError() }
|
||||
}
|
||||
subscript(x: Bool, bool y: Bool = false) -> Bool {
|
||||
get { fatalError() }
|
||||
set { fatalError() }
|
||||
}
|
||||
subscript(bool x: Bool, y: Int, z: Int = 0) -> Int {
|
||||
get { fatalError() }
|
||||
set { fatalError() }
|
||||
}
|
||||
}
|
||||
|
||||
// CHECK-LABEL: sil hidden [ossa] @{{.*}}10subscripts
|
||||
func subscripts<T: Hashable, U: Hashable>(x: T, y: U, s: String) {
|
||||
_ = \Subscripts<T>.[]
|
||||
@@ -352,6 +371,16 @@ func subscripts<T: Hashable, U: Hashable>(x: T, y: U, s: String) {
|
||||
|
||||
_ = \Subscripts<T>.[Bass()]
|
||||
_ = \Subscripts<T>.[Treble()]
|
||||
|
||||
_ = \SubscriptDefaults.[]
|
||||
_ = \SubscriptDefaults.[0]
|
||||
_ = \SubscriptDefaults.[0, 0]
|
||||
_ = \SubscriptDefaults.[0, 0, 0]
|
||||
|
||||
_ = \SubscriptDefaults.[false]
|
||||
_ = \SubscriptDefaults.[false, bool: false]
|
||||
_ = \SubscriptDefaults.[bool: false, 0]
|
||||
_ = \SubscriptDefaults.[bool: false, 0, 0]
|
||||
}
|
||||
|
||||
// CHECK-LABEL: sil hidden [ossa] @{{.*}}subclass_generics
|
||||
|
||||
Reference in New Issue
Block a user