diff --git a/compiler/testData/codegen/box/arrays/kt7288.kt b/compiler/testData/codegen/box/arrays/kt7288.kt new file mode 100644 index 00000000000..12cd2e6c591 --- /dev/null +++ b/compiler/testData/codegen/box/arrays/kt7288.kt @@ -0,0 +1,29 @@ +fun test(b: Boolean): String { + val a = if (b) IntArray(5) else LongArray(5) + if (a is IntArray) { + val x = a.iterator() + var i = 0 + while (x.hasNext()) { + if (a[i] != x.next()) return "Fail $i" + i++ + } + return "OK" + } else if (a is LongArray) { + val x = a.iterator() + var i = 0 + while (x.hasNext()) { + if (a[i] != x.next()) return "Fail $i" + i++ + } + return "OK" + } + return "fail" +} + +fun box(): String { + if (test(true) != "OK") return "fail 1: ${test(true)}" + + if (test(false) != "OK") return "fail 1: ${test(false)}" + + return "OK" +} \ No newline at end of file diff --git a/compiler/testData/codegen/box/intrinsics/infixCall.kt b/compiler/testData/codegen/box/intrinsics/infixCall.kt new file mode 100644 index 00000000000..275d18756c9 --- /dev/null +++ b/compiler/testData/codegen/box/intrinsics/infixCall.kt @@ -0,0 +1,8 @@ +fun box(): String { + val o = "OK" charAt 0 + val array = CharArray(2) + array[1] = 'K' + val k = array get 1 + + return "$o$k" +} \ No newline at end of file diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java index 5e8f510f727..ecb99aabb96 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java @@ -223,6 +223,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { doTest(fileName); } + @TestMetadata("kt7288.kt") + public void testKt7288() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/arrays/kt7288.kt"); + doTest(fileName); + } + @TestMetadata("kt779.kt") public void testKt779() throws Exception { String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/arrays/kt779.kt"); @@ -4348,6 +4354,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { doTest(fileName); } + @TestMetadata("infixCall.kt") + public void testInfixCall() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/intrinsics/infixCall.kt"); + doTest(fileName); + } + @TestMetadata("longRangeWithExplicitDot.kt") public void testLongRangeWithExplicitDot() throws Exception { String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/intrinsics/longRangeWithExplicitDot.kt"); diff --git a/idea/testData/debugger/tinyApp/outs/kt7046localVarInInline.out b/idea/testData/debugger/tinyApp/outs/kt7046localVarInInline.out new file mode 100644 index 00000000000..92475f3622c --- /dev/null +++ b/idea/testData/debugger/tinyApp/outs/kt7046localVarInInline.out @@ -0,0 +1,8 @@ +LineBreakpoint created at kt7046localVarInInline.kt:12 +!JDK_HOME!\bin\java -agentlib:jdwp=transport=dt_socket,address=!HOST_NAME!:!HOST_PORT!,suspend=y,server=n -Dfile.encoding=!FILE_ENCODING! -classpath !APP_PATH!\classes;!KOTLIN_RUNTIME!;!CUSTOM_LIBRARY!;!RT_JAR! kt7046localVarInInline.Kt7046localVarInInlinePackage +Connected to the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket' +kt7046localVarInInline.kt:12 +Compile bytecode for a*b +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/singleBreakpoint/kt7046localVarInInline.kt b/idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/kt7046localVarInInline.kt new file mode 100644 index 00000000000..bb1bb341eac --- /dev/null +++ b/idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/kt7046localVarInInline.kt @@ -0,0 +1,16 @@ +package kt7046localVarInInline + +fun main(args: Array) { + a(321) { + it + } +} + +inline fun a(a: Int, cb: (Int) -> Unit) { + val b = 123 + //Breakpoint! + cb(a*b) +} + +// EXPRESSION: a*b +// RESULT: 39483: I \ 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 e23dc6ce265..2bb8bb685db 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/KotlinEvaluateExpressionTestGenerated.java @@ -175,6 +175,12 @@ public class KotlinEvaluateExpressionTestGenerated extends AbstractKotlinEvaluat doSingleBreakpointTest(fileName); } + @TestMetadata("kt7046localVarInInline.kt") + public void testKt7046localVarInInline() throws Exception { + String fileName = JetTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/kt7046localVarInInline.kt"); + doSingleBreakpointTest(fileName); + } + @TestMetadata("localVariables.kt") public void testLocalVariables() throws Exception { String fileName = JetTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/evaluate/singleBreakpoint/localVariables.kt");