|
2 | 2 | // RUN: %build-irgen-test-overlays |
3 | 3 | // RUN: %target-swift-frontend(mock-sdk: -sdk %S/Inputs -I %t) %s -emit-ir | %FileCheck %s |
4 | 4 |
|
5 | | -// XFAIL: noncopyable_generics |
6 | | - |
7 | 5 | // REQUIRES: CPU=i386 || CPU=x86_64 |
8 | 6 | // REQUIRES: objc_interop |
9 | 7 |
|
@@ -80,19 +78,19 @@ class SomeClass{} |
80 | 78 | sil_vtable SomeClass {} |
81 | 79 |
|
82 | 80 | // This used to assert. |
83 | | -sil @repo : $@convention(thin) (@guaranteed Optional< @callee_guaranteed @substituted <τ_0_1> (@in_guaranteed Result<τ_0_1, Error>) -> () for <ObjcGenericClass<SomeClass>>>) -> () { |
84 | | -bb0(%0 : $Optional< @callee_guaranteed @substituted <τ_0_1> (@in_guaranteed Result<τ_0_1, Error>) -> () for <ObjcGenericClass<SomeClass>> >): |
85 | | - debug_value %0 : $Optional<@callee_guaranteed @substituted <τ_0_1> (@in_guaranteed Result<τ_0_1, Error>) -> () for <ObjcGenericClass<SomeClass>>>, let, name "completion", argno 1 |
| 81 | +sil @repo : $@convention(thin) (@guaranteed Optional< @callee_guaranteed @substituted <τ_0_1 where τ_0_1 : Copyable, τ_0_1 : Escapable> (@in_guaranteed Result<τ_0_1, Error>) -> () for <ObjcGenericClass<SomeClass>>>) -> () { |
| 82 | +bb0(%0 : $Optional< @callee_guaranteed @substituted <τ_0_1 where τ_0_1 : Copyable, τ_0_1 : Escapable> (@in_guaranteed Result<τ_0_1, Error>) -> () for <ObjcGenericClass<SomeClass>> >): |
| 83 | + debug_value %0 : $Optional<@callee_guaranteed @substituted <τ_0_1 where τ_0_1 : Copyable, τ_0_1 : Escapable> (@in_guaranteed Result<τ_0_1, Error>) -> () for <ObjcGenericClass<SomeClass>>>, let, name "completion", argno 1 |
86 | 84 | %2 = tuple () |
87 | 85 | return %2 : $() |
88 | 86 | } |
89 | 87 |
|
90 | 88 | struct PlainGeneric<T> {} |
91 | 89 |
|
92 | 90 | // This used to assert. |
93 | | -sil @repo2 : $@convention(thin) (@guaranteed Optional< @callee_guaranteed @substituted <τ_0_1> (@in_guaranteed Result<τ_0_1, Error>) -> () for <PlainGeneric<ObjcGenericClass<SomeClass>>>>) -> () { |
94 | | -bb0(%0 : $Optional< @callee_guaranteed @substituted <τ_0_1> (@in_guaranteed Result<τ_0_1, Error>) -> () for <PlainGeneric<ObjcGenericClass<SomeClass>>> >): |
95 | | - debug_value %0 : $Optional<@callee_guaranteed @substituted <τ_0_1> (@in_guaranteed Result<τ_0_1, Error>) -> () for <PlainGeneric<ObjcGenericClass<SomeClass>>>>, let, name "completion", argno 1 |
| 91 | +sil @repo2 : $@convention(thin) (@guaranteed Optional< @callee_guaranteed @substituted <τ_0_1 where τ_0_1 : Copyable, τ_0_1 : Escapable> (@in_guaranteed Result<τ_0_1, Error>) -> () for <PlainGeneric<ObjcGenericClass<SomeClass>>>>) -> () { |
| 92 | +bb0(%0 : $Optional< @callee_guaranteed @substituted <τ_0_1 where τ_0_1 : Copyable, τ_0_1 : Escapable> (@in_guaranteed Result<τ_0_1, Error>) -> () for <PlainGeneric<ObjcGenericClass<SomeClass>>> >): |
| 93 | + debug_value %0 : $Optional<@callee_guaranteed @substituted <τ_0_1 where τ_0_1 : Copyable, τ_0_1 : Escapable> (@in_guaranteed Result<τ_0_1, Error>) -> () for <PlainGeneric<ObjcGenericClass<SomeClass>>>>, let, name "completion", argno 1 |
96 | 94 | %2 = tuple () |
97 | 95 | return %2 : $() |
98 | 96 | } |
0 commit comments