// IGNORE_BACKEND_K2: WASM // FILE: test.kt data class D(val i: Int, val s: String) data class E(val i: Int, val s: String) { override fun toString() = "OK" override fun equals(other: Any?) = false override fun hashCode() = 42 fun copy() = E(i, s) } fun box() { val d = D(1, "a") d.equals(D(1, "a")) d.hashCode() d.toString() val (i, s) = d d.copy() val e = E(1, "a") e.equals(E(1, "a")) e.hashCode() e.toString() val (s2, i2) = e e.copy() } // EXPECTATIONS JVM_IR // test.kt:14 box // test.kt:4 // test.kt:14 box // test.kt:15 box // test.kt:4 // test.kt:15 box // test.kt:16 box // test.kt:17 box // test.kt:18 box // test.kt:19 box // test.kt:4 // test.kt:-1 copy // test.kt:19 box // test.kt:20 box // test.kt:6 // test.kt:20 box // test.kt:21 box // test.kt:6 // test.kt:21 box // test.kt:8 equals // test.kt:21 box // test.kt:22 box // test.kt:9 hashCode // test.kt:22 box // test.kt:23 box // test.kt:7 toString // test.kt:23 box // test.kt:24 box // test.kt:25 box // test.kt:10 copy // test.kt:6 // test.kt:10 copy // test.kt:25 box // test.kt:26 box // EXPECTATIONS ClassicFrontend JS_IR // test.kt:14 box // test.kt:4 // test.kt:4 // test.kt:4 // test.kt:15 box // test.kt:4 // test.kt:4 // test.kt:4 // test.kt:15 box // test.kt:1 equals // test.kt:1 equals // test.kt:1 equals // test.kt:1 equals // test.kt:1 equals // test.kt:1 equals // test.kt:16 box // test.kt:1 hashCode // test.kt:1 hashCode // test.kt:17 box // test.kt:1 toString // test.kt:18 box // test.kt:1 component1 // test.kt:18 box // test.kt:1 component2 // test.kt:19 box // test.kt:1 copy$default // test.kt:1 copy$default // test.kt:1 copy // test.kt:4 // test.kt:4 // test.kt:4 // test.kt:20 box // test.kt:6 // test.kt:6 // test.kt:6 // test.kt:21 box // test.kt:6 // test.kt:6 // test.kt:6 // test.kt:21 box // test.kt:8 equals // test.kt:22 box // test.kt:9 hashCode // test.kt:23 box // test.kt:7 toString // test.kt:24 box // test.kt:1 component1 // test.kt:24 box // test.kt:1 component2 // test.kt:25 box // test.kt:10 copy // test.kt:6 // test.kt:6 // test.kt:6 // test.kt:26 box // EXPECTATIONS FIR JS_IR // TODO: There is an inconsistency in names between K1 and K2. This should be fixed in KT-64435. // test.kt:14 box // test.kt:4 // test.kt:4 // test.kt:4 // test.kt:15 box // test.kt:4 // test.kt:4 // test.kt:4 // test.kt:15 box // test.kt:1 protoOf.equals // test.kt:1 protoOf.equals // test.kt:1 protoOf.equals // test.kt:1 protoOf.equals // test.kt:1 protoOf.equals // test.kt:1 protoOf.equals // test.kt:16 box // test.kt:1 protoOf.hashCode // test.kt:1 protoOf.hashCode // test.kt:17 box // test.kt:1 protoOf.toString // test.kt:18 box // test.kt:1 protoOf.component1_7eebsc_k$ // test.kt:18 box // test.kt:1 protoOf.component2_7eebsb_k$ // test.kt:19 box // test.kt:1 protoOf.copy$default_8mg6yi_k$ // test.kt:1 protoOf.copy$default_8mg6yi_k$ // test.kt:1 protoOf.copy_xhhsuv_k$ // test.kt:4 // test.kt:4 // test.kt:4 // test.kt:20 box // test.kt:6 // test.kt:6 // test.kt:6 // test.kt:21 box // test.kt:6 // test.kt:6 // test.kt:6 // test.kt:21 box // test.kt:8 equals // test.kt:22 box // test.kt:9 hashCode // test.kt:23 box // test.kt:7 toString // test.kt:24 box // test.kt:1 protoOf.component1_7eebsc_k$ // test.kt:24 box // test.kt:1 protoOf.component2_7eebsb_k$ // test.kt:25 box // test.kt:10 copy // test.kt:6 // test.kt:6 // test.kt:6 // test.kt:26 box // EXPECTATIONS WASM // test.kt:14 $box (12, 14, 17, 17, 17, 17, 12) // test.kt:4 $D. (13, 25, 39, 13, 25, 39, 13, 25, 39) // test.kt:15 $box (4, 13, 15, 18, 18, 18, 18, 13, 6, 6) // test.kt:16 $box (4, 6, 6) // test.kt:17 $box (4, 6, 6) // test.kt:18 $box (17, 9, 9, 17, 12, 12) // test.kt:19 $box (4, 6, 6, 6, 6, 6, 6) // test.kt:20 $box (12, 14, 17, 17, 17, 17, 12) // test.kt:6 $E. (13, 25, 39, 13, 25, 39, 13, 25, 39) // test.kt:21 $box (4, 13, 15, 18, 18, 18, 18, 13, 6, 6) // test.kt:8 $E.equals (39, 44) // test.kt:22 $box (4, 6, 6) // test.kt:9 $E.hashCode (30, 32) // test.kt:23 $box (4, 6, 6) // test.kt:7 $E.toString (30, 30, 30, 30, 34) // test.kt:24 $box (19, 9, 9, 19, 13, 13) // test.kt:25 $box (4, 6) // test.kt:10 $E.copy (17, 19, 22, 17, 24) // test.kt:26 $box