3
3
struct S { var x , y : Int }
4
4
5
5
// CHECK-LABEL: sil hidden @_TF27collection_subtype_downcast14array_downcastFT5arrayGSaP___GSqGSaVS_1S__ :
6
- // CHECK: bb0(%0 : $Array<protocol<> >):
6
+ // CHECK: bb0(%0 : $Array<Any >):
7
7
// CHECK-NEXT: debug_value %0
8
8
// CHECK-NEXT: retain_value %0
9
9
// CHECK-NEXT: // function_ref
10
10
// CHECK-NEXT: [[FN:%.*]] = function_ref @_TFs21_arrayConditionalCastu0_rFGSax_GSqGSaq___
11
- // CHECK-NEXT: [[RESULT:%.*]] = apply [[FN]]<protocol<> , S>(%0) : $@convention(thin) <τ_0_0, τ_0_1> (@owned Array<τ_0_0>) -> @owned Optional<Array<τ_0_1>>
11
+ // CHECK-NEXT: [[RESULT:%.*]] = apply [[FN]]<Any , S>(%0) : $@convention(thin) <τ_0_0, τ_0_1> (@owned Array<τ_0_0>) -> @owned Optional<Array<τ_0_1>>
12
12
// CHECK-NEXT: release_value %0
13
13
// CHECK-NEXT: return [[RESULT]]
14
14
func array_downcast( array: [ Any ] ) -> [ S ] ? {
@@ -26,12 +26,12 @@ func ==(lhs: S, rhs: S) -> Bool {
26
26
27
27
// FIXME: This entrypoint name should not be bridging-specific
28
28
// CHECK-LABEL: sil hidden @_TF27collection_subtype_downcast13dict_downcastFT4dictGVs10DictionaryVS_1SP___GSqGS0_S1_Si__ :
29
- // CHECK: bb0(%0 : $Dictionary<S, protocol<> >):
29
+ // CHECK: bb0(%0 : $Dictionary<S, Any >):
30
30
// CHECK-NEXT: debug_value %0
31
31
// CHECK-NEXT: retain_value %0
32
32
// CHECK-NEXT: // function_ref
33
- // CHECK-NEXT: [[FN:%.*]] = function_ref @_TFs42_dictionaryBridgeFromObjectiveCConditionalu2_Rxs8Hashable0_S_rFGVs10Dictionaryxq__GSqGS0_q0_q1___
34
- // CHECK-NEXT: [[RESULT:%.*]] = apply [[FN]]<S, protocol<> , S, Int>(%0) : $@convention(thin) <τ_0_0, τ_0_1, τ_0_2, τ_0_3 where τ_0_0 : Hashable, τ_0_2 : Hashable> (@owned Dictionary<τ_0_0, τ_0_1>) -> @owned Optional<Dictionary<τ_0_2, τ_0_3>>
33
+ // CHECK-NEXT: [[FN:%.*]] = function_ref @_TFs30_dictionaryDownCastConditionalu2_Rxs8Hashable0_S_rFGVs10Dictionaryxq__GSqGS0_q0_q1___
34
+ // CHECK-NEXT: [[RESULT:%.*]] = apply [[FN]]<S, Any , S, Int>(%0) : $@convention(thin) <τ_0_0, τ_0_1, τ_0_2, τ_0_3 where τ_0_0 : Hashable, τ_0_2 : Hashable> (@owned Dictionary<τ_0_0, τ_0_1>) -> @owned Optional<Dictionary<τ_0_2, τ_0_3>>
35
35
// CHECK-NEXT: release_value %0
36
36
// CHECK-NEXT: return [[RESULT]]
37
37
func dict_downcast( dict: [ S : Any ] ) -> [ S : Int ] ? {
0 commit comments