Files
swift-mirror/test/Concurrency/concurrent_value_checking_objc.swift
Michael Gottesman b3e837c16c [region-isolation] Enable region isolation by default with strict-concurrency.
I added a disable flag -disable-region-based-isolation-with-strict-concurrency
so that we do not need to update the current tests. It is only available when
asserts are enabled to ensure users cannot use it.

rdar://125918028
2024-04-04 13:07:32 -07:00

25 lines
850 B
Swift

// RUN: %target-swift-frontend -disable-availability-checking -strict-concurrency=complete %s -emit-sil -o /dev/null -verify -disable-region-based-isolation-with-strict-concurrency
// RUN: %target-swift-frontend -disable-availability-checking -strict-concurrency=complete %s -emit-sil -o /dev/null -verify
// REQUIRES: concurrency
// REQUIRES: objc_interop
// REQUIRES: asserts
import Foundation
final class A: NSObject, Sendable {
let x: Int = 5
}
final class B: NSObject, Sendable {
var x: Int = 5 // expected-warning{{stored property 'x' of 'Sendable'-conforming class 'B' is mutable}}
}
class C { } // expected-note{{class 'C' does not conform to the 'Sendable' protocol}}
final class D: NSObject, Sendable {
let c: C = C() // expected-warning{{stored property 'c' of 'Sendable'-conforming class 'D' has non-sendable type 'C'}}
}