mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Older runtimes have a bug that was fixed by PR #42131 that this test exercises. rdar://99099912
38 lines
1.5 KiB
Swift
38 lines
1.5 KiB
Swift
// Build unoptimized library
|
|
// RUN: %empty-directory(%t)
|
|
// RUN: %target-build-swift-dylib(%t/%target-library-name(ResilientEnum)) -enable-library-evolution %S/Inputs/resilient_multipayload_enum.swift -emit-module -emit-module-path %t/ResilientEnum.swiftmodule -module-name ResilientEnum
|
|
// RUN: %target-codesign %t/%target-library-name(ResilientEnum)
|
|
// RUN: %target-build-swift %s -lResilientEnum -I %t -L %t -o %t/main %target-rpath(%t)
|
|
// RUN: %target-codesign %t/main
|
|
// RUN: %target-run %t/main %t/%target-library-name(ResilientEnum) | %FileCheck %s
|
|
|
|
// Build optimized library (this exercises a different value witness generation path)
|
|
// RUN: %empty-directory(%t)
|
|
// RUN: %target-build-swift-dylib(%t/%target-library-name(ResilientEnum)) -enable-library-evolution %S/Inputs/resilient_multipayload_enum.swift -emit-module -emit-module-path %t/ResilientEnum.swiftmodule -module-name ResilientEnum -O
|
|
// RUN: %target-codesign %t/%target-library-name(ResilientEnum)
|
|
// RUN: %target-build-swift %s -lResilientEnum -I %t -L %t -o %t/main %target-rpath(%t)
|
|
// RUN: %target-codesign %t/main
|
|
// RUN: %target-run %t/main %t/%target-library-name(ResilientEnum) | %FileCheck %s
|
|
|
|
// REQUIRES: executable_test
|
|
|
|
// Older runtimes have a bug (fixed by PR#42131) that causes this test to fail.
|
|
// UNSUPPORTED: use_os_stdlib || back_deployment_runtime
|
|
|
|
import ResilientEnum
|
|
|
|
@inline(never)
|
|
@_semantics("optimize.sil.specialize.generic.never")
|
|
func dump<T>(_ t: T) {
|
|
print(t)
|
|
}
|
|
|
|
@inline(never)
|
|
func doit() {
|
|
let e = ProblematicEnumeration<Bool>.six
|
|
// CHECK: six
|
|
dump(e)
|
|
}
|
|
|
|
doit()
|