| // RUN: rm -rf %t && mkdir %t |
| // RUN: %build-irgen-test-overlays |
| // RUN: %target-swift-frontend(mock-sdk: -sdk %S/Inputs -I %t) %s -emit-ir | FileCheck %s |
| |
| // REQUIRES: CPU=i386_or_x86_64 |
| // REQUIRES: objc_interop |
| |
| import Builtin |
| import Swift |
| import gizmo |
| |
| // CHECK: @_TMPC20generic_classes_objc19GenericInheritsObjC |
| |
| class GenericInheritsObjC<D> : Gizmo { |
| var a : Int |
| var x : D |
| var z : Int |
| |
| override init() |
| } |
| sil_vtable GenericInheritsObjC {} |
| |
| // __deallocating_deinit |
| sil @_TFC20generic_classes_objc19GenericInheritsObjCD : $@convention(method) <T> (GenericInheritsObjC<T>) -> () { |
| bb0(%0 : $GenericInheritsObjC<T>): |
| unreachable |
| } |
| |
| // @objc init |
| sil @_TToFC20generic_classes_objc19GenericInheritsObjCcfT_GS0_x_ : $@convention(objc_method) <T> (@owned GenericInheritsObjC<T>) -> @owned GenericInheritsObjC<T> { |
| bb0(%0 : $GenericInheritsObjC<T>): |
| unreachable |
| } |
| |
| sil @_TToFC20generic_classes_objc19GenericInheritsObjCcfT7bellsOnSi_GSQGS0_x__ : $@convention(objc_method) <T> (Int, @owned GenericInheritsObjC<T>) -> @owned GenericInheritsObjC<T> { |
| bb0(%0 : $Int, %1 : $GenericInheritsObjC<T>): |
| unreachable |
| } |
| |
| // CHECK: @_TMPC20generic_classes_objc20GenericInheritsObjC2 |
| |
| class GenericInheritsObjC2<E> : Gizmo { |
| var x : UInt8 |
| var y : E |
| var z : UInt8 |
| |
| override init() |
| } |
| sil_vtable GenericInheritsObjC2 {} |
| |
| // __deallocating_deinit |
| sil @_TFC20generic_classes_objc20GenericInheritsObjC2D : $@convention(method) <T> (GenericInheritsObjC2<T>) -> () { |
| bb0(%0 : $GenericInheritsObjC2<T>): |
| unreachable |
| } |
| |
| // @objc init |
| sil @_TToFC20generic_classes_objc20GenericInheritsObjC2cfT_GS0_x_ : $@convention(objc_method) <T> (@owned GenericInheritsObjC2<T>) -> @owned GenericInheritsObjC2<T> { |
| bb0(%0 : $GenericInheritsObjC2<T>): |
| unreachable |
| } |
| |
| sil @_TToFC20generic_classes_objc20GenericInheritsObjC2cfT7bellsOnSi_GSQGS0_x__ : $@convention(objc_method) <T> (Int, @owned GenericInheritsObjC<T>) -> @owned GenericInheritsObjC<T> { |
| bb0(%0 : $Int, %1 : $GenericInheritsObjC<T>): |
| unreachable |
| } |