|
1 | 1 | // RUN: %target-swift-frontend -parse-as-library -module-name Test -validate-tbd-against-ir=missing %s -emit-ir | %FileCheck %s --check-prefixes=CHECK,CHECK-NO-STRIP
|
| 2 | +// RUN: %target-swift-frontend -parse-as-library -module-name Test -validate-tbd-against-ir=missing -enable-library-evolution %s -emit-ir | %FileCheck %s --check-prefixes=CHECK,CHECK-NO-STRIP,CHECK-RESILIENT,CHECK-NO-STRIP-RESILIENT |
2 | 3 |
|
3 | 4 | // 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
|
| 5 | +// RUN: %target-swift-frontend -parse-as-library -module-name Test -validate-tbd-against-ir=missing -enable-library-evolution -unavailable-decl-optimization=complete %s -emit-ir | %FileCheck %s --check-prefixes=CHECK,CHECK-STRIP,CHECK-RESILIENT,CHECK-STRIP-RESILIENT |
4 | 6 |
|
5 | 7 | // CHECK: private constant [27 x i8] c"availableEnumAvailableCase\00"
|
6 | 8 |
|
7 | 9 | // FIXME: Should this reflection metadata for an unavailable case be stripped?
|
8 | 10 | // CHECK: private constant [29 x i8] c"availableEnumUnavailableCase\00"
|
9 | 11 |
|
| 12 | +// CHECK-NO-STRIP-RESILIENT: @"$s4Test13AvailableEnumO09availableC34UnavailableCaseWithAssociatedValueyAcA0E6StructVcACmFWC" = {{.*}}constant |
| 13 | +// CHECK-STRIP-RESILIENT-NOT: @"$s4Test13AvailableEnumO09availableC34UnavailableCaseWithAssociatedValueyAcA0E6StructVcACmFWC" = |
| 14 | + |
| 15 | +// CHECK-RESILIENT: @"$s4Test13AvailableEnumO09availablecB4CaseyA2CmFWC" = {{.*}}constant |
| 16 | + |
| 17 | +// CHECK-NO-STRIP-RESILIENT: @"$s4Test13AvailableEnumO09availableC15UnavailableCaseyA2CmFWC" = {{.*}}constant |
| 18 | +// CHECK-STRIP-RESILIENT-NOT: @"$s4Test13AvailableEnumO09availableC15UnavailableCaseyA2CmFWC" = |
| 19 | + |
10 | 20 | // CHECK-NO-STRIP: private constant [25 x i8] c"unavailableEnumFirstCase\00"
|
11 | 21 | // CHECK-STRIP-NOT: private constant [25 x i8] c"unavailableEnumFirstCase\00"
|
12 | 22 |
|
| 23 | +// CHECK-NO-STRIP-RESILIENT: @"$s4Test15UnavailableEnumO011unavailableC9FirstCaseyA2CmFWC" = {{.*}}constant |
| 24 | +// CHECK-STRIP-RESILIENT-NOT: @"$s4Test15UnavailableEnumO011unavailableC9FirstCaseyA2CmFWC" |
| 25 | + |
13 | 26 | @available(*, unavailable)
|
14 | 27 | public struct UnavailableStruct {}
|
15 | 28 |
|
@@ -38,15 +51,6 @@ public enum UnavailableEnum {
|
38 | 51 | // CHECK-NO-STRIP: s4Test15UnavailableEnumO6methodyyF
|
39 | 52 | // CHECK-STRIP-NOT: s4Test15UnavailableEnumO6methodyyF
|
40 | 53 | public func method() {}
|
41 |
| - |
42 |
| - // CHECK-NO-STRIP: s4Test15UnavailableEnumO21__derived_enum_equalsySbAC_ACtFZ |
43 |
| - // CHECK-STRIP-NOT: s4Test15UnavailableEnumO21__derived_enum_equalsySbAC_ACtFZ |
44 |
| - |
45 |
| - // CHECK-NO-STRIP: s4Test15UnavailableEnumO4hash4intoys6HasherVz_tF |
46 |
| - // CHECK-STRIP-NOT: s4Test15UnavailableEnumO4hash4intoys6HasherVz_tF |
47 |
| - |
48 |
| - // CHECK-NO-STRIP: s4Test15UnavailableEnumO9hashValueSivg |
49 |
| - // CHECK-STRIP-NOT: s4Test15UnavailableEnumO9hashValueSivg |
50 | 54 | }
|
51 | 55 |
|
52 | 56 | // CHECK: s4Test13AvailableEnumOwug
|
|
0 commit comments