// DONT_TARGET_EXACT_BACKEND: WASM // WASM_MUTE_REASON: PROPERTY_REFERENCES // !LANGUAGE: +InlineClasses // WITH_RUNTIME import kotlin.reflect.KMutableProperty0 import kotlin.reflect.KProperty operator fun KMutableProperty0.setValue(host: Any?, property: KProperty<*>, value: R) = set(value) operator fun KMutableProperty0.getValue(host: Any?, property: KProperty<*>): R = get() inline class Foo(val i: Int) var f = Foo(4) fun modify(ref: KMutableProperty0) { var a by ref a = Foo(1) } fun box(): String { modify(::f) if (f.i != 1) throw AssertionError() return "OK" }