diff --git a/idea/testData/debugger/tinyApp/outs/initializer.out b/idea/testData/debugger/tinyApp/outs/initializer.out index 5619714d942..9bc5ae0128c 100644 --- a/idea/testData/debugger/tinyApp/outs/initializer.out +++ b/idea/testData/debugger/tinyApp/outs/initializer.out @@ -8,4 +8,3 @@ initializer.kt:18 Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket' Process finished with exit code 0 -1 diff --git a/idea/testData/debugger/tinyApp/outs/inlineFunctionBreakpointVariants.out b/idea/testData/debugger/tinyApp/outs/inlineFunctionBreakpointVariants.out new file mode 100644 index 00000000000..766451c1f76 --- /dev/null +++ b/idea/testData/debugger/tinyApp/outs/inlineFunctionBreakpointVariants.out @@ -0,0 +1,8 @@ +LineBreakpoint created at inlineFunctionBreakpointVariants.kt:8 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! inlineFunctionBreakpointVariants.InlineFunctionBreakpointVariantsKt +Connected to the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket' +inlineFunctionBreakpointVariants.kt:8 +inlineFunctionBreakpointVariants.kt:8 +Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket' + +Process finished with exit code 0 diff --git a/idea/testData/debugger/tinyApp/src/evaluate/multipleBreakpoints/initializer.kt b/idea/testData/debugger/tinyApp/src/evaluate/multipleBreakpoints/initializer.kt index 9c083745d0f..7e4fa1132ae 100644 --- a/idea/testData/debugger/tinyApp/src/evaluate/multipleBreakpoints/initializer.kt +++ b/idea/testData/debugger/tinyApp/src/evaluate/multipleBreakpoints/initializer.kt @@ -15,6 +15,6 @@ class A(val prop: Int) { // EXPRESSION: it // RESULT: Unresolved reference: it //Breakpoint! (lambdaOrdinal = -1) - list.forEach { println(it) } + list.map { it * 2 } } } diff --git a/idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/inlineFunctionBreakpointVariants.kt b/idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/inlineFunctionBreakpointVariants.kt new file mode 100644 index 00000000000..9db5b461e58 --- /dev/null +++ b/idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/inlineFunctionBreakpointVariants.kt @@ -0,0 +1,17 @@ +package inlineFunctionBreakpointVariants + +import inlineFunctionOtherPackage.* + +fun main(args: Array) { + // Breakpoint is outside of function literal, but we stop at it twice: before and after foo1 invocation + //Breakpoint! (lambdaOrdinal = -1) + foo1 { foo2() } +} + +inline fun foo1(f: () -> Unit) { + f() +} + +inline fun foo2() = 1 + +// RESUME: 1 \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java index 79a3816e2ad..30b2b5c5d60 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java @@ -169,6 +169,12 @@ public class KotlinEvaluateExpressionTestGenerated extends AbstractKotlinEvaluat doSingleBreakpointTest(fileName); } + @TestMetadata("inlineFunctionBreakpointVariants.kt") + public void testInlineFunctionBreakpointVariants() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/inlineFunctionBreakpointVariants.kt"); + doSingleBreakpointTest(fileName); + } + @TestMetadata("innerClass.kt") public void testInnerClass() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/innerClass.kt");