|
1 | | -// RUN: %target-swift-frontend -parse-as-library -module-name Test -validate-tbd-against-ir=missing -unavailable-decl-optimization=none %s -emit-ir | %FileCheck %s --check-prefixes=CHECK,CHECK-NO-STRIP |
| 1 | +// RUN: %target-swift-frontend -parse-as-library -module-name Test -validate-tbd-against-ir=missing -unavailable-decl-optimization=none %s -emit-ir | %FileCheck %s --check-prefixes=CHECK-NO-STRIP |
2 | 2 |
|
3 | | -// RUN: %target-swift-frontend -parse-as-library -module-name Test -validate-tbd-against-ir=missing -unavailable-decl-optimization=complete %s -emit-ir | %FileCheck %s --check-prefixes=CHECK,CHECK-STRIP |
| 3 | +// RUN: %target-swift-frontend -parse-as-library -module-name Test -validate-tbd-against-ir=missing -unavailable-decl-optimization=complete %s -emit-ir | %FileCheck %s --implicit-check-not=unavailableFuncWithNestedObsoleteType --implicit-check-not=unavailableFuncWithNestedType --implicit-check-not=NestedInExtension |
| 4 | + |
| 5 | +// CHECK-NO-STRIP-DAG: s4Test29unavailableFuncWithNestedType |
| 6 | +// CHECK-NO-STRIP-DAG: s4Test29unavailableFuncWithNestedTypeyyF0E10InFunction |
4 | 7 |
|
5 | | -// CHECK-NO-STRIP: s4Test29unavailableFuncWithNestedTypeyyF |
6 | | -// CHECK-STRIP-NOT: s4Test29unavailableFuncWithNestedTypeyyF |
7 | 8 | @available(*, unavailable) |
8 | 9 | public func unavailableFuncWithNestedType() { |
9 | 10 | struct NestedInFunction { |
10 | | - // s4Test29unavailableFuncWithNestedTypeyyF0E10InFunctionL_VADycfC |
11 | 11 | init() {} |
12 | 12 | } |
13 | 13 |
|
14 | 14 | _ = NestedInFunction() |
15 | 15 | } |
16 | 16 |
|
17 | | -// CHECK-NO-STRIP: s4Test29unavailableFuncWithNestedTypeyyF0E10InFunctionL_VADycfC |
18 | | -// CHECK-STRIP-NOT: s4Test29unavailableFuncWithNestedTypeyyF0E10InFunctionL_VADycfC |
| 17 | +// CHECK-NO-STRIP-DAG: s4Test37unavailableFuncWithNestedObsoleteType |
| 18 | +// CHECK-NO-STRIP-DAG: s4Test37unavailableFuncWithNestedObsoleteTypeyyF0E10InFunction |
| 19 | + |
| 20 | +@available(*, unavailable) |
| 21 | +public func unavailableFuncWithNestedObsoleteType() { |
| 22 | + @available(swift, obsoleted: 4) |
| 23 | + struct NestedInFunction { |
| 24 | + init() {} |
| 25 | + } |
| 26 | +} |
19 | 27 |
|
20 | 28 | public struct S {} |
21 | 29 |
|
| 30 | +// CHECK-NO-STRIP-DAG: s4Test1SV17NestedInExtension |
| 31 | + |
22 | 32 | extension S { |
23 | 33 | @available(*, unavailable) |
24 | 34 | public struct NestedInExtension { |
25 | | - // CHECK-NO-STRIP: s4Test1SV17NestedInExtensionV6methodyyF |
26 | | - // CHECK-STRIP-NOT: s4Test1SV17NestedInExtensionV6methodyyF |
27 | 35 | public func method() {} |
28 | 36 | } |
29 | 37 | } |
30 | 38 |
|
31 | | -// CHECK-NO-STRIP: s4Test1SV17NestedInExtensionVMa |
32 | | -// CHECK-STRIP-NOT: s4Test1SV17NestedInExtensionVMa |
33 | | - |
34 | | -// CHECK-NO-STRIP: s4Test29unavailableFuncWithNestedTypeyyF0E10InFunctionL_VMa |
35 | | -// CHECK-STRIP-NOT: s4Test29unavailableFuncWithNestedTypeyyF0E10InFunctionL_VMa |
|
0 commit comments