1
- // RUN: %target-swift-emit-silgen -target %target-swift-abi-5.8-triple -module-name Test -parse-as-library %s -verify -unavailable-decl-optimization=stub | %FileCheck %s --check-prefixes=CHECK-SWIFT5_8
2
- // RUN: %target-swift-emit-silgen -target %target-swift-abi-5.9-triple -module-name Test -parse-as-library %s -verify -unavailable-decl-optimization=stub | %FileCheck %s --check-prefixes=CHECK-SWIFT5_9
1
+ // RUN: %target-swift-emit-silgen -target %target-swift-abi-5.8-triple -module-name Test -parse-as-library %s -verify -unavailable-decl-optimization=stub | %FileCheck %s --check-prefixes=CHECK,CHECK-SWIFT5_8
2
+ // RUN: %target-swift-emit-silgen -target %target-swift-abi-5.8-triple -module-name Test -parse-as-library %s -verify -unavailable-decl-optimization=stub -application-extension | %FileCheck %s --check-prefixes=CHECK,CHECK-SWIFT5_8
3
+ // RUN: %target-swift-emit-silgen -target %target-swift-abi-5.9-triple -module-name Test -parse-as-library %s -verify -unavailable-decl-optimization=stub | %FileCheck %s --check-prefixes=CHECK,CHECK-SWIFT5_9
4
+ // RUN: %target-swift-emit-silgen -target %target-swift-abi-5.9-triple -module-name Test -parse-as-library %s -verify -unavailable-decl-optimization=stub -application-extension | %FileCheck %s --check-prefixes=CHECK,CHECK-SWIFT5_9
3
5
4
6
// REQUIRES: OS=macosx
5
7
@@ -19,3 +21,22 @@ public func unavailableFunc() {}
19
21
@available ( * , unavailable)
20
22
@inlinable public func unavailableInlinableFunc( ) { }
21
23
24
+ // CHECK-LABEL: sil{{.*}}@$s4Test22unavailableOnMacOSFuncyyF
25
+ // CHECK-SWIFT5_8: [[FNREF:%.*]] = function_ref @$ss36_diagnoseUnavailableCodeReached_aeics5NeverOyF : $@convention(thin) () -> Never
26
+ // CHECK-SWIFT5_9: [[FNREF:%.*]] = function_ref @$ss31_diagnoseUnavailableCodeReacheds5NeverOyF : $@convention(thin) () -> Never
27
+ // CHECK-NEXT: [[APPLY:%.*]] = apply [[FNREF]]()
28
+ // CHECK: } // end sil function '$s4Test22unavailableOnMacOSFuncyyF'
29
+ @available ( macOS, unavailable)
30
+ public func unavailableOnMacOSFunc( ) { }
31
+
32
+ // CHECK-LABEL: sil{{.*}}@$s4Test31unavailableOnMacOSExtensionFuncyyF
33
+ // CHECK-NOT: function_ref @$ss36_diagnoseUnavailableCodeReached{{.*}} : $@convention(thin) () -> Never
34
+ // CHECK: } // end sil function '$s4Test31unavailableOnMacOSExtensionFuncyyF'
35
+ @available ( macOSApplicationExtension, unavailable)
36
+ public func unavailableOnMacOSExtensionFunc( ) { }
37
+
38
+ // CHECK-LABEL: sil{{.*}}@$s4Test20unavailableOniOSFuncyyF
39
+ // CHECK-NOT: function_ref @$ss36_diagnoseUnavailableCodeReached{{.*}} : $@convention(thin) () -> Never
40
+ // CHECK: } // end sil function '$s4Test20unavailableOniOSFuncyyF'
41
+ @available ( iOS, unavailable)
42
+ public func unavailableOniOSFunc( ) { }
0 commit comments