916f733f73
Leave it experimental since 1.8 for K/Native.
38 lines
1.0 KiB
Kotlin
Vendored
38 lines
1.0 KiB
Kotlin
Vendored
// FIR_IDENTICAL
|
|
// !DIAGNOSTICS: -UNUSED_ANONYMOUS_PARAMETER
|
|
// !API_VERSION: 1.9
|
|
import kotlin.jvm.Volatile as JvmVolatile
|
|
import kotlin.concurrent.Volatile
|
|
import kotlin.properties.Delegates
|
|
|
|
@OptIn(ExperimentalStdlibApi::class)
|
|
class ConcurrentVolatile {
|
|
<!VOLATILE_ON_VALUE!>@Volatile<!> val x = 0
|
|
// ok
|
|
@Volatile var y = 1
|
|
|
|
<!VOLATILE_ON_DELEGATE!>@delegate:Volatile<!> var z: String by Delegates.observable("?") { prop, old, new -> old.hashCode() }
|
|
|
|
<!VOLATILE_ON_VALUE!>@field:Volatile<!> val w = 2
|
|
|
|
<!WRONG_ANNOTATION_TARGET!>@Volatile<!>
|
|
var noBacking: String
|
|
get() = ""
|
|
set(value) {}
|
|
}
|
|
|
|
class JvmVolatile {
|
|
<!VOLATILE_ON_VALUE!>@JvmVolatile<!> val x = 0
|
|
// ok
|
|
@JvmVolatile var y = 1
|
|
|
|
<!VOLATILE_ON_DELEGATE!>@delegate:JvmVolatile<!> var z: String by Delegates.observable("?") { prop, old, new -> old.hashCode() }
|
|
|
|
<!VOLATILE_ON_VALUE!>@field:JvmVolatile<!> val w = 2
|
|
|
|
<!WRONG_ANNOTATION_TARGET!>@JvmVolatile<!>
|
|
var noBacking: String
|
|
get() = ""
|
|
set(value) {}
|
|
}
|