Files
swift-mirror/test/Serialization/attr-nonisolated.swift
Kavon Farvardin 8fbe42b4c1 [NFC] remove test use of cmp to compare swiftmodules
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.
2021-08-09 16:43:40 -07:00

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 { }
}
}