mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
In the test infrastructure, I was using the binary comparison tool `cmp` to check if the serialization of a module can be deserialized and reserialized to the exact same swiftmodule file. It turns out that bitwise equality on the emitted files is not guaranteed between those two methods of creating a swiftmodule file is not always guaranteed. Thus, this commit removes the uses of cmp to check for this fragile guarantee.
35 lines
1006 B
Swift
35 lines
1006 B
Swift
// RUN: %empty-directory(%t)
|
|
// RUN: %target-swift-frontend -disable-availability-checking -emit-module-path %t/a.swiftmodule -module-name a %s
|
|
// RUN: llvm-bcanalyzer -dump %t/a.swiftmodule | %FileCheck --check-prefix BC-CHECK --implicit-check-not UnknownCode %s
|
|
// RUN: %target-swift-ide-test -print-module -module-to-print a -source-filename x -I %t | %FileCheck --check-prefix MODULE-CHECK %s
|
|
|
|
// REQUIRES: concurrency
|
|
|
|
///////////
|
|
// This test checks for correct serialization & deserialization of
|
|
// nonisolated
|
|
|
|
// look for correct annotation after first deserialization's module print:
|
|
|
|
// MODULE-CHECK: actor UnsafeCounter {
|
|
// MODULE-CHECK-NEXT: var storage: Int
|
|
// MODULE-CHECK-NEXT: nonisolated var count: Int
|
|
// MODULE-CHECK-NEXT: init()
|
|
// MODULE-CHECK-NEXT: }
|
|
|
|
// and look for nonisolated
|
|
|
|
// BC-CHECK: <Nonisolated_DECL_ATTR abbrevid={{[0-9]+}} op0=0/>
|
|
|
|
|
|
actor UnsafeCounter {
|
|
|
|
private var storage : Int = 0
|
|
|
|
nonisolated
|
|
var count : Int {
|
|
get { 0 }
|
|
set { }
|
|
}
|
|
}
|