// WITH_STDLIB // TARGET_BACKEND: JVM_IR // LANGUAGE: +ValueClasses // CHECK_BYTECODE_LISTING // FIR_IDENTICAL @JvmInline value class DPoint(val x: Double, val y: Double) class PointBox(var value: DPoint) fun box(): String { var p = DPoint(1.0, 2.0) try { p = DPoint(3.0, error("Failure")) } catch (_: Exception) { } if (p != DPoint(1.0, 2.0)) { return "Partially reassigned variable" } val box = PointBox(p) try { box.value = DPoint(3.0, error("Failure")) } catch (_: Exception) { } if (box.value != DPoint(1.0, 2.0)) { return "Partially reassigned field" } return "OK" }