LineBreakpoint created at destructuringParam.kt:12 lambdaOrdinal = 1 !JDK_HOME!\bin\java -agentlib:jdwp=transport=dt_socket,address=!HOST_NAME!:!HOST_PORT!,suspend=y,server=n -Dfile.encoding=!FILE_ENCODING! -classpath !OUTPUT_PATH!;!KOTLIN_RUNTIME!;!CUSTOM_LIBRARY!;!RT_JAR! destructuringParam.DestructuringParamKt Connected to the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket' destructuringParam.kt:12 Compile bytecode for x Compile bytecode for y package destructuringParam data class A(val x: String, val y: String) fun foo(a: A, block: (A) -> String): String = block(a) fun box() { } fun main(args: Array) { //Breakpoint! (lambdaOrdinal = 1) foo(A("O", "K")) { (x, y) -> x + y } } // PRINT_FRAME // EXPRESSION: x // RESULT: "O": Ljava/lang/String; // EXPRESSION: y // RESULT: "K": Ljava/lang/String; frame = invoke:12, DestructuringParamKt$main$1 {destructuringParam} this = this = {destructuringParam.DestructuringParamKt$main$1@uniqueID}Function1 field = arity: int = 1 (sp = Lambda.!EXT!) local = $x_y: destructuringParam.A = {destructuringParam.A@uniqueID}A(x=O, y=K) (sp = null) field = x: java.lang.String = O (sp = destructuringParam.kt, 2) field = value: char[] = {char[1]@uniqueID} (sp = String.!EXT!) element = 0 = 'O' 79 field = hash: int = 0 (sp = String.!EXT!) field = y: java.lang.String = K (sp = destructuringParam.kt, 2) field = value: char[] = {char[1]@uniqueID} (sp = String.!EXT!) element = 0 = 'K' 75 field = hash: int = 0 (sp = String.!EXT!) local = x: java.lang.String = O (sp = destructuringParam.kt, 12) field = value: char[] = {char[1]@uniqueID} (sp = String.!EXT!) element = 0 = 'O' 79 field = hash: int = 0 (sp = String.!EXT!) local = y: java.lang.String = K (sp = destructuringParam.kt, 12) field = value: char[] = {char[1]@uniqueID} (sp = String.!EXT!) element = 0 = 'K' 75 field = hash: int = 0 (sp = String.!EXT!) Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket' Process finished with exit code 0