From 05ed134fbb896f67defffa06d99bcf6e18828701 Mon Sep 17 00:00:00 2001 From: Artem Kobzar Date: Tue, 15 Aug 2023 17:03:11 +0000 Subject: [PATCH] [K/Wasm] Introduce stepping tests for Wasm --- .../jetbrains/kotlin/backend/wasm/compiler.kt | 2 +- .../debug/stepping/IfTrueThenFalse.kt | 15 +- .../debug/stepping/anonymousFunction.kt | 21 +- .../debug/stepping/anonymousFunctionDirect.kt | 17 +- compiler/testData/debug/stepping/assertion.kt | 29 +- .../debug/stepping/beforeGotoToWhileStart.kt | 37 +- .../debug/stepping/callWithCallInArguments.kt | 51 +- .../debug/stepping/callWithReceiver.kt | 25 +- .../debug/stepping/callableReference.kt | 27 +- compiler/testData/debug/stepping/chainCall.kt | 29 +- compiler/testData/debug/stepping/class.kt | 31 +- .../testData/debug/stepping/classObject.kt | 45 +- .../debug/stepping/commentBeforeClass.kt | 11 +- .../commentBeforeCompanionProperty.kt | 17 +- .../commentBeforeFunctionWithDefault.kt | 9 +- compiler/testData/debug/stepping/comments.kt | 25 +- .../debug/stepping/compileTimeConstant.kt | 9 +- .../testData/debug/stepping/conjunction.kt | 31 +- .../debug/stepping/constantConditions.kt | 21 +- .../debug/stepping/constructorCall.kt | 51 +- .../testData/debug/stepping/constructors.kt | 173 ++--- compiler/testData/debug/stepping/continue.kt | 61 +- compiler/testData/debug/stepping/dataClass.kt | 117 ++-- .../debug/stepping/defaultParameter.kt | 29 +- .../testData/debug/stepping/delegation.kt | 31 +- compiler/testData/debug/stepping/enum.kt | 55 +- compiler/testData/debug/stepping/for.kt | 41 +- .../debug/stepping/functionCallWithDefault.kt | 19 +- .../functionCallWithInlinedLambdaParam.kt | 27 +- .../stepping/functionCallWithLambdaParam.kt | 35 +- .../debug/stepping/functionInAnotherFile.kt | 39 +- compiler/testData/debug/stepping/if.kt | 21 +- compiler/testData/debug/stepping/if2.kt | 31 +- compiler/testData/debug/stepping/ifThen.kt | 23 +- .../testData/debug/stepping/ifThenElse.kt | 51 +- .../debug/stepping/ifThenElseFalse.kt | 43 +- .../debug/stepping/ifWithInlineInCondition.kt | 61 +- .../testData/debug/stepping/iincStepping.kt | 27 +- .../testData/debug/stepping/implicitThis.kt | 69 +- .../debug/stepping/implicitThisOnInvoke.kt | 45 +- .../inTheEndOfLambdaArgumentOfInlineCall.kt | 35 +- .../testData/debug/stepping/initBlocks.kt | 93 +-- .../debug/stepping/initBlocksCompanion.kt | 45 +- .../debug/stepping/inlineCallableReference.kt | 27 +- .../stepping/inlineNamedCallableReference.kt | 17 +- .../debug/stepping/inlineSimpleCall.kt | 29 +- compiler/testData/debug/stepping/kt15259.kt | 21 +- compiler/testData/debug/stepping/kt29179.kt | 25 +- compiler/testData/debug/stepping/kt42208.kt | 23 +- compiler/testData/debug/stepping/kt42208b.kt | 21 +- compiler/testData/debug/stepping/kt42208c.kt | 55 +- .../debug/stepping/lambdaStepInline.kt | 17 +- .../stepping/lambdaStepInlineWithDefaults.kt | 21 +- .../debug/stepping/lineNumberAfterInline.kt | 35 +- .../linenumberForOneParametersArgumentCall.kt | 15 +- .../testData/debug/stepping/localFunction.kt | 27 +- .../localFunctionWIthOnelineExpressionBody.kt | 23 +- .../testData/debug/stepping/localProperty.kt | 15 +- .../testData/debug/stepping/multiModule.kt | 17 +- .../debug/stepping/multilineExpression.kt | 23 +- .../debug/stepping/multilineFunctionCall.kt | 13 +- .../debug/stepping/multilineInfixCall.kt | 13 +- .../debug/stepping/namedCallableReference.kt | 31 +- .../testData/debug/stepping/nestedInline.kt | 41 +- .../noLinenumberInInvokeOfSuspendLambda.kt | 35 +- .../noParametersArgumentCallInExpression.kt | 13 +- compiler/testData/debug/stepping/nullcheck.kt | 59 +- .../debug/stepping/overridenGetterSetter.kt | 73 +- .../debug/stepping/primitiveNullChecks.kt | 7 +- .../debug/stepping/propertyAccessor.kt | 21 +- compiler/testData/debug/stepping/psvm.kt | 13 +- compiler/testData/debug/stepping/recursion.kt | 39 +- .../debug/stepping/simpleDefaultArg.kt | 13 +- .../stepping/simpleDefaultArgWithInline.kt | 17 +- .../debug/stepping/simpleInlineDefaultArg.kt | 17 +- .../testData/debug/stepping/simpleSmap.kt | 11 +- .../debug/stepping/smapInlineAsArgument.kt | 41 +- .../stepping/smapInlineAsInfixArgument.kt | 43 +- .../stepping/smapInlineAsInlineArgument.kt | 33 +- .../stepping/smapInlineInIntrinsicArgument.kt | 33 +- .../testData/debug/stepping/stringSwitches.kt | 125 ++-- .../debug/stepping/stringSwitchesSmall.kt | 103 +-- .../stepping/suspendFunWithLambdaParameter.kt | 23 +- .../suspendFunWithSuspendLambdaParameter.kt | 23 +- .../testData/debug/stepping/throwException.kt | 23 +- compiler/testData/debug/stepping/topLevel.kt | 13 +- compiler/testData/debug/stepping/trait.kt | 57 +- compiler/testData/debug/stepping/tryCatch.kt | 31 +- .../debug/stepping/tryCatchExpression.kt | 187 ++--- .../debug/stepping/tryCatchFinally.kt | 143 ++-- .../testData/debug/stepping/tryFinally.kt | 79 +-- .../stepping/variablesWithoutInitializer.kt | 9 +- .../debug/stepping/voidLambdaStepInline.kt | 11 +- compiler/testData/debug/stepping/when.kt | 265 +++---- .../debug/stepping/whenComplicatedSubject.kt | 49 +- .../testData/debug/stepping/whenConstant.kt | 15 +- compiler/testData/debug/stepping/whenExpr.kt | 13 +- .../testData/debug/stepping/whenIsChecks.kt | 33 +- .../testData/debug/stepping/whenMultiLine.kt | 99 +-- .../debug/stepping/whenMultiLineSubject.kt | 67 +- .../debug/stepping/whenNullalbeSubject.kt | 13 +- .../testData/debug/stepping/whenSubject.kt | 177 ++--- .../testData/debug/stepping/whenSubject2.kt | 261 +++---- .../stepping/whenWithInlineInCondition.kt | 69 +- compiler/testData/debug/stepping/while.kt | 33 +- .../WasmEnvironmentConfigurationDirectives.kt | 5 + .../kotlin/js/parser/sourcemaps/SourceMap.kt | 17 + .../js/parser/sourcemaps/SourceMapParser.kt | 2 +- .../kotlin/js/test/handlers/JsDebugRunner.kt | 18 - .../generators/tests/GenerateWasmTests.kt | 8 + .../kotlin/wasm/test/AbstractFirWasmTest.kt | 17 + .../kotlin/wasm/test/AbstractK1WasmTest.kt | 20 + .../AbstractWasmBlackBoxCodegenTestBase.kt | 35 +- .../wasm/test/converters/WasmBackendFacade.kt | 4 + .../AbstractWasmArtifactsCollector.kt | 98 ++- .../wasm/test/handlers/WasmBoxRunner.kt | 82 +-- .../wasm/test/handlers/WasmDebugRunner.kt | 169 +++++ .../kotlin/wasm/test/tools/WasmVM.kt | 57 +- .../test/FirWasmSteppingTestGenerated.java | 645 ++++++++++++++++++ .../test/K1WasmSteppingTestGenerated.java | 645 ++++++++++++++++++ 120 files changed, 4035 insertions(+), 2359 deletions(-) create mode 100644 wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmDebugRunner.kt create mode 100644 wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmSteppingTestGenerated.java create mode 100644 wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmSteppingTestGenerated.java diff --git a/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt b/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt index 7df3644525f..a43ffdbaedc 100644 --- a/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt +++ b/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt @@ -179,7 +179,7 @@ private fun generateSourceMap( prev = location location.apply { - // TODO resulting path goes too deep since temporary directory we compiled first is deeper than final destination. + // TODO resulting path goes too deep since temporary directory we compiled first is deeper than final destination. val relativePath = pathResolver.getPathRelativeToSourceRoots(File(file)).substring(3) sourceMapBuilder.addMapping(relativePath, null, { null }, line, column, null, mapping.offset) } diff --git a/compiler/testData/debug/stepping/IfTrueThenFalse.kt b/compiler/testData/debug/stepping/IfTrueThenFalse.kt index f9338902b40..7e2fd1dac37 100644 --- a/compiler/testData/debug/stepping/IfTrueThenFalse.kt +++ b/compiler/testData/debug/stepping/IfTrueThenFalse.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun cond() = false @@ -9,13 +10,13 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:2 cond -// test.kt:5 box -// test.kt:8 box +// test.kt:6 box +// test.kt:3 cond +// test.kt:6 box // test.kt:9 box +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:5 box -// test.kt:2 cond -// test.kt:9 box \ No newline at end of file +// test.kt:6 box +// test.kt:3 cond +// test.kt:10 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/anonymousFunction.kt b/compiler/testData/debug/stepping/anonymousFunction.kt index 71ce20c24d3..96b28a985fd 100644 --- a/compiler/testData/debug/stepping/anonymousFunction.kt +++ b/compiler/testData/debug/stepping/anonymousFunction.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun eval(f: () -> T) = f() @@ -9,15 +10,15 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:6 box -// test.kt:3 eval -// test.kt:7 invoke -// test.kt:3 eval -// test.kt:6 box -// test.kt:9 box +// test.kt:7 box +// test.kt:4 eval +// test.kt:8 invoke +// test.kt:4 eval +// test.kt:7 box +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:6 box -// test.kt:3 eval -// test.kt:7 box$lambda -// test.kt:9 box \ No newline at end of file +// test.kt:7 box +// test.kt:4 eval +// test.kt:8 box$lambda +// test.kt:10 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/anonymousFunctionDirect.kt b/compiler/testData/debug/stepping/anonymousFunctionDirect.kt index 582ec9cc66a..f06479d0b50 100644 --- a/compiler/testData/debug/stepping/anonymousFunctionDirect.kt +++ b/compiler/testData/debug/stepping/anonymousFunctionDirect.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -7,15 +8,15 @@ fun box() { } // EXPECTATIONS JVM_IR -// test.kt:5 box +// test.kt:6 box // EXPECTATIONS JVM -// test.kt:4 box -// test.kt:5 invoke -// test.kt:4 box +// test.kt:5 box +// test.kt:6 invoke +// test.kt:5 box // EXPECTATIONS JVM JVM_IR -// test.kt:7 box +// test.kt:8 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:5 box$lambda -// test.kt:7 box \ No newline at end of file +// test.kt:5 box +// test.kt:6 box$lambda +// test.kt:8 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/assertion.kt b/compiler/testData/debug/stepping/assertion.kt index c4d1072fede..2888a4353b2 100644 --- a/compiler/testData/debug/stepping/assertion.kt +++ b/compiler/testData/debug/stepping/assertion.kt @@ -1,4 +1,5 @@ // IGNORE_INLINER: IR +// IGNORE_BACKEND: WASM // FILE: test.kt public val MASSERTIONS_ENABLED: Boolean = true @@ -31,23 +32,23 @@ fun box(): String { } // EXPECTATIONS JVM JVM_IR -// test.kt:25 box -// test.kt:16 box -// test.kt:17 box -// test.kt:4 getMASSERTIONS_ENABLED +// test.kt:26 box // test.kt:17 box // test.kt:18 box -// test.kt:22 box -// test.kt:26 box -// test.kt:7 box -// test.kt:4 getMASSERTIONS_ENABLED -// test.kt:7 box +// test.kt:5 getMASSERTIONS_ENABLED +// test.kt:18 box +// test.kt:19 box +// test.kt:23 box +// test.kt:27 box // test.kt:8 box -// test.kt:13 box -// test.kt:30 box +// test.kt:5 getMASSERTIONS_ENABLED +// test.kt:8 box +// test.kt:9 box +// test.kt:14 box +// test.kt:31 box // EXPECTATIONS JS_IR -// test.kt:16 box // test.kt:17 box -// test.kt:7 box -// test.kt:30 box +// test.kt:18 box +// test.kt:8 box +// test.kt:31 box diff --git a/compiler/testData/debug/stepping/beforeGotoToWhileStart.kt b/compiler/testData/debug/stepping/beforeGotoToWhileStart.kt index 5ee565b7cff..76ac2d06115 100644 --- a/compiler/testData/debug/stepping/beforeGotoToWhileStart.kt +++ b/compiler/testData/debug/stepping/beforeGotoToWhileStart.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt var current = true @@ -20,26 +21,26 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:19 box -// test.kt:11 foo -// test.kt:12 foo -// test.kt:6 alternate -// test.kt:7 alternate -// test.kt:12 foo -// test.kt:11 foo -// test.kt:12 foo -// test.kt:6 alternate -// test.kt:7 alternate +// test.kt:20 box // test.kt:12 foo // test.kt:13 foo -// test.kt:16 foo -// test.kt:20 box +// test.kt:7 alternate +// test.kt:8 alternate +// test.kt:13 foo +// test.kt:12 foo +// test.kt:13 foo +// test.kt:7 alternate +// test.kt:8 alternate +// test.kt:13 foo +// test.kt:14 foo +// test.kt:17 foo +// test.kt:21 box // EXPECTATIONS JS_IR -// test.kt:19 box -// test.kt:6 alternate -// test.kt:7 alternate -// test.kt:6 alternate -// test.kt:7 alternate -// test.kt:16 foo // test.kt:20 box +// test.kt:7 alternate +// test.kt:8 alternate +// test.kt:7 alternate +// test.kt:8 alternate +// test.kt:17 foo +// test.kt:21 box diff --git a/compiler/testData/debug/stepping/callWithCallInArguments.kt b/compiler/testData/debug/stepping/callWithCallInArguments.kt index 77106d9268d..5c5a7a41e43 100644 --- a/compiler/testData/debug/stepping/callWithCallInArguments.kt +++ b/compiler/testData/debug/stepping/callWithCallInArguments.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A @@ -14,34 +15,34 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:8 box -// test.kt:3 -// test.kt:8 box +// test.kt:9 box +// test.kt:4 +// test.kt:9 box +// test.kt:12 box +// test.kt:6 bar +// test.kt:4 +// test.kt:6 bar // test.kt:11 box -// test.kt:5 bar -// test.kt:3 -// test.kt:5 bar +// test.kt:6 bar +// test.kt:4 +// test.kt:6 bar // test.kt:10 box -// test.kt:5 bar -// test.kt:3 -// test.kt:5 bar -// test.kt:9 box -// test.kt:5 bar -// test.kt:3 -// test.kt:5 bar -// test.kt:9 box -// test.kt:14 box +// test.kt:6 bar +// test.kt:4 +// test.kt:6 bar +// test.kt:10 box +// test.kt:15 box // EXPECTATIONS JS_IR -// test.kt:8 box -// test.kt:3 // test.kt:9 box -// test.kt:5 bar -// test.kt:3 +// test.kt:4 // test.kt:10 box -// test.kt:5 bar -// test.kt:3 -// test.kt:9 box -// test.kt:5 bar -// test.kt:3 -// test.kt:14 box \ No newline at end of file +// test.kt:6 bar +// test.kt:4 +// test.kt:11 box +// test.kt:6 bar +// test.kt:4 +// test.kt:10 box +// test.kt:6 bar +// test.kt:4 +// test.kt:15 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/callWithReceiver.kt b/compiler/testData/debug/stepping/callWithReceiver.kt index 0916e46b7e9..c25a212331e 100644 --- a/compiler/testData/debug/stepping/callWithReceiver.kt +++ b/compiler/testData/debug/stepping/callWithReceiver.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A { @@ -15,21 +16,21 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:9 box -// test.kt:3 -// test.kt:9 box +// test.kt:10 box +// test.kt:4 // test.kt:10 box // test.kt:11 box -// test.kt:4 foo -// test.kt:11 box -// test.kt:13 box +// test.kt:12 box +// test.kt:5 foo +// test.kt:12 box // test.kt:14 box -// test.kt:5 box // test.kt:15 box +// test.kt:6 box +// test.kt:16 box // EXPECTATIONS JS_IR -// test.kt:9 box -// test.kt:3 -// test.kt:11 box -// test.kt:4 foo -// test.kt:15 box +// test.kt:10 box +// test.kt:4 +// test.kt:12 box +// test.kt:5 foo +// test.kt:16 box diff --git a/compiler/testData/debug/stepping/callableReference.kt b/compiler/testData/debug/stepping/callableReference.kt index 6d8ae75678b..5b25bd9a73f 100644 --- a/compiler/testData/debug/stepping/callableReference.kt +++ b/compiler/testData/debug/stepping/callableReference.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { var x = false @@ -11,22 +12,22 @@ fun f(block: () -> Unit) { } // EXPECTATIONS JVM JVM_IR -// test.kt:3 box // test.kt:4 box -// test.kt:10 f -// test.kt:5 invoke -// test.kt:6 invoke -// test.kt:10 f +// test.kt:5 box // test.kt:11 f -// test.kt:7 box +// test.kt:6 invoke +// test.kt:7 invoke +// test.kt:11 f +// test.kt:12 f +// test.kt:8 box // EXPECTATIONS JS_IR -// test.kt:3 box // test.kt:4 box -// test.kt:4 box$lambda -// test.kt:4 box -// test.kt:10 f -// test.kt:5 box$lambda$lambda -// test.kt:6 box$lambda$lambda +// test.kt:5 box +// test.kt:5 box$lambda +// test.kt:5 box // test.kt:11 f -// test.kt:7 box +// test.kt:6 box$lambda$lambda +// test.kt:7 box$lambda$lambda +// test.kt:12 f +// test.kt:8 box diff --git a/compiler/testData/debug/stepping/chainCall.kt b/compiler/testData/debug/stepping/chainCall.kt index c0d643dcb4f..b416744f25a 100644 --- a/compiler/testData/debug/stepping/chainCall.kt +++ b/compiler/testData/debug/stepping/chainCall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A { @@ -15,25 +16,25 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:9 box -// test.kt:3 -// test.kt:9 box // test.kt:10 box -// test.kt:4 foo +// test.kt:4 +// test.kt:10 box // test.kt:11 box -// test.kt:4 foo -// test.kt:11 box -// test.kt:13 box -// test.kt:5 box +// test.kt:5 foo +// test.kt:12 box +// test.kt:5 foo +// test.kt:12 box // test.kt:14 box -// test.kt:5 box +// test.kt:6 box // test.kt:15 box +// test.kt:6 box +// test.kt:16 box // EXPECTATIONS JS_IR -// test.kt:9 box -// test.kt:3 // test.kt:10 box -// test.kt:4 foo +// test.kt:4 // test.kt:11 box -// test.kt:4 foo -// test.kt:15 box +// test.kt:5 foo +// test.kt:12 box +// test.kt:5 foo +// test.kt:16 box diff --git a/compiler/testData/debug/stepping/class.kt b/compiler/testData/debug/stepping/class.kt index 9b272ba52ec..d58b962bce9 100644 --- a/compiler/testData/debug/stepping/class.kt +++ b/compiler/testData/debug/stepping/class.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A { @@ -19,25 +20,25 @@ fun box() { // value of prop. // EXPECTATIONS JVM JVM_IR -// test.kt:12 box -// test.kt:3 -// test.kt:4 -// EXPECTATIONS JVM_IR -// test.kt:3 -// EXPECTATIONS JVM JVM_IR -// test.kt:12 box // test.kt:13 box -// test.kt:4 getProp +// test.kt:4 +// test.kt:5 +// EXPECTATIONS JVM_IR +// test.kt:4 +// EXPECTATIONS JVM JVM_IR // test.kt:13 box // test.kt:14 box -// test.kt:7 foo -// test.kt:8 foo +// test.kt:5 getProp +// test.kt:14 box // test.kt:15 box +// test.kt:8 foo +// test.kt:9 foo +// test.kt:16 box // EXPECTATIONS JS_IR -// test.kt:12 box +// test.kt:13 box +// test.kt:5 // test.kt:4 -// test.kt:3 -// test.kt:14 box -// test.kt:8 foo -// test.kt:15 box \ No newline at end of file +// test.kt:15 box +// test.kt:9 foo +// test.kt:16 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/classObject.kt b/compiler/testData/debug/stepping/classObject.kt index ad3b7b0dcc5..e4f0c432e76 100644 --- a/compiler/testData/debug/stepping/classObject.kt +++ b/compiler/testData/debug/stepping/classObject.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A { @@ -17,34 +18,34 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:14 box -// test.kt:5 -// test.kt:6 -// test.kt:5 getProp0 -// test.kt:5 getProp0 -// test.kt:14 box // test.kt:15 box -// test.kt:6 getProp1 -// test.kt:6 getProp1 +// test.kt:6 +// test.kt:7 +// test.kt:6 getProp0 +// test.kt:6 getProp0 // test.kt:15 box // test.kt:16 box -// test.kt:8 foo -// test.kt:5 getProp0 -// test.kt:5 getProp0 -// test.kt:8 foo -// test.kt:6 getProp1 -// test.kt:6 getProp1 -// test.kt:8 foo +// test.kt:7 getProp1 +// test.kt:7 getProp1 // test.kt:16 box // test.kt:17 box +// test.kt:9 foo +// test.kt:6 getProp0 +// test.kt:6 getProp0 +// test.kt:9 foo +// test.kt:7 getProp1 +// test.kt:7 getProp1 +// test.kt:9 foo +// test.kt:17 box +// test.kt:18 box // EXPECTATIONS JS_IR -// test.kt:14 box -// test.kt:5 -// test.kt:6 -// test.kt:4 // test.kt:15 box +// test.kt:6 +// test.kt:7 +// test.kt:5 // test.kt:16 box -// test.kt:16 box -// test.kt:8 foo -// test.kt:17 box \ No newline at end of file +// test.kt:17 box +// test.kt:17 box +// test.kt:9 foo +// test.kt:18 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/commentBeforeClass.kt b/compiler/testData/debug/stepping/commentBeforeClass.kt index 7529e6800c7..55b0877df31 100644 --- a/compiler/testData/debug/stepping/commentBeforeClass.kt +++ b/compiler/testData/debug/stepping/commentBeforeClass.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -10,12 +11,12 @@ class A { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:8 -// test.kt:4 box // test.kt:5 box +// test.kt:9 +// test.kt:5 box +// test.kt:6 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:8 // test.kt:5 box +// test.kt:9 +// test.kt:6 box diff --git a/compiler/testData/debug/stepping/commentBeforeCompanionProperty.kt b/compiler/testData/debug/stepping/commentBeforeCompanionProperty.kt index 5e5df549925..f4332fbd7dc 100644 --- a/compiler/testData/debug/stepping/commentBeforeCompanionProperty.kt +++ b/compiler/testData/debug/stepping/commentBeforeCompanionProperty.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class AWithCompanion { @@ -12,15 +13,15 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:11 box -// test.kt:6 -// test.kt:6 getCompPropVal -// test.kt:6 getCompPropVal -// test.kt:11 box // test.kt:12 box +// test.kt:7 +// test.kt:7 getCompPropVal +// test.kt:7 getCompPropVal +// test.kt:12 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:11 box -// test.kt:6 -// test.kt:4 // test.kt:12 box +// test.kt:7 +// test.kt:5 +// test.kt:13 box diff --git a/compiler/testData/debug/stepping/commentBeforeFunctionWithDefault.kt b/compiler/testData/debug/stepping/commentBeforeFunctionWithDefault.kt index 781b3f99ae3..039acf5e819 100644 --- a/compiler/testData/debug/stepping/commentBeforeFunctionWithDefault.kt +++ b/compiler/testData/debug/stepping/commentBeforeFunctionWithDefault.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt // Comment before @@ -10,11 +11,11 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:9 box -// test.kt:5 foo -// test.kt:9 box // test.kt:10 box +// test.kt:6 foo +// test.kt:10 box +// test.kt:11 box // EXPECTATIONS JS_IR -// test.kt:9 box // test.kt:10 box +// test.kt:11 box diff --git a/compiler/testData/debug/stepping/comments.kt b/compiler/testData/debug/stepping/comments.kt index 1fc18c4e101..44ed08aea65 100644 --- a/compiler/testData/debug/stepping/comments.kt +++ b/compiler/testData/debug/stepping/comments.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt // Single line comment @@ -32,23 +33,23 @@ class A { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:15 -// test.kt:5 box -// test.kt:24 foo // test.kt:6 box -// test.kt:15 +// test.kt:16 // test.kt:6 box -// test.kt:31 bar +// test.kt:25 foo // test.kt:7 box +// test.kt:16 +// test.kt:7 box +// test.kt:32 bar +// test.kt:8 box // EXPECTATIONS JS_IR -// test.kt:5 box -// test.kt:15 -// test.kt:5 box -// test.kt:24 foo // test.kt:6 box -// test.kt:15 +// test.kt:16 // test.kt:6 box -// test.kt:31 bar +// test.kt:25 foo // test.kt:7 box +// test.kt:16 +// test.kt:7 box +// test.kt:32 bar +// test.kt:8 box diff --git a/compiler/testData/debug/stepping/compileTimeConstant.kt b/compiler/testData/debug/stepping/compileTimeConstant.kt index bc3127c4314..abef3d311ff 100644 --- a/compiler/testData/debug/stepping/compileTimeConstant.kt +++ b/compiler/testData/debug/stepping/compileTimeConstant.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -6,10 +7,10 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:4 box // test.kt:6 box +// test.kt:5 box +// test.kt:7 box // EXPECTATIONS JS_IR -// test.kt:5 box -// test.kt:6 box \ No newline at end of file +// test.kt:6 box +// test.kt:7 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/conjunction.kt b/compiler/testData/debug/stepping/conjunction.kt index 2d8a9e724fa..dc68240f5a7 100644 --- a/compiler/testData/debug/stepping/conjunction.kt +++ b/compiler/testData/debug/stepping/conjunction.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { val k = if (getA() @@ -19,26 +20,26 @@ fun getC() = false fun getD() = true // EXPECTATIONS JVM JVM_IR -// test.kt:3 box -// test.kt:13 getA -// test.kt:3 box // test.kt:4 box -// test.kt:15 getB +// test.kt:14 getA // test.kt:4 box // test.kt:5 box -// test.kt:17 getC +// test.kt:16 getB // test.kt:5 box -// test.kt:9 box -// test.kt:3 box -// test.kt:11 box +// test.kt:6 box +// test.kt:18 getC +// test.kt:6 box +// test.kt:10 box +// test.kt:4 box +// test.kt:12 box // EXPECTATIONS JS_IR -// test.kt:3 box -// test.kt:13 getA // test.kt:4 box -// test.kt:15 getB +// test.kt:14 getA // test.kt:5 box -// test.kt:17 getC -// test.kt:9 box -// test.kt:3 box -// test.kt:11 box +// test.kt:16 getB +// test.kt:6 box +// test.kt:18 getC +// test.kt:10 box +// test.kt:4 box +// test.kt:12 box diff --git a/compiler/testData/debug/stepping/constantConditions.kt b/compiler/testData/debug/stepping/constantConditions.kt index d3e67ce813e..b738c6821cf 100644 --- a/compiler/testData/debug/stepping/constantConditions.kt +++ b/compiler/testData/debug/stepping/constantConditions.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt // KT-22488 @@ -15,16 +16,16 @@ fun test(): Long { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// EXPECTATIONS JVM_IR -// test.kt:9 test -// EXPECTATIONS JVM JVM_IR -// test.kt:10 test -// test.kt:11 test -// test.kt:5 box // test.kt:6 box +// EXPECTATIONS JVM_IR +// test.kt:10 test +// EXPECTATIONS JVM JVM_IR +// test.kt:11 test +// test.kt:12 test +// test.kt:6 box +// test.kt:7 box // EXPECTATIONS JS_IR -// test.kt:5 box -// test.kt:11 test -// test.kt:6 box \ No newline at end of file +// test.kt:6 box +// test.kt:12 test +// test.kt:7 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/constructorCall.kt b/compiler/testData/debug/stepping/constructorCall.kt index ee0cc93ba56..13d9ed04dc3 100644 --- a/compiler/testData/debug/stepping/constructorCall.kt +++ b/compiler/testData/debug/stepping/constructorCall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A(val x: Int) @@ -14,35 +15,35 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:6 box -// test.kt:3 -// test.kt:6 box +// test.kt:7 box +// test.kt:4 // test.kt:7 box // test.kt:8 box -// test.kt:7 box -// test.kt:3 -// test.kt:7 box -// test.kt:10 box -// test.kt:3 -// test.kt:10 box -// test.kt:12 box +// test.kt:9 box +// test.kt:8 box +// test.kt:4 +// test.kt:8 box +// test.kt:11 box +// test.kt:4 +// test.kt:11 box // test.kt:13 box -// test.kt:12 box -// test.kt:3 -// test.kt:12 box // test.kt:14 box +// test.kt:13 box +// test.kt:4 +// test.kt:13 box +// test.kt:15 box // EXPECTATIONS JS_IR -// test.kt:6 box -// test.kt:3 -// test.kt:3 // test.kt:7 box -// test.kt:3 -// test.kt:3 -// test.kt:10 box -// test.kt:3 -// test.kt:3 -// test.kt:12 box -// test.kt:3 -// test.kt:3 -// test.kt:14 box \ No newline at end of file +// test.kt:4 +// test.kt:4 +// test.kt:8 box +// test.kt:4 +// test.kt:4 +// test.kt:11 box +// test.kt:4 +// test.kt:4 +// test.kt:13 box +// test.kt:4 +// test.kt:4 +// test.kt:15 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/constructors.kt b/compiler/testData/debug/stepping/constructors.kt index b0fa4ac4f05..711e2649ee2 100644 --- a/compiler/testData/debug/stepping/constructors.kt +++ b/compiler/testData/debug/stepping/constructors.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -85,151 +86,151 @@ class O(i: T) { // step on and sometimes there is no step on the end brace. // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:19 -// test.kt:4 box // test.kt:5 box // test.kt:20 // test.kt:5 box // test.kt:6 box -// test.kt:22 +// test.kt:21 // test.kt:6 box // test.kt:7 box -// test.kt:25 +// test.kt:23 // test.kt:7 box // test.kt:8 box -// EXPECTATIONS JVM_IR -// test.kt:28 -// EXPECTATIONS JVM JVM_IR -// test.kt:29 -// EXPECTATIONS JVM_IR -// test.kt:30 -// EXPECTATIONS JVM JVM_IR +// test.kt:26 // test.kt:8 box // test.kt:9 box // EXPECTATIONS JVM_IR -// test.kt:33 +// test.kt:29 // EXPECTATIONS JVM JVM_IR -// test.kt:34 +// test.kt:30 // EXPECTATIONS JVM_IR -// test.kt:35 +// test.kt:31 // EXPECTATIONS JVM JVM_IR // test.kt:9 box // test.kt:10 box -// test.kt:37 +// EXPECTATIONS JVM_IR +// test.kt:34 +// EXPECTATIONS JVM JVM_IR +// test.kt:35 +// EXPECTATIONS JVM_IR +// test.kt:36 +// EXPECTATIONS JVM JVM_IR +// test.kt:10 box +// test.kt:11 box // test.kt:38 // test.kt:39 // test.kt:40 +// test.kt:41 // EXPECTATIONS JVM_IR -// test.kt:37 +// test.kt:38 // EXPECTATIONS JVM JVM_IR -// test.kt:10 box // test.kt:11 box -// test.kt:42 +// test.kt:12 box // test.kt:43 // test.kt:44 // test.kt:45 +// test.kt:46 // EXPECTATIONS JVM_IR -// test.kt:42 -// EXPECTATIONS JVM JVM_IR -// test.kt:11 box -// test.kt:12 box -// EXPECTATIONS JVM -// test.kt:49 -// EXPECTATIONS JVM_IR -// test.kt:48 -// EXPECTATIONS JVM JVM_IR -// test.kt:52 -// test.kt:53 -// EXPECTATIONS JVM_IR -// test.kt:54 -// EXPECTATIONS JVM JVM_IR -// test.kt:49 -// EXPECTATIONS JVM_IR -// test.kt:50 +// test.kt:43 // EXPECTATIONS JVM JVM_IR // test.kt:12 box // test.kt:13 box -// test.kt:57 -// test.kt:61 +// EXPECTATIONS JVM +// test.kt:50 // EXPECTATIONS JVM_IR -// test.kt:62 +// test.kt:49 // EXPECTATIONS JVM JVM_IR -// test.kt:58 +// test.kt:53 +// test.kt:54 // EXPECTATIONS JVM_IR -// test.kt:59 +// test.kt:55 +// EXPECTATIONS JVM JVM_IR +// test.kt:50 +// EXPECTATIONS JVM_IR +// test.kt:51 // EXPECTATIONS JVM JVM_IR // test.kt:13 box // test.kt:14 box -// test.kt:65 -// test.kt:69 +// test.kt:58 +// test.kt:62 // EXPECTATIONS JVM_IR -// test.kt:70 +// test.kt:63 // EXPECTATIONS JVM JVM_IR -// test.kt:66 +// test.kt:59 // EXPECTATIONS JVM_IR -// test.kt:67 +// test.kt:60 // EXPECTATIONS JVM JVM_IR // test.kt:14 box // test.kt:15 box -// test.kt:72 +// test.kt:66 +// test.kt:70 +// EXPECTATIONS JVM_IR +// test.kt:71 +// EXPECTATIONS JVM JVM_IR +// test.kt:67 +// EXPECTATIONS JVM_IR +// test.kt:68 +// EXPECTATIONS JVM JVM_IR // test.kt:15 box // test.kt:16 box // test.kt:73 -// test.kt:72 -// EXPECTATIONS JVM -// test.kt:73 -// EXPECTATIONS JVM_IR -// test.kt:74 -// EXPECTATIONS JVM JVM_IR // test.kt:16 box // test.kt:17 box +// test.kt:74 +// test.kt:73 +// EXPECTATIONS JVM +// test.kt:74 +// EXPECTATIONS JVM_IR +// test.kt:75 +// EXPECTATIONS JVM JVM_IR +// test.kt:17 box +// test.kt:18 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:19 // test.kt:5 box // test.kt:20 -// test.kt:20 // test.kt:6 box -// test.kt:22 D_init_$Init$ -// test.kt:21 D +// test.kt:21 +// test.kt:21 // test.kt:7 box -// test.kt:25 E_init_$Init$ -// test.kt:24 E +// test.kt:23 D_init_$Init$ +// test.kt:22 D // test.kt:8 box -// test.kt:28 F_init_$Init$ -// test.kt:27 F -// test.kt:29 F_init_$Init$ +// test.kt:26 E_init_$Init$ +// test.kt:25 E // test.kt:9 box -// test.kt:33 G_init_$Init$ -// test.kt:32 G -// test.kt:34 G_init_$Init$ +// test.kt:29 F_init_$Init$ +// test.kt:28 F +// test.kt:30 F_init_$Init$ // test.kt:10 box -// test.kt:39 -// test.kt:37 +// test.kt:34 G_init_$Init$ +// test.kt:33 G +// test.kt:35 G_init_$Init$ // test.kt:11 box -// test.kt:42 -// test.kt:44 -// test.kt:42 +// test.kt:40 +// test.kt:38 // test.kt:12 box -// test.kt:48 L_init_$Init$ -// test.kt:53 L -// test.kt:47 L -// test.kt:49 L_init_$Init$ +// test.kt:43 +// test.kt:45 +// test.kt:43 // test.kt:13 box -// test.kt:57 M_init_$Init$ -// test.kt:61 M_init_$Init$ -// test.kt:56 M -// test.kt:58 M_init_$Init$ +// test.kt:49 L_init_$Init$ +// test.kt:54 L +// test.kt:48 L +// test.kt:50 L_init_$Init$ // test.kt:14 box -// test.kt:65 N_init_$Init$ -// test.kt:69 N_init_$Init$ -// test.kt:64 N -// test.kt:66 N_init_$Init$ +// test.kt:58 M_init_$Init$ +// test.kt:62 M_init_$Init$ +// test.kt:57 M +// test.kt:59 M_init_$Init$ // test.kt:15 box -// test.kt:72 +// test.kt:66 N_init_$Init$ +// test.kt:70 N_init_$Init$ +// test.kt:65 N +// test.kt:67 N_init_$Init$ // test.kt:16 box -// test.kt:73 O_init_$Init$ -// test.kt:72 +// test.kt:73 // test.kt:17 box +// test.kt:74 O_init_$Init$ +// test.kt:73 +// test.kt:18 box diff --git a/compiler/testData/debug/stepping/continue.kt b/compiler/testData/debug/stepping/continue.kt index ba7a568203e..f1b25a06356 100644 --- a/compiler/testData/debug/stepping/continue.kt +++ b/compiler/testData/debug/stepping/continue.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // WITH_STDLIB // FILE: test.kt @@ -16,49 +17,49 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:7 box // test.kt:8 box // test.kt:9 box -// test.kt:7 box +// test.kt:10 box // test.kt:8 box // test.kt:9 box -// test.kt:7 box +// test.kt:10 box // test.kt:8 box -// test.kt:11 box +// test.kt:9 box // test.kt:12 box -// test.kt:7 box +// test.kt:13 box // test.kt:8 box -// test.kt:11 box -// test.kt:14 box -// test.kt:7 box -// test.kt:16 box +// test.kt:9 box +// test.kt:12 box +// test.kt:15 box +// test.kt:8 box +// test.kt:17 box // EXPECTATIONS JS_IR -// test.kt:7 box -// test.kt:4 -// test.kt:7 box -// test.kt:7 box -// test.kt:7 box -// test.kt:7 box -// test.kt:7 box +// test.kt:8 box +// test.kt:5 +// test.kt:8 box +// test.kt:8 box +// test.kt:8 box +// test.kt:8 box // test.kt:8 box // test.kt:9 box -// test.kt:7 box -// test.kt:7 box -// test.kt:7 box +// test.kt:10 box +// test.kt:8 box +// test.kt:8 box // test.kt:8 box // test.kt:9 box -// test.kt:7 box -// test.kt:7 box -// test.kt:7 box +// test.kt:10 box // test.kt:8 box -// test.kt:11 box +// test.kt:8 box +// test.kt:8 box +// test.kt:9 box // test.kt:12 box -// test.kt:7 box -// test.kt:7 box -// test.kt:7 box +// test.kt:13 box // test.kt:8 box -// test.kt:11 box -// test.kt:14 box -// test.kt:7 box -// test.kt:16 box +// test.kt:8 box +// test.kt:8 box +// test.kt:9 box +// test.kt:12 box +// test.kt:15 box +// test.kt:8 box +// test.kt:17 box diff --git a/compiler/testData/debug/stepping/dataClass.kt b/compiler/testData/debug/stepping/dataClass.kt index bdaba76a025..2713d8be505 100644 --- a/compiler/testData/debug/stepping/dataClass.kt +++ b/compiler/testData/debug/stepping/dataClass.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt data class D(val i: Int, val s: String) @@ -25,94 +26,94 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:13 box -// test.kt:3 -// test.kt:13 box // test.kt:14 box -// test.kt:3 +// 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:3 +// test.kt:19 box +// test.kt:4 // test.kt:-1 copy -// test.kt:18 box -// test.kt:19 box -// test.kt:5 // test.kt:19 box // test.kt:20 box -// test.kt:5 -// test.kt:20 box -// test.kt:7 equals +// test.kt:6 // test.kt:20 box // test.kt:21 box -// test.kt:8 hashCode +// test.kt:6 +// test.kt:21 box +// test.kt:8 equals // test.kt:21 box // test.kt:22 box -// test.kt:6 toString +// test.kt:9 hashCode // test.kt:22 box // test.kt:23 box -// test.kt:24 box -// test.kt:9 copy -// test.kt:5 -// test.kt:9 copy +// 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 JS_IR -// test.kt:13 box -// test.kt:3 -// test.kt:3 -// test.kt:3 // test.kt:14 box -// test.kt:3 -// test.kt:3 -// test.kt:3 -// test.kt:14 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:4 +// test.kt:4 +// test.kt:4 // test.kt:15 box -// test.kt:1 hashCode -// test.kt:1 hashCode +// 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:17 box -// test.kt:1 component1 -// test.kt:17 box -// test.kt:1 component2 // 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:3 -// test.kt:3 -// test.kt:3 -// test.kt:19 box -// test.kt:5 -// test.kt:5 -// test.kt:5 +// test.kt:4 +// test.kt:4 +// test.kt:4 // test.kt:20 box -// test.kt:5 -// test.kt:5 -// test.kt:5 -// test.kt:20 box -// test.kt:7 equals +// test.kt:6 +// test.kt:6 +// test.kt:6 // test.kt:21 box -// test.kt:8 hashCode +// test.kt:6 +// test.kt:6 +// test.kt:6 +// test.kt:21 box +// test.kt:8 equals // test.kt:22 box -// test.kt:6 toString +// test.kt:9 hashCode // test.kt:23 box -// test.kt:1 component1 -// test.kt:23 box -// test.kt:1 component2 +// test.kt:7 toString // test.kt:24 box -// test.kt:9 copy -// test.kt:5 -// test.kt:5 -// test.kt:5 +// 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 diff --git a/compiler/testData/debug/stepping/defaultParameter.kt b/compiler/testData/debug/stepping/defaultParameter.kt index c2423001d2b..117018b3f34 100644 --- a/compiler/testData/debug/stepping/defaultParameter.kt +++ b/compiler/testData/debug/stepping/defaultParameter.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A { @@ -13,21 +14,21 @@ fun box() { // FORCE_STEP_INTO // EXPECTATIONS JVM JVM_IR -// test.kt:11 box -// test.kt:3 -// test.kt:11 box -// test.kt:6 foo$default (synthetic) -// test.kt:4 computeParam -// test.kt:6 foo$default (synthetic) -// test.kt:7 foo -// test.kt:6 foo$default (synthetic) // test.kt:12 box +// test.kt:4 +// test.kt:12 box +// test.kt:7 foo$default (synthetic) +// test.kt:5 computeParam +// test.kt:7 foo$default (synthetic) +// test.kt:8 foo +// test.kt:7 foo$default (synthetic) +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:11 box -// test.kt:3 -// test.kt:11 box -// test.kt:6 foo$default -// test.kt:4 computeParam -// test.kt:7 foo // test.kt:12 box +// test.kt:4 +// test.kt:12 box +// test.kt:7 foo$default +// test.kt:5 computeParam +// test.kt:8 foo +// test.kt:13 box diff --git a/compiler/testData/debug/stepping/delegation.kt b/compiler/testData/debug/stepping/delegation.kt index 6a3cdea01a9..832d45533d8 100644 --- a/compiler/testData/debug/stepping/delegation.kt +++ b/compiler/testData/debug/stepping/delegation.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt interface I { @@ -18,24 +19,24 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:16 box -// test.kt:13 -// EXPECTATIONS JVM -// test.kt:7 -// EXPECTATIONS JVM JVM_IR -// test.kt:16 box // test.kt:17 box -// test.kt:10 f -// test.kt:-1 f +// test.kt:14 +// EXPECTATIONS JVM +// test.kt:8 +// EXPECTATIONS JVM JVM_IR +// test.kt:17 box // test.kt:18 box +// test.kt:11 f +// test.kt:-1 f +// test.kt:19 box // EXPECTATIONS JS_IR -// test.kt:16 box -// test.kt:13 -// test.kt:7 -// test.kt:13 // test.kt:17 box -// test.kt:1 f -// test.kt:10 f -// test.kt:1 f +// test.kt:14 +// test.kt:8 +// test.kt:14 // test.kt:18 box +// test.kt:1 f +// test.kt:11 f +// test.kt:1 f +// test.kt:19 box diff --git a/compiler/testData/debug/stepping/enum.kt b/compiler/testData/debug/stepping/enum.kt index cb51df5f195..5170d47230a 100644 --- a/compiler/testData/debug/stepping/enum.kt +++ b/compiler/testData/debug/stepping/enum.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt enum class E() { @@ -35,36 +36,36 @@ fun box() { // but not for the allocation of the object. // EXPECTATIONS JVM JVM_IR -// test.kt:22 box -// EXPECTATIONS JVM_IR -// test.kt:4 -// test.kt:5 -// EXPECTATIONS JVM JVM_IR -// test.kt:7 foo -// test.kt:9 foo -// test.kt:22 box // test.kt:23 box -// test.kt:15 // EXPECTATIONS JVM_IR -// test.kt:16 +// test.kt:5 +// test.kt:6 // EXPECTATIONS JVM JVM_IR -// test.kt:17 -// test.kt:16 +// test.kt:8 foo +// test.kt:10 foo +// test.kt:23 box // test.kt:24 box +// test.kt:16 +// EXPECTATIONS JVM_IR +// test.kt:17 +// EXPECTATIONS JVM JVM_IR +// test.kt:18 +// test.kt:17 +// test.kt:25 box // EXPECTATIONS JS_IR -// test.kt:22 box -// test.kt:11 -// test.kt:3 -// test.kt:11 -// test.kt:3 -// test.kt:22 box -// test.kt:9 foo -// test.kt:7 E$foo$lambda -// test.kt:15 E2_initEntries -// test.kt:14 -// test.kt:14 -// test.kt:17 E2_initEntries -// test.kt:14 -// test.kt:14 -// test.kt:24 box +// test.kt:23 box +// test.kt:12 +// test.kt:4 +// test.kt:12 +// test.kt:4 +// test.kt:23 box +// test.kt:10 foo +// test.kt:8 E$foo$lambda +// test.kt:16 E2_initEntries +// test.kt:15 +// test.kt:15 +// test.kt:18 E2_initEntries +// test.kt:15 +// test.kt:15 +// test.kt:25 box diff --git a/compiler/testData/debug/stepping/for.kt b/compiler/testData/debug/stepping/for.kt index 4fdebb22ea3..e6bb41b9a9f 100644 --- a/compiler/testData/debug/stepping/for.kt +++ b/compiler/testData/debug/stepping/for.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { for (i in 1..3) { @@ -8,28 +9,28 @@ fun box() { inline fun foo(n: Int) {} // EXPECTATIONS JVM JVM_IR -// test.kt:3 box // test.kt:4 box -// test.kt:8 box -// test.kt:3 box +// test.kt:5 box +// test.kt:9 box // test.kt:4 box -// test.kt:8 box -// test.kt:3 box +// test.kt:5 box +// test.kt:9 box // test.kt:4 box -// test.kt:8 box -// test.kt:3 box -// test.kt:6 box +// test.kt:5 box +// test.kt:9 box +// test.kt:4 box +// test.kt:7 box // EXPECTATIONS JS_IR -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:3 box -// test.kt:6 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:4 box +// test.kt:7 box diff --git a/compiler/testData/debug/stepping/functionCallWithDefault.kt b/compiler/testData/debug/stepping/functionCallWithDefault.kt index 1067d0a2384..e1e8e6cdf13 100644 --- a/compiler/testData/debug/stepping/functionCallWithDefault.kt +++ b/compiler/testData/debug/stepping/functionCallWithDefault.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -13,16 +14,16 @@ inline fun bar(i: Int = 1) { // FORCE_STEP_INTO // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:8 foo$default (synthetic) -// test.kt:9 foo -// test.kt:8 foo$default (synthetic) // test.kt:5 box -// test.kt:11 box -// test.kt:12 box +// test.kt:9 foo$default (synthetic) +// test.kt:10 foo +// test.kt:9 foo$default (synthetic) // test.kt:6 box +// test.kt:12 box +// test.kt:13 box +// test.kt:7 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:9 foo -// test.kt:6 box +// test.kt:5 box +// test.kt:10 foo +// test.kt:7 box diff --git a/compiler/testData/debug/stepping/functionCallWithInlinedLambdaParam.kt b/compiler/testData/debug/stepping/functionCallWithInlinedLambdaParam.kt index fef91c9bbc4..8a02fdf2c46 100644 --- a/compiler/testData/debug/stepping/functionCallWithInlinedLambdaParam.kt +++ b/compiler/testData/debug/stepping/functionCallWithInlinedLambdaParam.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -17,25 +18,25 @@ inline fun foo(f: () -> Unit) { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:15 box -// test.kt:16 box // test.kt:6 box +// test.kt:16 box +// test.kt:17 box // test.kt:7 box -// test.kt:16 box +// test.kt:8 box // test.kt:17 box -// test.kt:9 box -// test.kt:15 box -// test.kt:16 box +// test.kt:18 box // test.kt:10 box -// test.kt:11 box // test.kt:16 box // test.kt:17 box +// test.kt:11 box // test.kt:12 box +// test.kt:17 box +// test.kt:18 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:15 box -// test.kt:6 box -// test.kt:15 box -// test.kt:10 box -// test.kt:12 box +// test.kt:16 box +// test.kt:7 box +// test.kt:16 box +// test.kt:11 box +// test.kt:13 box diff --git a/compiler/testData/debug/stepping/functionCallWithLambdaParam.kt b/compiler/testData/debug/stepping/functionCallWithLambdaParam.kt index f2d375b7b68..0edc40502f8 100644 --- a/compiler/testData/debug/stepping/functionCallWithLambdaParam.kt +++ b/compiler/testData/debug/stepping/functionCallWithLambdaParam.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -15,29 +16,29 @@ fun foo(f: () -> Unit) { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:14 foo -// test.kt:5 invoke +// test.kt:5 box +// test.kt:15 foo // test.kt:6 invoke -// test.kt:14 foo +// test.kt:7 invoke +// test.kt:15 foo +// test.kt:16 foo +// test.kt:9 box // test.kt:15 foo -// test.kt:8 box -// test.kt:14 foo -// test.kt:9 invoke // test.kt:10 invoke -// test.kt:14 foo +// test.kt:11 invoke // test.kt:15 foo -// test.kt:11 box +// test.kt:16 foo +// test.kt:12 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:14 foo -// test.kt:5 box$lambda +// test.kt:5 box +// test.kt:15 foo // test.kt:6 box$lambda +// test.kt:7 box$lambda +// test.kt:16 foo +// test.kt:9 box // test.kt:15 foo -// test.kt:8 box -// test.kt:14 foo -// test.kt:9 box$lambda // test.kt:10 box$lambda -// test.kt:15 foo -// test.kt:11 box \ No newline at end of file +// test.kt:11 box$lambda +// test.kt:16 foo +// test.kt:12 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/functionInAnotherFile.kt b/compiler/testData/debug/stepping/functionInAnotherFile.kt index ec23df384ca..305eea72be5 100644 --- a/compiler/testData/debug/stepping/functionInAnotherFile.kt +++ b/compiler/testData/debug/stepping/functionInAnotherFile.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: foo.kt import bar fun foo(x: Int): Int { @@ -21,26 +22,26 @@ fun bar(x: Int) = } // EXPECTATIONS JVM JVM_IR -// test.kt:13 box -// foo.kt:4 foo -// foo.kt:7 foo -// test.kt:17 bar -// test.kt:18 bar -// foo.kt:4 foo -// foo.kt:5 foo -// test.kt:18 bar -// test.kt:21 bar -// foo.kt:7 foo -// test.kt:13 box // test.kt:14 box +// foo.kt:5 foo +// foo.kt:8 foo +// test.kt:18 bar +// test.kt:19 bar +// foo.kt:5 foo +// foo.kt:6 foo +// test.kt:19 bar +// test.kt:22 bar +// foo.kt:8 foo +// test.kt:14 box +// test.kt:15 box // EXPECTATIONS JS_IR -// test.kt:13 box -// foo.kt:4 foo -// foo.kt:7 foo -// test.kt:17 bar -// test.kt:18 bar -// foo.kt:4 foo +// test.kt:14 box // foo.kt:5 foo -// test.kt:21 bar -// test.kt:14 box \ No newline at end of file +// foo.kt:8 foo +// test.kt:18 bar +// test.kt:19 bar +// foo.kt:5 foo +// foo.kt:6 foo +// test.kt:22 bar +// test.kt:15 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/if.kt b/compiler/testData/debug/stepping/if.kt index a2d4eef70fd..0a24aebb9ed 100644 --- a/compiler/testData/debug/stepping/if.kt +++ b/compiler/testData/debug/stepping/if.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box(): Int { @@ -15,16 +16,16 @@ inline fun getB(): Int { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:14 box // test.kt:6 box -// test.kt:11 getA -// test.kt:6 box -// test.kt:8 box -// test.kt:14 box -// test.kt:8 box +// test.kt:15 box +// test.kt:7 box +// test.kt:12 getA +// test.kt:7 box +// test.kt:9 box +// test.kt:15 box +// test.kt:9 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:11 getA -// test.kt:8 box +// test.kt:5 box +// test.kt:12 getA +// test.kt:9 box diff --git a/compiler/testData/debug/stepping/if2.kt b/compiler/testData/debug/stepping/if2.kt index 97fbf2a410f..95e5469e90c 100644 --- a/compiler/testData/debug/stepping/if2.kt +++ b/compiler/testData/debug/stepping/if2.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Int) { @@ -22,25 +23,25 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:20 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:8 foo -// test.kt:12 foo -// test.kt:13 foo -// test.kt:17 foo // test.kt:21 box -// test.kt:4 foo -// test.kt:8 foo +// test.kt:5 foo +// test.kt:6 foo // test.kt:9 foo -// test.kt:12 foo -// test.kt:15 foo -// test.kt:17 foo +// test.kt:13 foo +// test.kt:14 foo +// test.kt:18 foo // test.kt:22 box +// test.kt:5 foo +// test.kt:9 foo +// test.kt:10 foo +// test.kt:13 foo +// test.kt:16 foo +// test.kt:18 foo +// test.kt:23 box // EXPECTATIONS JS_IR -// test.kt:20 box -// test.kt:17 foo // test.kt:21 box -// test.kt:17 foo +// test.kt:18 foo // test.kt:22 box +// test.kt:18 foo +// test.kt:23 box diff --git a/compiler/testData/debug/stepping/ifThen.kt b/compiler/testData/debug/stepping/ifThen.kt index 18a7ebecfda..15d3e7e30ee 100644 --- a/compiler/testData/debug/stepping/ifThen.kt +++ b/compiler/testData/debug/stepping/ifThen.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo() { @@ -15,21 +16,21 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:12 box -// test.kt:4 foo -// test.kt:5 foo // test.kt:13 box +// test.kt:5 foo +// test.kt:6 foo // test.kt:14 box -// test.kt:4 foo -// test.kt:7 foo // test.kt:15 box +// test.kt:5 foo +// test.kt:8 foo +// test.kt:16 box // EXPECTATIONS JS_IR -// test.kt:12 box -// test.kt:4 foo -// test.kt:5 foo // test.kt:13 box +// test.kt:5 foo +// test.kt:6 foo // test.kt:14 box -// test.kt:4 foo -// test.kt:7 foo -// test.kt:15 box \ No newline at end of file +// test.kt:15 box +// test.kt:5 foo +// test.kt:8 foo +// test.kt:16 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/ifThenElse.kt b/compiler/testData/debug/stepping/ifThenElse.kt index ec10bd2f7e2..5d9146856c5 100644 --- a/compiler/testData/debug/stepping/ifThenElse.kt +++ b/compiler/testData/debug/stepping/ifThenElse.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo() { @@ -23,35 +24,35 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:20 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:10 foo -// test.kt:15 foo // test.kt:21 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:11 foo +// test.kt:16 foo // test.kt:22 box -// test.kt:4 foo -// test.kt:7 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo // test.kt:23 box +// test.kt:5 foo +// test.kt:8 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:24 box // EXPECTATIONS JS_IR -// test.kt:20 box -// test.kt:4 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:10 foo -// test.kt:15 foo // test.kt:21 box +// test.kt:5 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:11 foo +// test.kt:16 foo // test.kt:22 box -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:23 box \ No newline at end of file +// test.kt:23 box +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:24 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/ifThenElseFalse.kt b/compiler/testData/debug/stepping/ifThenElseFalse.kt index 1e52a23b29a..23227f0fd2f 100644 --- a/compiler/testData/debug/stepping/ifThenElseFalse.kt +++ b/compiler/testData/debug/stepping/ifThenElseFalse.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt var value = false @@ -18,33 +19,33 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:15 box -// test.kt:8 foo -// test.kt:5 cond -// test.kt:8 foo -// test.kt:11 foo -// test.kt:12 foo // test.kt:16 box -// test.kt:17 box -// test.kt:8 foo -// test.kt:5 cond -// test.kt:8 foo // test.kt:9 foo -// test.kt:5 cond +// test.kt:6 cond // test.kt:9 foo // test.kt:12 foo +// test.kt:13 foo +// test.kt:17 box // test.kt:18 box +// test.kt:9 foo +// test.kt:6 cond +// test.kt:9 foo +// test.kt:10 foo +// test.kt:6 cond +// test.kt:10 foo +// test.kt:13 foo +// test.kt:19 box // EXPECTATIONS JS_IR -// test.kt:15 box -// test.kt:8 foo -// test.kt:5 cond -// test.kt:12 foo // test.kt:16 box -// test.kt:17 box -// test.kt:8 foo -// test.kt:5 cond // test.kt:9 foo -// test.kt:5 cond -// test.kt:12 foo -// test.kt:18 box \ No newline at end of file +// test.kt:6 cond +// test.kt:13 foo +// test.kt:17 box +// test.kt:18 box +// test.kt:9 foo +// test.kt:6 cond +// test.kt:10 foo +// test.kt:6 cond +// test.kt:13 foo +// test.kt:19 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/ifWithInlineInCondition.kt b/compiler/testData/debug/stepping/ifWithInlineInCondition.kt index ca2f728dcb9..1810577fac2 100644 --- a/compiler/testData/debug/stepping/ifWithInlineInCondition.kt +++ b/compiler/testData/debug/stepping/ifWithInlineInCondition.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { if (inlineFun()) { @@ -30,38 +31,38 @@ inline fun Boolean.rid(): Boolean = this fun nop() {} // EXPECTATIONS JVM JVM_IR -// test.kt:3 box -// test.kt:24 box -// test.kt:3 box // test.kt:4 box -// test.kt:30 nop -// test.kt:8 box -// test.kt:24 box -// test.kt:8 box +// test.kt:25 box +// test.kt:4 box +// test.kt:5 box +// test.kt:31 nop +// test.kt:9 box +// test.kt:25 box +// test.kt:9 box +// test.kt:29 box +// test.kt:9 box +// test.kt:10 box +// test.kt:25 box +// test.kt:10 box +// test.kt:12 box +// test.kt:31 nop +// test.kt:17 box +// test.kt:25 box +// test.kt:17 box +// test.kt:16 box // test.kt:28 box -// test.kt:8 box -// test.kt:9 box -// test.kt:24 box -// test.kt:9 box -// test.kt:11 box -// test.kt:30 nop // test.kt:16 box -// test.kt:24 box -// test.kt:16 box -// test.kt:15 box -// test.kt:27 box -// test.kt:15 box -// test.kt:19 box -// test.kt:30 nop -// test.kt:21 box +// test.kt:20 box +// test.kt:31 nop +// test.kt:22 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:30 nop -// test.kt:24 box -// test.kt:7 box -// test.kt:11 box -// test.kt:30 nop -// test.kt:19 box -// test.kt:30 nop -// test.kt:21 box +// test.kt:5 box +// test.kt:31 nop +// test.kt:25 box +// test.kt:8 box +// test.kt:12 box +// test.kt:31 nop +// test.kt:20 box +// test.kt:31 nop +// test.kt:22 box diff --git a/compiler/testData/debug/stepping/iincStepping.kt b/compiler/testData/debug/stepping/iincStepping.kt index 163f9ae11d3..bf356efe106 100644 --- a/compiler/testData/debug/stepping/iincStepping.kt +++ b/compiler/testData/debug/stepping/iincStepping.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_BACKEND: JVM // FILE: test.kt fun box() { @@ -27,33 +28,33 @@ fun box() { // that is the actual evaluation order. // EXPECTATIONS JVM JVM_IR -// test.kt:4 box // test.kt:5 box // test.kt:6 box // test.kt:7 box // test.kt:8 box -// test.kt:7 box // test.kt:9 box +// test.kt:8 box // test.kt:10 box // test.kt:11 box -// test.kt:10 box // test.kt:12 box -// test.kt:14 box +// test.kt:11 box // test.kt:13 box -// test.kt:16 box +// test.kt:15 box +// test.kt:14 box +// test.kt:17 box +// test.kt:18 box // test.kt:17 box // test.kt:16 box -// test.kt:15 box -// test.kt:18 box +// test.kt:19 box // EXPECTATIONS JS_IR -// test.kt:4 box // test.kt:5 box // test.kt:6 box // test.kt:7 box -// test.kt:9 box +// test.kt:8 box // test.kt:10 box -// test.kt:12 box -// test.kt:14 box -// test.kt:16 box -// test.kt:18 box \ No newline at end of file +// test.kt:11 box +// test.kt:13 box +// test.kt:15 box +// test.kt:17 box +// test.kt:19 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/implicitThis.kt b/compiler/testData/debug/stepping/implicitThis.kt index 2c0e6c33730..87a725921f8 100644 --- a/compiler/testData/debug/stepping/implicitThis.kt +++ b/compiler/testData/debug/stepping/implicitThis.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -28,41 +29,41 @@ class A { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:20 -// test.kt:15 -// test.kt:20 -// test.kt:20 -// test.kt:4 box - -// test.kt:7 -// test.kt:4 box -// test.kt:10 test -// test.kt:17 foo -// test.kt:18 foo -// test.kt:11 test -// test.kt:22 getProp -// test.kt:11 test -// test.kt:12 test -// test.kt:25 setProp -// test.kt:26 setProp -// test.kt:13 test // test.kt:5 box +// test.kt:21 +// test.kt:16 +// test.kt:21 +// test.kt:21 +// test.kt:5 box + +// test.kt:8 +// test.kt:5 box +// test.kt:11 test +// test.kt:18 foo +// test.kt:19 foo +// test.kt:12 test +// test.kt:23 getProp +// test.kt:12 test +// test.kt:13 test +// test.kt:26 setProp +// test.kt:27 setProp +// test.kt:14 test +// test.kt:6 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:7 -// test.kt:20 -// test.kt:15 -// test.kt:7 -// test.kt:4 box -// test.kt:10 test -// test.kt:10 test -// test.kt:17 foo -// test.kt:18 foo -// test.kt:11 test -// test.kt:11 test -// test.kt:22 -// test.kt:12 test -// test.kt:13 test // test.kt:5 box +// test.kt:8 +// test.kt:21 +// test.kt:16 +// test.kt:8 +// test.kt:5 box +// test.kt:11 test +// test.kt:11 test +// test.kt:18 foo +// test.kt:19 foo +// test.kt:12 test +// test.kt:12 test +// test.kt:23 +// test.kt:13 test +// test.kt:14 test +// test.kt:6 box diff --git a/compiler/testData/debug/stepping/implicitThisOnInvoke.kt b/compiler/testData/debug/stepping/implicitThisOnInvoke.kt index 8c62fd155fd..6ab19977c6b 100644 --- a/compiler/testData/debug/stepping/implicitThisOnInvoke.kt +++ b/compiler/testData/debug/stepping/implicitThisOnInvoke.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -17,29 +18,29 @@ fun test(b: B) { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:7 -// test.kt:4 box -// test.kt:9 -// test.kt:4 box -// test.kt:14 test - -// test.kt:15 test -// test.kt:9 getA -// test.kt:15 test -// test.kt:10 invoke -// test.kt:16 test -// test.kt:14 test -// test.kt:17 test // test.kt:5 box +// test.kt:8 +// test.kt:5 box +// test.kt:10 +// test.kt:5 box +// test.kt:15 test + +// test.kt:16 test +// test.kt:10 getA +// test.kt:16 test +// test.kt:11 invoke +// test.kt:17 test +// test.kt:15 test +// test.kt:18 test +// test.kt:6 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:7 -// test.kt:4 box -// test.kt:9 -// test.kt:9 -// test.kt:4 box -// test.kt:10 invoke -// test.kt:17 test // test.kt:5 box +// test.kt:8 +// test.kt:5 box +// test.kt:10 +// test.kt:10 +// test.kt:5 box +// test.kt:11 invoke +// test.kt:18 test +// test.kt:6 box diff --git a/compiler/testData/debug/stepping/inTheEndOfLambdaArgumentOfInlineCall.kt b/compiler/testData/debug/stepping/inTheEndOfLambdaArgumentOfInlineCall.kt index 5de95c10bc7..deae9902a4f 100644 --- a/compiler/testData/debug/stepping/inTheEndOfLambdaArgumentOfInlineCall.kt +++ b/compiler/testData/debug/stepping/inTheEndOfLambdaArgumentOfInlineCall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -20,26 +21,26 @@ inline fun baz() { fun nop() {} // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:12 box -// test.kt:20 nop -// test.kt:13 box // test.kt:6 box -// test.kt:20 nop -// test.kt:7 box -// test.kt:17 box -// test.kt:20 nop -// test.kt:18 box -// test.kt:8 box // test.kt:13 box +// test.kt:21 nop // test.kt:14 box +// test.kt:7 box +// test.kt:21 nop +// test.kt:8 box +// test.kt:18 box +// test.kt:21 nop +// test.kt:19 box // test.kt:9 box +// test.kt:14 box +// test.kt:15 box +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:12 box -// test.kt:20 nop -// test.kt:6 box -// test.kt:20 nop -// test.kt:17 box -// test.kt:20 nop -// test.kt:9 box +// test.kt:13 box +// test.kt:21 nop +// test.kt:7 box +// test.kt:21 nop +// test.kt:18 box +// test.kt:21 nop +// test.kt:10 box diff --git a/compiler/testData/debug/stepping/initBlocks.kt b/compiler/testData/debug/stepping/initBlocks.kt index 592f8e5228a..dccea6eb190 100644 --- a/compiler/testData/debug/stepping/initBlocks.kt +++ b/compiler/testData/debug/stepping/initBlocks.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class Foo { @@ -55,77 +56,77 @@ fun box() { // declaration for the return in the constructor. // EXPECTATIONS JVM JVM_IR -// test.kt:48 box -// test.kt:3 -// test.kt:6 -// test.kt:7 -// test.kt:45 x +// test.kt:49 box +// test.kt:4 // test.kt:7 // test.kt:8 +// test.kt:46 x +// test.kt:8 +// test.kt:9 // EXPECTATIONS JVM_IR -// test.kt:3 +// test.kt:4 // EXPECTATIONS JVM JVM_IR -// test.kt:48 box // test.kt:49 box -// test.kt:11 +// test.kt:50 box // test.kt:12 // test.kt:13 // test.kt:14 -// test.kt:16 +// test.kt:15 // test.kt:17 // test.kt:18 +// test.kt:19 // EXPECTATIONS JVM_IR -// test.kt:11 +// test.kt:12 // EXPECTATIONS JVM JVM_IR -// test.kt:49 box // test.kt:50 box -// test.kt:21 +// test.kt:51 box // test.kt:22 // test.kt:23 // test.kt:24 -// test.kt:26 -// test.kt:45 x -// test.kt:26 -// test.kt:28 +// test.kt:25 +// test.kt:27 +// test.kt:46 x +// test.kt:27 // test.kt:29 // test.kt:30 +// test.kt:31 // EXPECTATIONS JVM_IR -// test.kt:21 -// EXPECTATIONS JVM JVM_IR -// test.kt:50 box -// test.kt:51 box -// test.kt:33 -// test.kt:34 -// test.kt:36 -// test.kt:38 -// test.kt:39 -// test.kt:40 -// test.kt:42 -// EXPECTATIONS JVM_IR -// test.kt:33 +// test.kt:22 // EXPECTATIONS JVM JVM_IR // test.kt:51 box // test.kt:52 box +// test.kt:34 +// test.kt:35 +// test.kt:37 +// test.kt:39 +// test.kt:40 +// test.kt:41 +// test.kt:43 +// EXPECTATIONS JVM_IR +// test.kt:34 +// EXPECTATIONS JVM JVM_IR +// test.kt:52 box +// test.kt:53 box // EXPECTATIONS JS_IR -// test.kt:48 box -// test.kt:7 -// test.kt:45 x -// test.kt:3 // test.kt:49 box -// test.kt:13 -// test.kt:17 -// test.kt:11 +// test.kt:8 +// test.kt:46 x +// test.kt:4 // test.kt:50 box -// test.kt:23 -// test.kt:26 -// test.kt:45 x -// test.kt:29 -// test.kt:21 +// test.kt:14 +// test.kt:18 +// test.kt:12 // test.kt:51 box +// test.kt:24 +// test.kt:27 +// test.kt:46 x +// test.kt:30 +// test.kt:22 +// test.kt:52 box +// test.kt:35 +// test.kt:37 +// test.kt:40 +// test.kt:43 // test.kt:34 -// test.kt:36 -// test.kt:39 -// test.kt:42 -// test.kt:33 -// test.kt:52 box \ No newline at end of file +// test.kt:53 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/initBlocksCompanion.kt b/compiler/testData/debug/stepping/initBlocksCompanion.kt index 1a343d92f03..2597e49576f 100644 --- a/compiler/testData/debug/stepping/initBlocksCompanion.kt +++ b/compiler/testData/debug/stepping/initBlocksCompanion.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A { @@ -31,35 +32,35 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:29 box -// test.kt:7 +// test.kt:30 box // test.kt:8 // test.kt:9 -// test.kt:11 -// test.kt:13 -// test.kt:15 +// test.kt:10 +// test.kt:12 +// test.kt:14 // test.kt:16 // test.kt:17 -// test.kt:19 -// test.kt:21 +// test.kt:18 +// test.kt:20 // test.kt:22 -// test.kt:11 getX -// test.kt:11 getX -// test.kt:29 box -// test.kt:30 box -// test.kt:5 getS -// test.kt:5 getS +// test.kt:23 +// test.kt:12 getX +// test.kt:12 getX // test.kt:30 box // test.kt:31 box +// test.kt:6 getS +// test.kt:6 getS +// test.kt:31 box +// test.kt:32 box // EXPECTATIONS JS_IR -// test.kt:29 box -// test.kt:8 -// test.kt:11 -// test.kt:26 x -// test.kt:13 -// test.kt:16 -// test.kt:21 -// test.kt:4 // test.kt:30 box -// test.kt:31 box \ No newline at end of file +// test.kt:9 +// test.kt:12 +// test.kt:27 x +// test.kt:14 +// test.kt:17 +// test.kt:22 +// test.kt:5 +// test.kt:31 box +// test.kt:32 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/inlineCallableReference.kt b/compiler/testData/debug/stepping/inlineCallableReference.kt index 74d48b16989..6e4f2182e9c 100644 --- a/compiler/testData/debug/stepping/inlineCallableReference.kt +++ b/compiler/testData/debug/stepping/inlineCallableReference.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { var x = false @@ -16,27 +17,27 @@ inline fun f(block: () -> Unit) { } // EXPECTATIONS JVM JVM_IR -// test.kt:3 box // test.kt:4 box -// test.kt:15 box // test.kt:5 box +// test.kt:16 box // test.kt:6 box -// test.kt:15 box -// test.kt:16 box // test.kt:7 box +// test.kt:16 box +// test.kt:17 box // test.kt:8 box -// test.kt:7 box // test.kt:9 box -// test.kt:15 box +// test.kt:8 box // test.kt:10 box -// test.kt:11 box -// test.kt:15 box // test.kt:16 box +// test.kt:11 box // test.kt:12 box +// test.kt:16 box +// test.kt:17 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:3 box -// test.kt:5 box -// test.kt:8 box -// test.kt:10 box -// test.kt:12 box \ No newline at end of file +// test.kt:4 box +// test.kt:6 box +// test.kt:9 box +// test.kt:11 box +// test.kt:13 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/inlineNamedCallableReference.kt b/compiler/testData/debug/stepping/inlineNamedCallableReference.kt index e10a7d0b4f8..fa50763de6f 100644 --- a/compiler/testData/debug/stepping/inlineNamedCallableReference.kt +++ b/compiler/testData/debug/stepping/inlineNamedCallableReference.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { var x = false @@ -11,17 +12,17 @@ inline fun f(block: () -> Unit) { fun g() {} // EXPECTATIONS JVM JVM_IR -// test.kt:3 box // test.kt:4 box -// test.kt:8 box -// test.kt:4 box -// test.kt:11 g -// test.kt:8 box +// test.kt:5 box // test.kt:9 box // test.kt:5 box +// test.kt:12 g +// test.kt:9 box +// test.kt:10 box +// test.kt:6 box // EXPECTATIONS JS_IR -// test.kt:3 box // test.kt:4 box -// test.kt:11 g -// test.kt:5 box \ No newline at end of file +// test.kt:5 box +// test.kt:12 g +// test.kt:6 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/inlineSimpleCall.kt b/compiler/testData/debug/stepping/inlineSimpleCall.kt index 401d3cd1f7f..5a285a439b3 100644 --- a/compiler/testData/debug/stepping/inlineSimpleCall.kt +++ b/compiler/testData/debug/stepping/inlineSimpleCall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -24,31 +25,31 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:9 box -// test.kt:5 box // test.kt:10 box +// test.kt:6 box // test.kt:11 box -// test.kt:5 box +// test.kt:12 box // test.kt:6 box -// test.kt:13 box -// test.kt:5 box +// test.kt:7 box // test.kt:14 box +// test.kt:6 box // test.kt:15 box -// test.kt:5 box +// test.kt:16 box // test.kt:6 box -// test.kt:17 box -// test.kt:5 box +// test.kt:7 box // test.kt:18 box -// test.kt:20 box -// test.kt:5 box +// test.kt:6 box +// test.kt:19 box // test.kt:21 box +// test.kt:6 box // test.kt:22 box -// test.kt:5 box -// test.kt:6 box // test.kt:23 box -// test.kt:5 box // test.kt:6 box +// test.kt:7 box // test.kt:24 box +// test.kt:6 box +// test.kt:7 box +// test.kt:25 box // EXPECTATIONS JS_IR -// test.kt:24 box +// test.kt:25 box diff --git a/compiler/testData/debug/stepping/kt15259.kt b/compiler/testData/debug/stepping/kt15259.kt index 360d75b08ae..266ec3dc4d0 100644 --- a/compiler/testData/debug/stepping/kt15259.kt +++ b/compiler/testData/debug/stepping/kt15259.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_BACKEND: JVM_IR // FILE: test.kt interface ObjectFace @@ -14,16 +15,16 @@ fun box() { // IR backend has additional steps on the way _out_ of the init block. // EXPECTATIONS JVM JVM_IR -// test.kt:11 box -// test.kt:5 makeFace -// test.kt:5 -// test.kt:7 -// test.kt:8 makeFace -// test.kt:11 box // test.kt:12 box +// test.kt:6 makeFace +// test.kt:6 +// test.kt:8 +// test.kt:9 makeFace +// test.kt:12 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:11 box -// test.kt:8 makeFace -// test.kt:5 -// test.kt:12 box \ No newline at end of file +// test.kt:12 box +// test.kt:9 makeFace +// test.kt:6 +// test.kt:13 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/kt29179.kt b/compiler/testData/debug/stepping/kt29179.kt index dcdb5b7b7b4..c3728975f09 100644 --- a/compiler/testData/debug/stepping/kt29179.kt +++ b/compiler/testData/debug/stepping/kt29179.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_BACKEND: JVM_IR // FILE: test.kt class A { @@ -15,19 +16,19 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:14 box -// test.kt:3 -// test.kt:4 -// test.kt:14 box -// test.kt:7 foo -// test.kt:9 foo -// test.kt:10 foo // test.kt:15 box +// test.kt:4 +// test.kt:5 +// test.kt:15 box +// test.kt:8 foo +// test.kt:10 foo +// test.kt:11 foo +// test.kt:16 box // EXPECTATIONS JS_IR -// test.kt:14 box +// test.kt:15 box +// test.kt:5 // test.kt:4 -// test.kt:3 -// test.kt:14 box -// test.kt:10 foo -// test.kt:15 box \ No newline at end of file +// test.kt:15 box +// test.kt:11 foo +// test.kt:16 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/kt42208.kt b/compiler/testData/debug/stepping/kt42208.kt index 9d45efd9964..306ff9d1d97 100644 --- a/compiler/testData/debug/stepping/kt42208.kt +++ b/compiler/testData/debug/stepping/kt42208.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_INLINER: IR // FILE: test.kt @@ -9,17 +10,17 @@ fun box() { inline fun foo() = { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test1.kt:9 box -// test1.kt:10 box -// EXPECTATIONS JVM_IR -// test.kt:5 box -// test1.kt:10 invoke -// test.kt:5 box -// EXPECTATIONS JVM JVM_IR // test.kt:6 box +// test1.kt:10 box +// test1.kt:11 box +// EXPECTATIONS JVM_IR +// test.kt:6 box +// test1.kt:11 invoke +// test.kt:6 box +// EXPECTATIONS JVM JVM_IR +// test.kt:7 box // EXPECTATIONS JS_IR -// test1.kt:9 box -// test1.kt:7 box$lambda -// test.kt:6 box +// test1.kt:10 box +// test1.kt:8 box$lambda +// test.kt:7 box diff --git a/compiler/testData/debug/stepping/kt42208b.kt b/compiler/testData/debug/stepping/kt42208b.kt index d6dbcdb3a29..3abce71806f 100644 --- a/compiler/testData/debug/stepping/kt42208b.kt +++ b/compiler/testData/debug/stepping/kt42208b.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_INLINER: IR // FILE: test.kt @@ -10,23 +11,23 @@ fun box() { inline fun foo() = { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test1.kt:10 box +// test.kt:6 box // test1.kt:11 box +// test1.kt:12 box // EXPECTATIONS JVM_IR -// test.kt:5 box // test.kt:6 box -// test1.kt:11 invoke -// test.kt:6 box -// EXPECTATIONS JVM_IR // test.kt:7 box +// test1.kt:12 invoke +// test.kt:7 box +// EXPECTATIONS JVM_IR +// test.kt:8 box // EXPECTATIONS JVM -// test.kt:5 box // test.kt:6 box // test.kt:7 box +// test.kt:8 box // EXPECTATIONS JS_IR -// test1.kt:10 box -// test.kt:6 box -// test1.kt:8 box$lambda +// test1.kt:11 box // test.kt:7 box +// test1.kt:9 box$lambda +// test.kt:8 box diff --git a/compiler/testData/debug/stepping/kt42208c.kt b/compiler/testData/debug/stepping/kt42208c.kt index 99cb7521fbd..6ea36888693 100644 --- a/compiler/testData/debug/stepping/kt42208c.kt +++ b/compiler/testData/debug/stepping/kt42208c.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_INLINER: IR // FILE: test.kt @@ -15,38 +16,38 @@ fun baz(v:(() -> Unit)) { v() } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test1.kt:11 box +// test.kt:6 box // test1.kt:12 box -// test.kt:5 box -// test3.kt:15 baz -// EXPECTATIONS JVM_IR -// test1.kt:12 invoke -// test3.kt:15 baz -// EXPECTATIONS JVM JVM_IR +// test1.kt:13 box +// test.kt:6 box // test3.kt:16 baz -// test.kt:6 box -// test1.kt:11 box -// test1.kt:12 box -// test.kt:6 box +// EXPECTATIONS JVM_IR +// test1.kt:13 invoke +// test3.kt:16 baz +// EXPECTATIONS JVM JVM_IR +// test3.kt:17 baz +// test.kt:7 box +// test1.kt:12 box +// test1.kt:13 box // test.kt:7 box -// EXPECTATIONS JVM_IR -// test3.kt:15 baz -// test1.kt:12 invoke -// EXPECTATIONS JVM JVM_IR -// test3.kt:15 baz -// test3.kt:16 baz // test.kt:8 box +// EXPECTATIONS JVM_IR +// test3.kt:16 baz +// test1.kt:13 invoke +// EXPECTATIONS JVM JVM_IR +// test3.kt:16 baz +// test3.kt:17 baz +// test.kt:9 box // EXPECTATIONS JS_IR -// test1.kt:11 box -// test.kt:5 box -// test3.kt:15 baz -// test1.kt:9 box$lambda -// test3.kt:16 baz -// test1.kt:11 box -// test.kt:7 box -// test3.kt:15 baz -// test1.kt:9 box$lambda +// test1.kt:12 box +// test.kt:6 box // test3.kt:16 baz +// test.kt:8 box$lambda +// test3.kt:17 baz +// test1.kt:12 box // test.kt:8 box +// test3.kt:16 baz +// test.kt:8 box$lambda +// test3.kt:17 baz +// test.kt:9 box diff --git a/compiler/testData/debug/stepping/lambdaStepInline.kt b/compiler/testData/debug/stepping/lambdaStepInline.kt index 90820b1d0a7..4dbe05bc818 100644 --- a/compiler/testData/debug/stepping/lambdaStepInline.kt +++ b/compiler/testData/debug/stepping/lambdaStepInline.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt inline fun foo(stringMaker: () -> String): String { @@ -14,15 +15,15 @@ fun box(): String { } // EXPECTATIONS JVM JVM_IR -// test.kt:8 box -// test.kt:4 box -// test.kt:8 box -// test.kt:4 box // test.kt:9 box -// test.kt:4 box +// test.kt:5 box +// test.kt:9 box +// test.kt:5 box // test.kt:10 box -// test.kt:4 box -// test.kt:13 box +// test.kt:5 box +// test.kt:11 box +// test.kt:5 box +// test.kt:14 box // EXPECTATIONS JS_IR -// test.kt:13 box +// test.kt:14 box diff --git a/compiler/testData/debug/stepping/lambdaStepInlineWithDefaults.kt b/compiler/testData/debug/stepping/lambdaStepInlineWithDefaults.kt index 1355ef8fd20..ece03c6dabd 100644 --- a/compiler/testData/debug/stepping/lambdaStepInlineWithDefaults.kt +++ b/compiler/testData/debug/stepping/lambdaStepInlineWithDefaults.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt inline fun foo(stringMaker: () -> String = { "OK" }): String { return stringMaker() @@ -17,17 +18,17 @@ fun box(): String { } // EXPECTATIONS JVM JVM_IR -// test.kt:14 box -// test.kt:2 box -// test.kt:3 box -// test.kt:2 box -// test.kt:3 box // test.kt:15 box -// test.kt:6 box -// test.kt:10 box -// test.kt:7 box -// test.kt:10 box +// test.kt:3 box +// test.kt:4 box +// test.kt:3 box +// test.kt:4 box // test.kt:16 box +// test.kt:7 box +// test.kt:11 box +// test.kt:8 box +// test.kt:11 box +// test.kt:17 box // EXPECTATIONS JS_IR -// test.kt:16 box +// test.kt:17 box diff --git a/compiler/testData/debug/stepping/lineNumberAfterInline.kt b/compiler/testData/debug/stepping/lineNumberAfterInline.kt index cc025d6e300..2d7ba5dbc60 100644 --- a/compiler/testData/debug/stepping/lineNumberAfterInline.kt +++ b/compiler/testData/debug/stepping/lineNumberAfterInline.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun normalFunction() { @@ -24,25 +25,25 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:22 box -// test.kt:12 test1 -// test.kt:8 test1 -// test.kt:9 test1 -// test.kt:13 test1 -// test.kt:14 test1 // test.kt:23 box -// test.kt:17 test2 -// test.kt:4 normalFunction -// test.kt:5 normalFunction -// test.kt:18 test2 -// test.kt:19 test2 +// test.kt:13 test1 +// test.kt:9 test1 +// test.kt:10 test1 +// test.kt:14 test1 +// test.kt:15 test1 // test.kt:24 box +// test.kt:18 test2 +// test.kt:5 normalFunction +// test.kt:6 normalFunction +// test.kt:19 test2 +// test.kt:20 test2 +// test.kt:25 box // EXPECTATIONS JS_IR -// test.kt:22 box -// test.kt:14 test1 // test.kt:23 box -// test.kt:17 test2 -// test.kt:5 normalFunction -// test.kt:19 test2 -// test.kt:24 box \ No newline at end of file +// test.kt:15 test1 +// test.kt:24 box +// test.kt:18 test2 +// test.kt:6 normalFunction +// test.kt:20 test2 +// test.kt:25 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/linenumberForOneParametersArgumentCall.kt b/compiler/testData/debug/stepping/linenumberForOneParametersArgumentCall.kt index 75f5b54518f..a2f8f4ac5fa 100644 --- a/compiler/testData/debug/stepping/linenumberForOneParametersArgumentCall.kt +++ b/compiler/testData/debug/stepping/linenumberForOneParametersArgumentCall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -13,16 +14,16 @@ inline fun lookAtMe(f: (String) -> Unit) { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:11 box -// test.kt:12 box // test.kt:6 box -// test.kt:7 box // test.kt:12 box // test.kt:13 box +// test.kt:7 box // test.kt:8 box +// test.kt:13 box +// test.kt:14 box +// test.kt:9 box // EXPECTATIONS JS_IR -// test.kt:11 box -// test.kt:6 box -// test.kt:8 box +// test.kt:12 box +// test.kt:7 box +// test.kt:9 box diff --git a/compiler/testData/debug/stepping/localFunction.kt b/compiler/testData/debug/stepping/localFunction.kt index 276be25c057..c85f649c025 100644 --- a/compiler/testData/debug/stepping/localFunction.kt +++ b/compiler/testData/debug/stepping/localFunction.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -12,23 +13,23 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// EXPECTATIONS JVM // test.kt:6 box -// EXPECTATIONS JVM JVM_IR -// test.kt:9 box -// test.kt:10 box // EXPECTATIONS JVM -// test.kt:7 invoke -// test.kt:8 invoke -// EXPECTATIONS JVM_IR -// test.kt:7 box$bar -// test.kt:8 box$bar +// test.kt:7 box // EXPECTATIONS JVM JVM_IR +// test.kt:10 box // test.kt:11 box +// EXPECTATIONS JVM +// test.kt:8 invoke +// test.kt:9 invoke +// EXPECTATIONS JVM_IR +// test.kt:8 box$bar +// test.kt:9 box$bar +// EXPECTATIONS JVM JVM_IR // test.kt:12 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:10 box -// test.kt:8 box$bar -// test.kt:12 box +// test.kt:11 box +// test.kt:9 box$bar +// test.kt:13 box diff --git a/compiler/testData/debug/stepping/localFunctionWIthOnelineExpressionBody.kt b/compiler/testData/debug/stepping/localFunctionWIthOnelineExpressionBody.kt index 5df10e8f9b3..edc2bad9645 100644 --- a/compiler/testData/debug/stepping/localFunctionWIthOnelineExpressionBody.kt +++ b/compiler/testData/debug/stepping/localFunctionWIthOnelineExpressionBody.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -10,22 +11,22 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// EXPECTATIONS JVM // test.kt:6 box -// EXPECTATIONS JVM JVM_IR -// test.kt:7 box -// test.kt:8 box // EXPECTATIONS JVM -// test.kt:6 invoke -// EXPECTATIONS JVM_IR -// test.kt:6 box$bar +// test.kt:7 box // EXPECTATIONS JVM JVM_IR // test.kt:8 box // test.kt:9 box +// EXPECTATIONS JVM +// test.kt:7 invoke +// EXPECTATIONS JVM_IR +// test.kt:7 box$bar +// EXPECTATIONS JVM JVM_IR +// test.kt:9 box // test.kt:10 box +// test.kt:11 box // EXPECTATIONS JS_IR -// test.kt:8 box -// test.kt:6 box$bar -// test.kt:10 box +// test.kt:9 box +// test.kt:7 box$bar +// test.kt:11 box diff --git a/compiler/testData/debug/stepping/localProperty.kt b/compiler/testData/debug/stepping/localProperty.kt index ec68870b977..1d523085521 100644 --- a/compiler/testData/debug/stepping/localProperty.kt +++ b/compiler/testData/debug/stepping/localProperty.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_BACKEND_K2: JVM_IR // FILE: test.kt @@ -15,12 +16,12 @@ fun box(): String { // EXPECTATIONS JVM JVM_IR -// test.kt:8 box -// test.kt:6 box -// test.kt:11 box -// test.kt:13 box +// test.kt:9 box +// test.kt:7 box +// test.kt:12 box +// test.kt:14 box // EXPECTATIONS JS_IR -// test.kt:8 box -// test.kt:11 box -// test.kt:13 box +// test.kt:9 box +// test.kt:12 box +// test.kt:14 box diff --git a/compiler/testData/debug/stepping/multiModule.kt b/compiler/testData/debug/stepping/multiModule.kt index b4428723159..9a6cefe9796 100644 --- a/compiler/testData/debug/stepping/multiModule.kt +++ b/compiler/testData/debug/stepping/multiModule.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // MODULE: lib // FILE: a.kt @@ -16,17 +17,17 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:14 box -// a.kt:4 a -// test.kt:14 box // test.kt:15 box -// b.kt:8 b +// a.kt:5 a // test.kt:15 box // test.kt:16 box +// b.kt:9 b +// test.kt:16 box +// test.kt:17 box // EXPECTATIONS JS_IR -// test.kt:14 box -// a.kt:4 a // test.kt:15 box -// b.kt:8 b -// test.kt:16 box \ No newline at end of file +// a.kt:5 a +// test.kt:16 box +// b.kt:9 b +// test.kt:17 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/multilineExpression.kt b/compiler/testData/debug/stepping/multilineExpression.kt index 731e6ad10dd..b431d87dc60 100644 --- a/compiler/testData/debug/stepping/multilineExpression.kt +++ b/compiler/testData/debug/stepping/multilineExpression.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt // KT-17753 @@ -12,17 +13,17 @@ fun test(a: Boolean, b: Boolean, c: Boolean): Boolean { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// EXPECTATIONS JVM_IR -// test.kt:9 test -// test.kt:10 test -// EXPECTATIONS JVM JVM_IR -// test.kt:11 test -// test.kt:9 test -// test.kt:5 box // test.kt:6 box +// EXPECTATIONS JVM_IR +// test.kt:10 test +// test.kt:11 test +// EXPECTATIONS JVM JVM_IR +// test.kt:12 test +// test.kt:10 test +// test.kt:6 box +// test.kt:7 box // EXPECTATIONS JS_IR -// test.kt:5 box -// test.kt:9 test -// test.kt:6 box \ No newline at end of file +// test.kt:6 box +// test.kt:10 test +// test.kt:7 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/multilineFunctionCall.kt b/compiler/testData/debug/stepping/multilineFunctionCall.kt index fdcda372485..985ad0be1e7 100644 --- a/compiler/testData/debug/stepping/multilineFunctionCall.kt +++ b/compiler/testData/debug/stepping/multilineFunctionCall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -10,12 +11,12 @@ fun foo(i: Int) { } // EXPECTATIONS JVM JVM_IR +// test.kt:6 box // test.kt:5 box -// test.kt:4 box -// test.kt:10 foo -// test.kt:7 box +// test.kt:11 foo +// test.kt:8 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:10 foo -// test.kt:7 box \ No newline at end of file +// test.kt:5 box +// test.kt:11 foo +// test.kt:8 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/multilineInfixCall.kt b/compiler/testData/debug/stepping/multilineInfixCall.kt index 17bbe1d1a3c..d53129b7c1d 100644 --- a/compiler/testData/debug/stepping/multilineInfixCall.kt +++ b/compiler/testData/debug/stepping/multilineInfixCall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -9,13 +10,13 @@ infix fun Int.foo(i: Int) { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box // test.kt:5 box -// test.kt:4 box -// test.kt:9 foo // test.kt:6 box +// test.kt:5 box +// test.kt:10 foo +// test.kt:7 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:9 foo -// test.kt:6 box \ No newline at end of file +// test.kt:5 box +// test.kt:10 foo +// test.kt:7 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/namedCallableReference.kt b/compiler/testData/debug/stepping/namedCallableReference.kt index 19e816199d5..6d9307a0be5 100644 --- a/compiler/testData/debug/stepping/namedCallableReference.kt +++ b/compiler/testData/debug/stepping/namedCallableReference.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { var x = false @@ -17,24 +18,24 @@ fun g() {} // up for JVM_IR. // EXPECTATIONS JVM JVM_IR -// test.kt:3 box // test.kt:4 box -// test.kt:8 f -// EXPECTATIONS JVM_IR -// test.kt:4 invoke -// EXPECTATIONS JVM JVM_IR -// test.kt:11 g -// test.kt:4 invoke -// test.kt:8 f -// test.kt:9 f // test.kt:5 box +// test.kt:9 f +// EXPECTATIONS JVM_IR +// test.kt:5 invoke +// EXPECTATIONS JVM JVM_IR +// test.kt:12 g +// test.kt:5 invoke +// test.kt:9 f +// test.kt:10 f +// test.kt:6 box // EXPECTATIONS JS_IR -// test.kt:3 box // test.kt:4 box -// test.kt:4 g$ref -// test.kt:4 box -// test.kt:8 f -// test.kt:11 g -// test.kt:9 f // test.kt:5 box +// test.kt:5 g$ref +// test.kt:5 box +// test.kt:9 f +// test.kt:12 g +// test.kt:10 f +// test.kt:6 box diff --git a/compiler/testData/debug/stepping/nestedInline.kt b/compiler/testData/debug/stepping/nestedInline.kt index 2d39723df91..c5f019703c1 100644 --- a/compiler/testData/debug/stepping/nestedInline.kt +++ b/compiler/testData/debug/stepping/nestedInline.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // This is same as kotlin/compiler/testData/codegen/boxInline/smap/smap.kt // FILE: test.kt @@ -42,32 +43,32 @@ inline fun html(init: () -> Unit) { } // EXPECTATIONS JVM JVM_IR -// test.kt:19 box -// test.kt:7 box -// test.kt:9 box -// 1.kt:41 box -// 1.kt:29 box +// test.kt:20 box +// test.kt:8 box // test.kt:10 box -// 1.kt:37 box -// 1.kt:33 box -// 1.kt:34 box +// 1.kt:42 box +// 1.kt:30 box // test.kt:11 box -// test.kt:12 box +// 1.kt:38 box // 1.kt:34 box // 1.kt:35 box -// 1.kt:37 box +// test.kt:12 box // test.kt:13 box -// 1.kt:29 box +// 1.kt:35 box +// 1.kt:36 box +// 1.kt:38 box +// test.kt:14 box // 1.kt:30 box -// 1.kt:41 box -// test.kt:15 box -// test.kt:19 box -// test.kt:21 box +// 1.kt:31 box +// 1.kt:42 box +// test.kt:16 box +// test.kt:20 box +// test.kt:22 box // EXPECTATIONS JS_IR -// test.kt:7 box -// 1.kt:33 box -// 1.kt:36 box +// test.kt:8 box +// 1.kt:34 box // 1.kt:37 box -// test.kt:15 box -// test.kt:21 box +// 1.kt:38 box +// test.kt:16 box +// test.kt:22 box diff --git a/compiler/testData/debug/stepping/noLinenumberInInvokeOfSuspendLambda.kt b/compiler/testData/debug/stepping/noLinenumberInInvokeOfSuspendLambda.kt index 4e37f9acc20..0a247b61a92 100644 --- a/compiler/testData/debug/stepping/noLinenumberInInvokeOfSuspendLambda.kt +++ b/compiler/testData/debug/stepping/noLinenumberInInvokeOfSuspendLambda.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // WITH_STDLIB // TODO: Enable the test on JS BE, but now it is too flaky there. // TARGET_BACKEND: JVM @@ -23,34 +24,34 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:17 box -// test.kt:9 builder +// test.kt:18 box +// test.kt:10 builder // Continuation.kt:66 -// test.kt:9 builder +// test.kt:10 builder // Continuation.kt:68 getContext // test.kt:-1 // test.kt:-1 create -// test.kt:14 empty -// test.kt:18 invokeSuspend +// test.kt:15 empty // test.kt:19 invokeSuspend -// test.kt:9 builder +// test.kt:20 invokeSuspend +// test.kt:10 builder // Continuation.kt:66 -// test.kt:9 builder +// test.kt:10 builder // Continuation.kt:68 getContext // test.kt:-1 // test.kt:-1 create -// test.kt:14 empty -// test.kt:20 invokeSuspend +// test.kt:15 empty // test.kt:21 invokeSuspend -// Continuation.kt:71 resumeWith -// test.kt:10 resumeWith -// test.kt:11 resumeWith -// Continuation.kt:71 resumeWith -// test.kt:12 builder // test.kt:22 invokeSuspend // Continuation.kt:71 resumeWith -// test.kt:10 resumeWith // test.kt:11 resumeWith +// test.kt:12 resumeWith // Continuation.kt:71 resumeWith -// test.kt:12 builder -// test.kt:23 box +// test.kt:13 builder +// test.kt:23 invokeSuspend +// Continuation.kt:71 resumeWith +// test.kt:11 resumeWith +// test.kt:12 resumeWith +// Continuation.kt:71 resumeWith +// test.kt:13 builder +// test.kt:24 box diff --git a/compiler/testData/debug/stepping/noParametersArgumentCallInExpression.kt b/compiler/testData/debug/stepping/noParametersArgumentCallInExpression.kt index 05457065543..7e99eb626f3 100644 --- a/compiler/testData/debug/stepping/noParametersArgumentCallInExpression.kt +++ b/compiler/testData/debug/stepping/noParametersArgumentCallInExpression.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -13,15 +14,15 @@ inline fun lookAtMe(f: () -> Int) { } // EXPECTATIONS JVM JVM_IR -// test.kt:5 box -// test.kt:11 box -// test.kt:12 box // test.kt:6 box // test.kt:12 box // test.kt:13 box -// test.kt:8 box +// test.kt:7 box +// test.kt:13 box +// test.kt:14 box +// test.kt:9 box // EXPECTATIONS JS_IR -// test.kt:11 box // test.kt:12 box -// test.kt:8 box +// test.kt:13 box +// test.kt:9 box diff --git a/compiler/testData/debug/stepping/nullcheck.kt b/compiler/testData/debug/stepping/nullcheck.kt index d725d898b95..2947e4f129f 100644 --- a/compiler/testData/debug/stepping/nullcheck.kt +++ b/compiler/testData/debug/stepping/nullcheck.kt @@ -1,7 +1,8 @@ - +// IGNORE_BACKEND: WASM // FILE: test.kt + fun box() { test("OK") test(null) @@ -21,58 +22,58 @@ fun testExpressionBody(nullable: String?) = nullable.length == 2 // EXPECTATIONS JVM -// test.kt:6 box -// test.kt:15 test -// test.kt:13 test -// test.kt:6 box - // test.kt:7 box -// test.kt:15 test -// test.kt:13 test +// test.kt:16 test +// test.kt:14 test // test.kt:7 box // test.kt:8 box -// test.kt:21 testExpressionBody +// test.kt:16 test +// test.kt:14 test // test.kt:8 box // test.kt:9 box -// test.kt:21 testExpressionBody +// test.kt:22 testExpressionBody // test.kt:9 box // test.kt:10 box +// test.kt:22 testExpressionBody +// test.kt:10 box + +// test.kt:11 box // EXPECTATIONS JVM_IR -// test.kt:6 box -// test.kt:13 test -// test.kt:15 test -// test.kt:13 test -// test.kt:6 box - // test.kt:7 box -// test.kt:13 test -// test.kt:15 test -// test.kt:13 test +// test.kt:14 test +// test.kt:16 test +// test.kt:14 test // test.kt:7 box // test.kt:8 box -// test.kt:19 testExpressionBody -// test.kt:21 testExpressionBody +// test.kt:14 test +// test.kt:16 test +// test.kt:14 test // test.kt:8 box // test.kt:9 box -// test.kt:19 testExpressionBody -// test.kt:21 testExpressionBody +// test.kt:20 testExpressionBody +// test.kt:22 testExpressionBody // test.kt:9 box // test.kt:10 box +// test.kt:20 testExpressionBody +// test.kt:22 testExpressionBody +// test.kt:10 box + +// test.kt:11 box // EXPECTATIONS JS_IR -// test.kt:6 box -// test.kt:13 test // test.kt:7 box -// test.kt:13 test +// test.kt:14 test // test.kt:8 box -// test.kt:21 testExpressionBody +// test.kt:14 test // test.kt:9 box -// test.kt:21 testExpressionBody -// test.kt:10 box \ No newline at end of file +// test.kt:22 testExpressionBody +// test.kt:10 box +// test.kt:22 testExpressionBody +// test.kt:11 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/overridenGetterSetter.kt b/compiler/testData/debug/stepping/overridenGetterSetter.kt index 2984ca31fc5..e1da4dfe004 100644 --- a/compiler/testData/debug/stepping/overridenGetterSetter.kt +++ b/compiler/testData/debug/stepping/overridenGetterSetter.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt interface MyInterfaceWithoutBreakpoints { @@ -34,53 +35,53 @@ fun box() { // EXPECTATIONS JVM JVM_IR -// test.kt:30 box -// test.kt:15 -// test.kt:17 -// test.kt:20 -// EXPECTATIONS JVM_IR -// test.kt:15 -// EXPECTATIONS JVM JVM_IR -// test.kt:30 box // test.kt:31 box -// test.kt:15 testPropertyInInterface -// test.kt:8 testPropertyInInterface -// test.kt:17 getPropVal2 -// test.kt:8 testPropertyInInterface +// test.kt:16 +// test.kt:18 +// test.kt:21 +// EXPECTATIONS JVM_IR +// test.kt:16 +// EXPECTATIONS JVM JVM_IR +// test.kt:31 box +// test.kt:32 box +// test.kt:16 testPropertyInInterface // test.kt:9 testPropertyInInterface -// test.kt:20 getPropVar2 +// test.kt:18 getPropVal2 // test.kt:9 testPropertyInInterface // test.kt:10 testPropertyInInterface -// test.kt:20 setPropVar2 +// test.kt:21 getPropVar2 +// test.kt:10 testPropertyInInterface // test.kt:11 testPropertyInInterface -// test.kt:15 testPropertyInInterface -// test.kt:32 box -// test.kt:23 testPropertyInInterfaceImpl -// test.kt:17 getPropVal2 -// test.kt:23 testPropertyInInterfaceImpl +// test.kt:21 setPropVar2 +// test.kt:12 testPropertyInInterface +// test.kt:16 testPropertyInInterface +// test.kt:33 box // test.kt:24 testPropertyInInterfaceImpl -// test.kt:20 getPropVar2 +// test.kt:18 getPropVal2 // test.kt:24 testPropertyInInterfaceImpl // test.kt:25 testPropertyInInterfaceImpl -// test.kt:20 setPropVar2 +// test.kt:21 getPropVar2 +// test.kt:25 testPropertyInInterfaceImpl // test.kt:26 testPropertyInInterfaceImpl -// test.kt:33 box +// test.kt:21 setPropVar2 +// test.kt:27 testPropertyInInterfaceImpl +// test.kt:34 box // EXPECTATIONS JS_IR -// test.kt:30 box -// test.kt:17 -// test.kt:20 -// test.kt:15 // test.kt:31 box -// test.kt:8 testPropertyInInterface -// test.kt:17 -// test.kt:9 testPropertyInInterface -// test.kt:20 -// test.kt:10 testPropertyInInterface -// test.kt:20 -// test.kt:20 -// test.kt:11 testPropertyInInterface +// test.kt:18 +// test.kt:21 +// test.kt:16 // test.kt:32 box -// test.kt:25 testPropertyInInterfaceImpl -// test.kt:26 testPropertyInInterfaceImpl +// test.kt:9 testPropertyInInterface +// test.kt:18 +// test.kt:10 testPropertyInInterface +// test.kt:21 +// test.kt:11 testPropertyInInterface +// test.kt:21 +// test.kt:21 +// test.kt:12 testPropertyInInterface // test.kt:33 box +// test.kt:26 testPropertyInInterfaceImpl +// test.kt:27 testPropertyInInterfaceImpl +// test.kt:34 box diff --git a/compiler/testData/debug/stepping/primitiveNullChecks.kt b/compiler/testData/debug/stepping/primitiveNullChecks.kt index ef3ae278b3e..592349ff979 100644 --- a/compiler/testData/debug/stepping/primitiveNullChecks.kt +++ b/compiler/testData/debug/stepping/primitiveNullChecks.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box(): String { @@ -7,12 +8,12 @@ fun box(): String { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box // test.kt:5 box // test.kt:6 box +// test.kt:7 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:5 box // test.kt:5 box // test.kt:6 box +// test.kt:6 box +// test.kt:7 box diff --git a/compiler/testData/debug/stepping/propertyAccessor.kt b/compiler/testData/debug/stepping/propertyAccessor.kt index e31b14669d8..2c21afca212 100644 --- a/compiler/testData/debug/stepping/propertyAccessor.kt +++ b/compiler/testData/debug/stepping/propertyAccessor.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt class A { @@ -12,16 +13,16 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:11 box -// test.kt:3 -// test.kt:11 box -// test.kt:6 getProp -// test.kt:11 box // test.kt:12 box +// test.kt:4 +// test.kt:12 box +// test.kt:7 getProp +// test.kt:12 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:11 box -// test.kt:3 -// test.kt:11 box -// test.kt:6 -// test.kt:12 box \ No newline at end of file +// test.kt:12 box +// test.kt:4 +// test.kt:12 box +// test.kt:7 +// test.kt:13 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/psvm.kt b/compiler/testData/debug/stepping/psvm.kt index 2f4676396cb..def9e456bf4 100644 --- a/compiler/testData/debug/stepping/psvm.kt +++ b/compiler/testData/debug/stepping/psvm.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun main(args: Array) { @@ -9,13 +10,13 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:8 box -// test.kt:4 main -// test.kt:5 main // test.kt:9 box +// test.kt:5 main +// test.kt:6 main +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:8 box -// test.kt:4 main +// test.kt:9 box // test.kt:5 main -// test.kt:9 box \ No newline at end of file +// test.kt:6 main +// test.kt:10 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/recursion.kt b/compiler/testData/debug/stepping/recursion.kt index 560da9eeed8..61548d0ecd5 100644 --- a/compiler/testData/debug/stepping/recursion.kt +++ b/compiler/testData/debug/stepping/recursion.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { val n = 3 @@ -12,28 +13,28 @@ fun foo(n :Int ) : Int { } // EXPECTATIONS JVM JVM_IR -// test.kt:3 box -// test.kt:4 box -// test.kt:8 foo -// test.kt:11 foo -// test.kt:8 foo -// test.kt:11 foo -// test.kt:8 foo -// test.kt:9 foo -// test.kt:11 foo -// test.kt:11 foo // test.kt:4 box // test.kt:5 box +// test.kt:9 foo +// test.kt:12 foo +// test.kt:9 foo +// test.kt:12 foo +// test.kt:9 foo +// test.kt:10 foo +// test.kt:12 foo +// test.kt:12 foo +// test.kt:5 box +// test.kt:6 box // EXPECTATIONS JS_IR -// test.kt:3 box // test.kt:4 box -// test.kt:8 foo -// test.kt:11 foo -// test.kt:8 foo -// test.kt:11 foo -// test.kt:8 foo +// test.kt:5 box // test.kt:9 foo -// test.kt:11 foo -// test.kt:11 foo -// test.kt:5 box \ No newline at end of file +// test.kt:12 foo +// test.kt:9 foo +// test.kt:12 foo +// test.kt:9 foo +// test.kt:10 foo +// test.kt:12 foo +// test.kt:12 foo +// test.kt:6 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/simpleDefaultArg.kt b/compiler/testData/debug/stepping/simpleDefaultArg.kt index 74b770302b4..8f7e110e0c0 100644 --- a/compiler/testData/debug/stepping/simpleDefaultArg.kt +++ b/compiler/testData/debug/stepping/simpleDefaultArg.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun ifoo(ok: String = "OK"): String { @@ -10,11 +11,11 @@ fun box(): String { // FORCE_STEP_INTO // EXPECTATIONS JVM JVM_IR -// test.kt:8 box -// test.kt:3 ifoo$default (synthetic) -// test.kt:4 ifoo -// test.kt:3 ifoo$default (synthetic) -// test.kt:8 box +// test.kt:9 box +// test.kt:4 ifoo$default (synthetic) +// test.kt:5 ifoo +// test.kt:4 ifoo$default (synthetic) +// test.kt:9 box // EXPECTATIONS JS_IR -// test.kt:8 box \ No newline at end of file +// test.kt:9 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt b/compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt index 63d8b069d8c..0867db08b99 100644 --- a/compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt +++ b/compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -16,14 +17,14 @@ fun box(): String { // FORCE_STEP_INTO // EXPECTATIONS JVM JVM_IR -// test.kt:13 box -// test.kt:4 box +// test.kt:14 box // test.kt:5 box -// test.kt:14 box -// test.kt:8 ifoo2$default (synthetic) -// test.kt:9 ifoo2 -// test.kt:8 ifoo2$default (synthetic) -// test.kt:14 box +// test.kt:6 box +// test.kt:15 box +// test.kt:9 ifoo2$default (synthetic) +// test.kt:10 ifoo2 +// test.kt:9 ifoo2$default (synthetic) +// test.kt:15 box // EXPECTATIONS JS_IR -// test.kt:14 box +// test.kt:15 box diff --git a/compiler/testData/debug/stepping/simpleInlineDefaultArg.kt b/compiler/testData/debug/stepping/simpleInlineDefaultArg.kt index ef264b020aa..b823f1dd894 100644 --- a/compiler/testData/debug/stepping/simpleInlineDefaultArg.kt +++ b/compiler/testData/debug/stepping/simpleInlineDefaultArg.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt inline fun alsoInline() = "OK" @@ -28,14 +29,14 @@ fun box(): String { // the `$i$f$alsoInline` variable life time. // EXPECTATIONS JVM JVM_IR -// test.kt:10 box -// test.kt:5 box -// test.kt:3 box -// EXPECTATIONS JVM_IR -// test.kt:5 box -// EXPECTATIONS JVM JVM_IR +// test.kt:11 box // test.kt:6 box -// test.kt:10 box +// test.kt:4 box +// EXPECTATIONS JVM_IR +// test.kt:6 box +// EXPECTATIONS JVM JVM_IR +// test.kt:7 box +// test.kt:11 box // EXPECTATIONS JS_IR -// test.kt:10 box +// test.kt:11 box diff --git a/compiler/testData/debug/stepping/simpleSmap.kt b/compiler/testData/debug/stepping/simpleSmap.kt index d2ddb099ad3..995fa9584cf 100644 --- a/compiler/testData/debug/stepping/simpleSmap.kt +++ b/compiler/testData/debug/stepping/simpleSmap.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt @@ -13,13 +14,13 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:10 box -// test.kt:6 box // test.kt:11 box -// test.kt:12 box -// test.kt:6 box // test.kt:7 box +// test.kt:12 box // test.kt:13 box +// test.kt:7 box +// test.kt:8 box +// test.kt:14 box // EXPECTATIONS JS_IR -// test.kt:13 box +// test.kt:14 box diff --git a/compiler/testData/debug/stepping/smapInlineAsArgument.kt b/compiler/testData/debug/stepping/smapInlineAsArgument.kt index 7e106fd893b..dc2bfbc9067 100644 --- a/compiler/testData/debug/stepping/smapInlineAsArgument.kt +++ b/compiler/testData/debug/stepping/smapInlineAsArgument.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box(){ @@ -21,29 +22,29 @@ fun fail() : String { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:16 box // test.kt:5 box -// test.kt:20 fail -// test.kt:4 box -// test.kt:12 checkEquals +// test.kt:17 box +// test.kt:6 box +// test.kt:21 fail +// test.kt:5 box // test.kt:13 checkEquals -// test.kt:7 box -// test.kt:20 fail +// test.kt:14 checkEquals // test.kt:8 box -// test.kt:16 box -// test.kt:7 box -// test.kt:12 checkEquals -// test.kt:13 checkEquals +// test.kt:21 fail // test.kt:9 box +// test.kt:17 box +// test.kt:8 box +// test.kt:13 checkEquals +// test.kt:14 checkEquals +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:20 fail -// test.kt:4 box -// test.kt:13 checkEquals -// test.kt:7 box -// test.kt:20 fail -// test.kt:7 box -// test.kt:13 checkEquals -// test.kt:9 box +// test.kt:5 box +// test.kt:21 fail +// test.kt:5 box +// test.kt:14 checkEquals +// test.kt:8 box +// test.kt:21 fail +// test.kt:8 box +// test.kt:14 checkEquals +// test.kt:10 box diff --git a/compiler/testData/debug/stepping/smapInlineAsInfixArgument.kt b/compiler/testData/debug/stepping/smapInlineAsInfixArgument.kt index 6711fbc1721..a341067d82f 100644 --- a/compiler/testData/debug/stepping/smapInlineAsInfixArgument.kt +++ b/compiler/testData/debug/stepping/smapInlineAsInfixArgument.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt infix fun String.execute(p: String) = this + p @@ -19,29 +20,29 @@ fun fail() : String { } // EXPECTATIONS JVM JVM_IR -// test.kt:6 box -// test.kt:14 box // test.kt:7 box -// test.kt:18 fail -// test.kt:6 box -// test.kt:3 execute -// test.kt:6 box -// test.kt:9 box -// test.kt:18 fail +// test.kt:15 box +// test.kt:8 box +// test.kt:19 fail +// test.kt:7 box +// test.kt:4 execute +// test.kt:7 box // test.kt:10 box -// test.kt:14 box -// test.kt:9 box -// test.kt:3 execute -// test.kt:9 box +// test.kt:19 fail // test.kt:11 box +// test.kt:15 box +// test.kt:10 box +// test.kt:4 execute +// test.kt:10 box +// test.kt:12 box // EXPECTATIONS JS_IR -// test.kt:6 box -// test.kt:18 fail -// test.kt:6 box -// test.kt:3 execute -// test.kt:9 box -// test.kt:18 fail -// test.kt:9 box -// test.kt:3 execute -// test.kt:11 box +// test.kt:7 box +// test.kt:19 fail +// test.kt:7 box +// test.kt:4 execute +// test.kt:10 box +// test.kt:19 fail +// test.kt:10 box +// test.kt:4 execute +// test.kt:12 box diff --git a/compiler/testData/debug/stepping/smapInlineAsInlineArgument.kt b/compiler/testData/debug/stepping/smapInlineAsInlineArgument.kt index f132745a3e4..73603465547 100644 --- a/compiler/testData/debug/stepping/smapInlineAsInlineArgument.kt +++ b/compiler/testData/debug/stepping/smapInlineAsInlineArgument.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box(){ @@ -21,25 +22,25 @@ fun fail() : String { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:16 box // test.kt:5 box -// test.kt:20 fail +// test.kt:17 box +// test.kt:6 box +// test.kt:21 fail +// test.kt:6 box // test.kt:5 box -// test.kt:4 box -// test.kt:16 box -// test.kt:7 box -// test.kt:20 fail -// test.kt:7 box +// test.kt:17 box +// test.kt:8 box +// test.kt:21 fail // test.kt:8 box -// test.kt:16 box -// test.kt:7 box -// test.kt:16 box // test.kt:9 box +// test.kt:17 box +// test.kt:8 box +// test.kt:17 box +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:5 box -// test.kt:20 fail -// test.kt:7 box -// test.kt:20 fail -// test.kt:9 box +// test.kt:6 box +// test.kt:21 fail +// test.kt:8 box +// test.kt:21 fail +// test.kt:10 box diff --git a/compiler/testData/debug/stepping/smapInlineInIntrinsicArgument.kt b/compiler/testData/debug/stepping/smapInlineInIntrinsicArgument.kt index 5c74006ce24..314c2766c63 100644 --- a/compiler/testData/debug/stepping/smapInlineInIntrinsicArgument.kt +++ b/compiler/testData/debug/stepping/smapInlineInIntrinsicArgument.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // IGNORE_BACKEND: JVM // FILE: test.kt fun box(){ @@ -22,24 +23,24 @@ fun fail() : String { // and the JVM_IR stepping is more correct. // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// test.kt:12 box -// test.kt:4 box // test.kt:5 box -// test.kt:16 fail -// test.kt:4 box -// test.kt:7 box -// test.kt:16 fail -// test.kt:7 box +// test.kt:13 box +// test.kt:5 box +// test.kt:6 box +// test.kt:17 fail +// test.kt:5 box +// test.kt:8 box +// test.kt:17 fail // test.kt:8 box -// test.kt:12 box -// test.kt:7 box // test.kt:9 box +// test.kt:13 box +// test.kt:8 box +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:12 box -// test.kt:16 fail -// test.kt:7 box -// test.kt:16 fail -// test.kt:7 box -// test.kt:9 box +// test.kt:13 box +// test.kt:17 fail +// test.kt:8 box +// test.kt:17 fail +// test.kt:8 box +// test.kt:10 box diff --git a/compiler/testData/debug/stepping/stringSwitches.kt b/compiler/testData/debug/stepping/stringSwitches.kt index 379c189cb8c..e5d4af817e7 100644 --- a/compiler/testData/debug/stepping/stringSwitches.kt +++ b/compiler/testData/debug/stepping/stringSwitches.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun stringSwitch(x: String) { @@ -42,107 +43,107 @@ fun box() { // the first `when`. // EXPECTATIONS JVM JVM_IR -// test.kt:29 box -// test.kt:4 stringSwitch -// test.kt:5 stringSwitch -// test.kt:4 stringSwitch -// test.kt:11 stringSwitch -// test.kt:12 stringSwitch -// test.kt:11 stringSwitch -// test.kt:19 stringSwitch -// EXPECTATIONS JVM_IR -// test.kt:18 stringSwitch -// EXPECTATIONS JVM JVM_IR -// test.kt:21 stringSwitch -// test.kt:18 stringSwitch -// test.kt:26 stringSwitch // test.kt:30 box -// test.kt:4 stringSwitch -// EXPECTATIONS JVM // test.kt:5 stringSwitch -// EXPECTATIONS JVM JVM_IR // test.kt:6 stringSwitch -// test.kt:4 stringSwitch -// test.kt:11 stringSwitch +// test.kt:5 stringSwitch +// test.kt:12 stringSwitch // test.kt:13 stringSwitch -// test.kt:11 stringSwitch -// test.kt:19 stringSwitch +// test.kt:12 stringSwitch +// test.kt:20 stringSwitch // EXPECTATIONS JVM_IR -// test.kt:18 stringSwitch +// test.kt:19 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:22 stringSwitch -// test.kt:18 stringSwitch -// test.kt:26 stringSwitch +// test.kt:19 stringSwitch +// test.kt:27 stringSwitch // test.kt:31 box -// test.kt:4 stringSwitch -// EXPECTATIONS JVM // test.kt:5 stringSwitch +// EXPECTATIONS JVM // test.kt:6 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:7 stringSwitch -// test.kt:4 stringSwitch -// test.kt:11 stringSwitch +// test.kt:5 stringSwitch +// test.kt:12 stringSwitch // test.kt:14 stringSwitch -// test.kt:11 stringSwitch -// test.kt:19 stringSwitch +// test.kt:12 stringSwitch +// test.kt:20 stringSwitch // EXPECTATIONS JVM_IR -// test.kt:18 stringSwitch +// test.kt:19 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:23 stringSwitch -// test.kt:18 stringSwitch -// test.kt:26 stringSwitch +// test.kt:19 stringSwitch +// test.kt:27 stringSwitch // test.kt:32 box -// test.kt:4 stringSwitch -// EXPECTATIONS JVM // test.kt:5 stringSwitch +// EXPECTATIONS JVM // test.kt:6 stringSwitch // test.kt:7 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:8 stringSwitch -// test.kt:4 stringSwitch -// test.kt:11 stringSwitch +// test.kt:5 stringSwitch +// test.kt:12 stringSwitch // test.kt:15 stringSwitch -// test.kt:11 stringSwitch -// test.kt:19 stringSwitch +// test.kt:12 stringSwitch +// test.kt:20 stringSwitch // EXPECTATIONS JVM_IR -// test.kt:18 stringSwitch +// test.kt:19 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:24 stringSwitch -// test.kt:18 stringSwitch -// test.kt:26 stringSwitch +// test.kt:19 stringSwitch +// test.kt:27 stringSwitch // test.kt:33 box +// test.kt:5 stringSwitch +// EXPECTATIONS JVM +// test.kt:6 stringSwitch +// test.kt:7 stringSwitch +// test.kt:8 stringSwitch +// EXPECTATIONS JVM JVM_IR +// test.kt:9 stringSwitch +// test.kt:5 stringSwitch +// test.kt:12 stringSwitch +// test.kt:16 stringSwitch +// test.kt:12 stringSwitch +// test.kt:20 stringSwitch +// EXPECTATIONS JVM_IR +// test.kt:19 stringSwitch +// EXPECTATIONS JVM JVM_IR +// test.kt:25 stringSwitch +// test.kt:19 stringSwitch +// test.kt:27 stringSwitch +// test.kt:34 box // EXPECTATIONS JS_IR -// test.kt:29 box -// test.kt:4 stringSwitch -// test.kt:5 stringSwitch -// test.kt:11 stringSwitch -// test.kt:12 stringSwitch -// test.kt:18 stringSwitch -// test.kt:21 stringSwitch -// test.kt:26 stringSwitch // test.kt:30 box -// test.kt:4 stringSwitch +// test.kt:5 stringSwitch // test.kt:6 stringSwitch -// test.kt:11 stringSwitch +// test.kt:12 stringSwitch // test.kt:13 stringSwitch -// test.kt:18 stringSwitch +// test.kt:19 stringSwitch // test.kt:22 stringSwitch -// test.kt:26 stringSwitch +// test.kt:27 stringSwitch // test.kt:31 box -// test.kt:4 stringSwitch +// test.kt:5 stringSwitch // test.kt:7 stringSwitch -// test.kt:11 stringSwitch +// test.kt:12 stringSwitch // test.kt:14 stringSwitch -// test.kt:18 stringSwitch +// test.kt:19 stringSwitch // test.kt:23 stringSwitch -// test.kt:26 stringSwitch +// test.kt:27 stringSwitch // test.kt:32 box -// test.kt:4 stringSwitch +// test.kt:5 stringSwitch // test.kt:8 stringSwitch -// test.kt:11 stringSwitch +// test.kt:12 stringSwitch // test.kt:15 stringSwitch -// test.kt:18 stringSwitch +// test.kt:19 stringSwitch // test.kt:24 stringSwitch -// test.kt:26 stringSwitch +// test.kt:27 stringSwitch // test.kt:33 box +// test.kt:5 stringSwitch +// test.kt:9 stringSwitch +// test.kt:12 stringSwitch +// test.kt:16 stringSwitch +// test.kt:19 stringSwitch +// test.kt:25 stringSwitch +// test.kt:27 stringSwitch +// test.kt:34 box diff --git a/compiler/testData/debug/stepping/stringSwitchesSmall.kt b/compiler/testData/debug/stepping/stringSwitchesSmall.kt index c3fd18b2d2c..5ef52e073a1 100644 --- a/compiler/testData/debug/stepping/stringSwitchesSmall.kt +++ b/compiler/testData/debug/stepping/stringSwitchesSmall.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun stringSwitch(x: String) { @@ -38,86 +39,86 @@ fun box() { // last two whens. // EXPECTATIONS JVM JVM_IR -// test.kt:26 box -// test.kt:4 stringSwitch -// test.kt:5 stringSwitch -// test.kt:4 stringSwitch -// test.kt:10 stringSwitch -// test.kt:11 stringSwitch -// test.kt:10 stringSwitch -// test.kt:17 stringSwitch -// EXPECTATIONS JVM_IR -// test.kt:16 stringSwitch -// EXPECTATIONS JVM JVM_IR -// test.kt:19 stringSwitch -// test.kt:16 stringSwitch -// test.kt:23 stringSwitch // test.kt:27 box -// test.kt:4 stringSwitch // test.kt:5 stringSwitch // test.kt:6 stringSwitch -// test.kt:4 stringSwitch -// test.kt:10 stringSwitch -// EXPECTATIONS JVM_IR +// test.kt:5 stringSwitch // test.kt:11 stringSwitch -// EXPECTATIONS JVM JVM_IR // test.kt:12 stringSwitch -// test.kt:10 stringSwitch -// test.kt:17 stringSwitch +// test.kt:11 stringSwitch +// test.kt:18 stringSwitch // EXPECTATIONS JVM_IR -// test.kt:16 stringSwitch -// test.kt:19 stringSwitch +// test.kt:17 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:20 stringSwitch -// test.kt:16 stringSwitch -// test.kt:23 stringSwitch +// test.kt:17 stringSwitch +// test.kt:24 stringSwitch // test.kt:28 box -// test.kt:4 stringSwitch // test.kt:5 stringSwitch // test.kt:6 stringSwitch // test.kt:7 stringSwitch -// test.kt:4 stringSwitch -// test.kt:10 stringSwitch -// EXPECTATIONS JVM_IR +// test.kt:5 stringSwitch // test.kt:11 stringSwitch +// EXPECTATIONS JVM_IR // test.kt:12 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:13 stringSwitch -// test.kt:10 stringSwitch -// test.kt:17 stringSwitch +// test.kt:11 stringSwitch +// test.kt:18 stringSwitch // EXPECTATIONS JVM_IR -// test.kt:16 stringSwitch -// test.kt:19 stringSwitch +// test.kt:17 stringSwitch // test.kt:20 stringSwitch // EXPECTATIONS JVM JVM_IR // test.kt:21 stringSwitch -// test.kt:16 stringSwitch -// test.kt:23 stringSwitch +// test.kt:17 stringSwitch +// test.kt:24 stringSwitch // test.kt:29 box +// test.kt:5 stringSwitch +// test.kt:6 stringSwitch +// test.kt:7 stringSwitch +// test.kt:8 stringSwitch +// test.kt:5 stringSwitch +// test.kt:11 stringSwitch +// EXPECTATIONS JVM_IR +// test.kt:12 stringSwitch +// test.kt:13 stringSwitch +// EXPECTATIONS JVM JVM_IR +// test.kt:14 stringSwitch +// test.kt:11 stringSwitch +// test.kt:18 stringSwitch +// EXPECTATIONS JVM_IR +// test.kt:17 stringSwitch +// test.kt:20 stringSwitch +// test.kt:21 stringSwitch +// EXPECTATIONS JVM JVM_IR +// test.kt:22 stringSwitch +// test.kt:17 stringSwitch +// test.kt:24 stringSwitch +// test.kt:30 box // EXPECTATIONS JS_IR -// test.kt:26 box -// test.kt:4 stringSwitch -// test.kt:5 stringSwitch -// test.kt:10 stringSwitch -// test.kt:11 stringSwitch -// test.kt:16 stringSwitch -// test.kt:19 stringSwitch -// test.kt:23 stringSwitch // test.kt:27 box -// test.kt:4 stringSwitch +// test.kt:5 stringSwitch // test.kt:6 stringSwitch -// test.kt:10 stringSwitch +// test.kt:11 stringSwitch // test.kt:12 stringSwitch -// test.kt:16 stringSwitch +// test.kt:17 stringSwitch // test.kt:20 stringSwitch -// test.kt:23 stringSwitch +// test.kt:24 stringSwitch // test.kt:28 box -// test.kt:4 stringSwitch +// test.kt:5 stringSwitch // test.kt:7 stringSwitch -// test.kt:10 stringSwitch +// test.kt:11 stringSwitch // test.kt:13 stringSwitch -// test.kt:16 stringSwitch +// test.kt:17 stringSwitch // test.kt:21 stringSwitch -// test.kt:23 stringSwitch +// test.kt:24 stringSwitch // test.kt:29 box +// test.kt:5 stringSwitch +// test.kt:8 stringSwitch +// test.kt:11 stringSwitch +// test.kt:14 stringSwitch +// test.kt:17 stringSwitch +// test.kt:22 stringSwitch +// test.kt:24 stringSwitch +// test.kt:30 box diff --git a/compiler/testData/debug/stepping/suspendFunWithLambdaParameter.kt b/compiler/testData/debug/stepping/suspendFunWithLambdaParameter.kt index d7acd06d8d8..2a277f61078 100644 --- a/compiler/testData/debug/stepping/suspendFunWithLambdaParameter.kt +++ b/compiler/testData/debug/stepping/suspendFunWithLambdaParameter.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // WITH_STDLIB // FILE: test.kt suspend fun foo(block: Long.() -> String): String { @@ -11,16 +12,16 @@ suspend fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:8 box -// test.kt:4 foo -// test.kt:9 invoke -// test.kt:4 foo -// test.kt:8 box -// test.kt:11 box +// test.kt:9 box +// test.kt:5 foo +// test.kt:10 invoke +// test.kt:5 foo +// test.kt:9 box +// test.kt:12 box // EXPECTATIONS JS_IR -// test.kt:8 doResume -// test.kt:4 foo -// test.kt:4 foo -// test.kt:9 box$lambda -// test.kt:11 doResume +// test.kt:9 doResume +// test.kt:5 foo +// test.kt:5 foo +// test.kt:10 box$lambda +// test.kt:12 doResume diff --git a/compiler/testData/debug/stepping/suspendFunWithSuspendLambdaParameter.kt b/compiler/testData/debug/stepping/suspendFunWithSuspendLambdaParameter.kt index 733a84545b4..f8d555abdb0 100644 --- a/compiler/testData/debug/stepping/suspendFunWithSuspendLambdaParameter.kt +++ b/compiler/testData/debug/stepping/suspendFunWithSuspendLambdaParameter.kt @@ -1,5 +1,6 @@ - +// IGNORE_BACKEND: WASM // WITH_STDLIB + // FILE: test.kt suspend fun foo(block: suspend Long.() -> String): String { return 1L.block() @@ -17,16 +18,16 @@ suspend fun box() { // called via code in the kotlin package. // EXPECTATIONS JVM JVM_IR -// test.kt:9 box -// test.kt:5 foo -// test.kt:9 box -// test.kt:12 box +// test.kt:10 box +// test.kt:6 foo +// test.kt:10 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:9 doResume -// test.kt:9 box$slambda -// test.kt:9 doResume -// test.kt:6 foo -// test.kt:5 foo // test.kt:10 doResume -// test.kt:12 doResume +// test.kt:10 box$slambda +// test.kt:10 doResume +// test.kt:7 foo +// test.kt:6 foo +// test.kt:11 doResume +// test.kt:13 doResume diff --git a/compiler/testData/debug/stepping/throwException.kt b/compiler/testData/debug/stepping/throwException.kt index 8c01a89366f..6b90cc343b6 100644 --- a/compiler/testData/debug/stepping/throwException.kt +++ b/compiler/testData/debug/stepping/throwException.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { val a = 1 @@ -15,25 +16,25 @@ fun throwIfLess(a: Int, b: Int) { throw IllegalStateException() } // EXPECTATIONS JVM JVM_IR -// test.kt:3 box // test.kt:4 box // test.kt:5 box // test.kt:6 box -// test.kt:14 throwIfLess -// test.kt:15 throwIfLess // test.kt:7 box -// test.kt:8 box -// test.kt:14 throwIfLess // test.kt:15 throwIfLess +// test.kt:16 throwIfLess +// test.kt:8 box +// test.kt:9 box +// test.kt:15 throwIfLess +// test.kt:16 throwIfLess // EXPECTATIONS JS_IR -// test.kt:3 box // test.kt:4 box -// test.kt:6 box -// test.kt:14 throwIfLess +// test.kt:5 box +// test.kt:7 box // test.kt:15 throwIfLess -// test.kt:7 box -// test.kt:7 box +// test.kt:16 throwIfLess // test.kt:8 box -// test.kt:14 throwIfLess +// test.kt:8 box +// test.kt:9 box // test.kt:15 throwIfLess +// test.kt:16 throwIfLess diff --git a/compiler/testData/debug/stepping/topLevel.kt b/compiler/testData/debug/stepping/topLevel.kt index 017a07c0f46..c8b86b257f0 100644 --- a/compiler/testData/debug/stepping/topLevel.kt +++ b/compiler/testData/debug/stepping/topLevel.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo() = prop @@ -9,12 +10,12 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:8 box -// test.kt:3 foo -// test.kt:8 box // test.kt:9 box +// test.kt:4 foo +// test.kt:9 box +// test.kt:10 box // EXPECTATIONS JS_IR -// test.kt:8 box -// test.kt:3 foo -// test.kt:9 box \ No newline at end of file +// test.kt:9 box +// test.kt:4 foo +// test.kt:10 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/trait.kt b/compiler/testData/debug/stepping/trait.kt index a2a4ba3e2a5..4944808596a 100644 --- a/compiler/testData/debug/stepping/trait.kt +++ b/compiler/testData/debug/stepping/trait.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt interface A { @@ -20,39 +21,39 @@ fun box() { // on A$DefaultImpls) have the line number of the class declaration. // EXPECTATIONS JVM JVM_IR -// test.kt:14 box -// test.kt:14 -// test.kt:14 box -// test.kt:14 bar -// test.kt:7 bar -// test.kt:14 foo -// test.kt:4 foo -// test.kt:14 foo -// test.kt:7 bar -// test.kt:14 bar -// test.kt:14 box // test.kt:15 box -// test.kt:11 +// test.kt:15 // test.kt:15 box -// test.kt:11 bar -// test.kt:7 bar -// test.kt:11 foo -// test.kt:4 foo -// test.kt:11 foo -// test.kt:7 bar -// test.kt:11 bar +// test.kt:15 bar +// test.kt:8 bar +// test.kt:15 foo +// test.kt:5 foo +// test.kt:15 foo +// test.kt:8 bar +// test.kt:15 bar // test.kt:15 box // test.kt:16 box +// test.kt:12 +// test.kt:16 box +// test.kt:12 bar +// test.kt:8 bar +// test.kt:12 foo +// test.kt:5 foo +// test.kt:12 foo +// test.kt:8 bar +// test.kt:12 bar +// test.kt:16 box +// test.kt:17 box // EXPECTATIONS JS_IR -// test.kt:14 box -// test.kt:14 -// test.kt:14 box -// test.kt:7 bar -// test.kt:4 foo // test.kt:15 box -// test.kt:11 +// test.kt:15 // test.kt:15 box -// test.kt:7 bar -// test.kt:4 foo -// test.kt:16 box \ No newline at end of file +// test.kt:8 bar +// test.kt:5 foo +// test.kt:16 box +// test.kt:12 +// test.kt:16 box +// test.kt:8 bar +// test.kt:5 foo +// test.kt:17 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/tryCatch.kt b/compiler/testData/debug/stepping/tryCatch.kt index 661d04ddd6b..f736e457bb3 100644 --- a/compiler/testData/debug/stepping/tryCatch.kt +++ b/compiler/testData/debug/stepping/tryCatch.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(shouldThrow: Boolean) { @@ -15,28 +16,28 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:13 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:9 foo -// test.kt:10 foo // test.kt:14 box -// test.kt:4 foo +// test.kt:5 foo +// test.kt:6 foo +// test.kt:10 foo +// test.kt:11 foo +// test.kt:15 box // test.kt:5 foo // test.kt:6 foo // test.kt:7 foo -// test.kt:9 foo +// test.kt:8 foo // test.kt:10 foo -// test.kt:15 box +// test.kt:11 foo +// test.kt:16 box // EXPECTATIONS JS_IR -// test.kt:13 box -// test.kt:5 foo -// test.kt:10 foo // test.kt:14 box -// test.kt:5 foo -// test.kt:5 foo // test.kt:6 foo -// test.kt:6 foo -// test.kt:10 foo +// test.kt:11 foo // test.kt:15 box +// test.kt:6 foo +// test.kt:6 foo +// test.kt:7 foo +// test.kt:7 foo +// test.kt:11 foo +// test.kt:16 box diff --git a/compiler/testData/debug/stepping/tryCatchExpression.kt b/compiler/testData/debug/stepping/tryCatchExpression.kt index 55f9ee7ce5b..c1d99e107c6 100644 --- a/compiler/testData/debug/stepping/tryCatchExpression.kt +++ b/compiler/testData/debug/stepping/tryCatchExpression.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo() { @@ -48,108 +49,108 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:41 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:28 mightThrow -// test.kt:29 mightThrow -// test.kt:5 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:32 mightThrow2 -// test.kt:33 mightThrow2 -// test.kt:11 foo -// test.kt:10 foo -// test.kt:16 foo -// test.kt:17 foo -// test.kt:36 mightThrow3 -// test.kt:37 mightThrow3 -// test.kt:17 foo -// test.kt:16 foo -// test.kt:21 foo // test.kt:42 box -// test.kt:43 box -// test.kt:4 foo // test.kt:5 foo -// test.kt:28 mightThrow -// test.kt:29 mightThrow -// test.kt:5 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:32 mightThrow2 -// test.kt:33 mightThrow2 -// test.kt:11 foo -// test.kt:10 foo -// test.kt:16 foo -// test.kt:17 foo -// test.kt:36 mightThrow3 -// test.kt:18 foo -// test.kt:19 foo -// test.kt:44 box -// test.kt:45 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:28 mightThrow -// test.kt:29 mightThrow -// test.kt:5 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:32 mightThrow2 -// test.kt:12 foo -// test.kt:13 foo -// test.kt:46 box -// test.kt:47 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:28 mightThrow // test.kt:6 foo -// test.kt:7 foo +// test.kt:29 mightThrow +// test.kt:30 mightThrow +// test.kt:6 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:33 mightThrow2 +// test.kt:34 mightThrow2 +// test.kt:12 foo +// test.kt:11 foo +// test.kt:17 foo +// test.kt:18 foo +// test.kt:37 mightThrow3 +// test.kt:38 mightThrow3 +// test.kt:18 foo +// test.kt:17 foo +// test.kt:22 foo +// test.kt:43 box +// test.kt:44 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:29 mightThrow +// test.kt:30 mightThrow +// test.kt:6 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:33 mightThrow2 +// test.kt:34 mightThrow2 +// test.kt:12 foo +// test.kt:11 foo +// test.kt:17 foo +// test.kt:18 foo +// test.kt:37 mightThrow3 +// test.kt:19 foo +// test.kt:20 foo +// test.kt:45 box +// test.kt:46 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:29 mightThrow +// test.kt:30 mightThrow +// test.kt:6 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:33 mightThrow2 +// test.kt:13 foo +// test.kt:14 foo +// test.kt:47 box // test.kt:48 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:29 mightThrow +// test.kt:7 foo +// test.kt:8 foo +// test.kt:49 box // EXPECTATIONS JS_IR -// test.kt:41 box -// test.kt:5 foo -// test.kt:28 mightThrow -// test.kt:29 mightThrow -// test.kt:11 foo -// test.kt:32 mightThrow2 -// test.kt:33 mightThrow2 -// test.kt:10 foo -// test.kt:17 foo -// test.kt:36 mightThrow3 -// test.kt:37 mightThrow3 -// test.kt:16 foo -// test.kt:21 foo // test.kt:42 box -// test.kt:43 box -// test.kt:5 foo -// test.kt:28 mightThrow +// test.kt:6 foo // test.kt:29 mightThrow -// test.kt:11 foo -// test.kt:32 mightThrow2 -// test.kt:33 mightThrow2 -// test.kt:10 foo -// test.kt:17 foo -// test.kt:36 mightThrow3 -// test.kt:36 mightThrow3 -// test.kt:18 foo -// test.kt:19 foo -// test.kt:44 box -// test.kt:45 box -// test.kt:5 foo -// test.kt:28 mightThrow -// test.kt:29 mightThrow -// test.kt:11 foo -// test.kt:32 mightThrow2 -// test.kt:32 mightThrow2 +// test.kt:30 mightThrow // test.kt:12 foo -// test.kt:13 foo +// test.kt:33 mightThrow2 +// test.kt:34 mightThrow2 +// test.kt:11 foo +// test.kt:18 foo +// test.kt:37 mightThrow3 +// test.kt:38 mightThrow3 +// test.kt:17 foo +// test.kt:22 foo +// test.kt:43 box +// test.kt:44 box +// test.kt:6 foo +// test.kt:29 mightThrow +// test.kt:30 mightThrow +// test.kt:12 foo +// test.kt:33 mightThrow2 +// test.kt:34 mightThrow2 +// test.kt:11 foo +// test.kt:18 foo +// test.kt:37 mightThrow3 +// test.kt:37 mightThrow3 +// test.kt:19 foo +// test.kt:20 foo +// test.kt:45 box // test.kt:46 box +// test.kt:6 foo +// test.kt:29 mightThrow +// test.kt:30 mightThrow +// test.kt:12 foo +// test.kt:33 mightThrow2 +// test.kt:33 mightThrow2 +// test.kt:13 foo +// test.kt:14 foo // test.kt:47 box -// test.kt:5 foo -// test.kt:28 mightThrow -// test.kt:28 mightThrow -// test.kt:6 foo -// test.kt:6 foo -// test.kt:7 foo // test.kt:48 box +// test.kt:6 foo +// test.kt:29 mightThrow +// test.kt:29 mightThrow +// test.kt:7 foo +// test.kt:7 foo +// test.kt:8 foo +// test.kt:49 box diff --git a/compiler/testData/debug/stepping/tryCatchFinally.kt b/compiler/testData/debug/stepping/tryCatchFinally.kt index bcceb3a4c9a..d9d50a72901 100644 --- a/compiler/testData/debug/stepping/tryCatchFinally.kt +++ b/compiler/testData/debug/stepping/tryCatchFinally.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo() { @@ -38,93 +39,93 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:33 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:25 mightThrow -// test.kt:26 mightThrow -// test.kt:9 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:13 foo -// test.kt:29 mightThrow2 -// test.kt:30 mightThrow2 -// test.kt:13 foo -// test.kt:17 foo -// test.kt:18 foo -// test.kt:12 foo -// test.kt:19 foo // test.kt:34 box -// test.kt:35 box -// test.kt:4 foo // test.kt:5 foo -// test.kt:25 mightThrow -// test.kt:26 mightThrow -// test.kt:9 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:13 foo -// test.kt:29 mightThrow2 -// test.kt:14 foo -// test.kt:15 foo -// test.kt:17 foo -// test.kt:18 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:36 box -// test.kt:37 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:25 mightThrow // test.kt:6 foo -// test.kt:7 foo -// test.kt:9 foo +// test.kt:26 mightThrow +// test.kt:27 mightThrow // test.kt:10 foo -// test.kt:12 foo +// test.kt:11 foo // test.kt:13 foo -// test.kt:29 mightThrow2 // test.kt:14 foo -// test.kt:15 foo -// test.kt:17 foo +// test.kt:30 mightThrow2 +// test.kt:31 mightThrow2 +// test.kt:14 foo // test.kt:18 foo -// test.kt:12 foo // test.kt:19 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:35 box +// test.kt:36 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:26 mightThrow +// test.kt:27 mightThrow +// test.kt:10 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:14 foo +// test.kt:30 mightThrow2 +// test.kt:15 foo +// test.kt:16 foo +// test.kt:18 foo +// test.kt:19 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:37 box // test.kt:38 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:26 mightThrow +// test.kt:7 foo +// test.kt:8 foo +// test.kt:10 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:14 foo +// test.kt:30 mightThrow2 +// test.kt:15 foo +// test.kt:16 foo +// test.kt:18 foo +// test.kt:19 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:39 box // EXPECTATIONS JS_IR -// test.kt:33 box -// test.kt:5 foo -// test.kt:25 mightThrow -// test.kt:26 mightThrow -// test.kt:13 foo -// test.kt:29 mightThrow2 -// test.kt:30 mightThrow2 -// test.kt:12 foo -// test.kt:19 foo // test.kt:34 box -// test.kt:35 box -// test.kt:5 foo -// test.kt:25 mightThrow +// test.kt:6 foo // test.kt:26 mightThrow -// test.kt:13 foo -// test.kt:29 mightThrow2 -// test.kt:29 mightThrow2 +// test.kt:27 mightThrow // test.kt:14 foo -// test.kt:15 foo -// test.kt:12 foo -// test.kt:19 foo +// test.kt:30 mightThrow2 +// test.kt:31 mightThrow2 +// test.kt:13 foo +// test.kt:20 foo +// test.kt:35 box // test.kt:36 box -// test.kt:37 box -// test.kt:5 foo -// test.kt:25 mightThrow -// test.kt:25 mightThrow // test.kt:6 foo -// test.kt:6 foo -// test.kt:13 foo -// test.kt:29 mightThrow2 -// test.kt:29 mightThrow2 +// test.kt:26 mightThrow +// test.kt:27 mightThrow // test.kt:14 foo +// test.kt:30 mightThrow2 +// test.kt:30 mightThrow2 // test.kt:15 foo -// test.kt:12 foo -// test.kt:19 foo +// test.kt:16 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:37 box // test.kt:38 box +// test.kt:6 foo +// test.kt:26 mightThrow +// test.kt:26 mightThrow +// test.kt:7 foo +// test.kt:7 foo +// test.kt:14 foo +// test.kt:30 mightThrow2 +// test.kt:30 mightThrow2 +// test.kt:15 foo +// test.kt:16 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:39 box diff --git a/compiler/testData/debug/stepping/tryFinally.kt b/compiler/testData/debug/stepping/tryFinally.kt index bedf6b38172..7186d1fa2c4 100644 --- a/compiler/testData/debug/stepping/tryFinally.kt +++ b/compiler/testData/debug/stepping/tryFinally.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo() { @@ -40,56 +41,56 @@ fun box() { // try-finally where the value is discarded which seems good. // EXPECTATIONS JVM JVM_IR -// test.kt:29 box -// test.kt:4 foo +// test.kt:30 box // test.kt:5 foo -// test.kt:21 mightThrow +// test.kt:6 foo // test.kt:22 mightThrow -// test.kt:7 foo +// test.kt:23 mightThrow // test.kt:8 foo -// test.kt:10 foo +// test.kt:9 foo // test.kt:11 foo -// test.kt:25 mightThrow2 +// test.kt:12 foo +// test.kt:26 mightThrow2 +// test.kt:27 mightThrow2 +// EXPECTATIONS JVM +// test.kt:12 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:14 foo +// test.kt:15 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:31 box +// test.kt:32 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:22 mightThrow +// test.kt:23 mightThrow +// test.kt:8 foo +// test.kt:9 foo +// test.kt:11 foo +// test.kt:12 foo // test.kt:26 mightThrow2 // EXPECTATIONS JVM -// test.kt:11 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:13 foo -// test.kt:14 foo -// test.kt:10 foo // test.kt:15 foo -// test.kt:30 box -// test.kt:31 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:21 mightThrow -// test.kt:22 mightThrow -// test.kt:7 foo -// test.kt:8 foo -// test.kt:10 foo // test.kt:11 foo -// test.kt:25 mightThrow2 -// EXPECTATIONS JVM -// test.kt:14 foo -// test.kt:10 foo // EXPECTATIONS JVM_IR -// test.kt:13 foo +// test.kt:14 foo // EXPECTATIONS JS_IR -// test.kt:29 box -// test.kt:5 foo -// test.kt:21 mightThrow -// test.kt:22 mightThrow -// test.kt:11 foo -// test.kt:25 mightThrow2 -// test.kt:26 mightThrow2 -// test.kt:10 foo -// test.kt:15 foo // test.kt:30 box -// test.kt:31 box -// test.kt:5 foo -// test.kt:21 mightThrow +// test.kt:6 foo // test.kt:22 mightThrow +// test.kt:23 mightThrow +// test.kt:12 foo +// test.kt:26 mightThrow2 +// test.kt:27 mightThrow2 // test.kt:11 foo -// test.kt:25 mightThrow2 -// test.kt:25 mightThrow2 \ No newline at end of file +// test.kt:16 foo +// test.kt:31 box +// test.kt:32 box +// test.kt:6 foo +// test.kt:22 mightThrow +// test.kt:23 mightThrow +// test.kt:12 foo +// test.kt:26 mightThrow2 +// test.kt:26 mightThrow2 \ No newline at end of file diff --git a/compiler/testData/debug/stepping/variablesWithoutInitializer.kt b/compiler/testData/debug/stepping/variablesWithoutInitializer.kt index 09c9aedfc24..a4ec03d5a2d 100644 --- a/compiler/testData/debug/stepping/variablesWithoutInitializer.kt +++ b/compiler/testData/debug/stepping/variablesWithoutInitializer.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -17,18 +18,18 @@ fun box() { // The JVM backend does generate these line numbers as well. // EXPECTATIONS JVM JVM_IR -// test.kt:4 box // test.kt:5 box // test.kt:6 box // test.kt:7 box // test.kt:8 box // test.kt:9 box // test.kt:10 box -// test.kt:12 box +// test.kt:11 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:7 box // test.kt:8 box // test.kt:9 box // test.kt:10 box -// test.kt:12 box \ No newline at end of file +// test.kt:11 box +// test.kt:13 box \ No newline at end of file diff --git a/compiler/testData/debug/stepping/voidLambdaStepInline.kt b/compiler/testData/debug/stepping/voidLambdaStepInline.kt index f5385494d07..7eb9f8e5bbd 100644 --- a/compiler/testData/debug/stepping/voidLambdaStepInline.kt +++ b/compiler/testData/debug/stepping/voidLambdaStepInline.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box(): String { @@ -9,13 +10,13 @@ fun box(): String { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box +// test.kt:5 box // fake.kt:1 box -// test.kt:4 box // test.kt:5 box // test.kt:6 box -// test.kt:5 box -// test.kt:8 box +// test.kt:7 box +// test.kt:6 box +// test.kt:9 box // EXPECTATIONS JS_IR -// test.kt:8 box +// test.kt:9 box diff --git a/compiler/testData/debug/stepping/when.kt b/compiler/testData/debug/stepping/when.kt index e03ac225ff7..9f47fdff4d8 100644 --- a/compiler/testData/debug/stepping/when.kt +++ b/compiler/testData/debug/stepping/when.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Int) { @@ -24,139 +25,139 @@ fun box() { // JVM_IR stepping behavior here is the same as for `whenSubject.kt`. // EXPECTATIONS JVM JVM_IR -// test.kt:18 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:4 foo -// EXPECTATIONS JVM -// test.kt:5 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:6 foo -// test.kt:4 foo -// EXPECTATIONS JVM -// test.kt:5 foo -// test.kt:6 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:7 foo -// test.kt:10 foo -// EXPECTATIONS JVM -// test.kt:11 foo -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:6 foo -// test.kt:10 foo -// EXPECTATIONS JVM -// test.kt:11 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:12 foo -// test.kt:4 foo -// EXPECTATIONS JVM -// test.kt:5 foo -// test.kt:6 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:7 foo -// test.kt:10 foo -// EXPECTATIONS JVM -// test.kt:11 foo -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:12 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:5 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:4 foo -// EXPECTATIONS JVM -// test.kt:5 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:6 foo -// test.kt:4 foo -// EXPECTATIONS JVM -// test.kt:5 foo -// test.kt:6 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:7 foo -// test.kt:10 foo -// EXPECTATIONS JVM -// test.kt:11 foo -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:6 foo -// test.kt:10 foo -// EXPECTATIONS JVM -// test.kt:11 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:12 foo -// test.kt:4 foo -// EXPECTATIONS JVM -// test.kt:5 foo -// test.kt:6 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:7 foo -// test.kt:10 foo -// EXPECTATIONS JVM -// test.kt:11 foo -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:12 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:11 foo -// test.kt:10 foo -// test.kt:15 foo // test.kt:19 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:5 foo +// EXPECTATIONS JVM +// test.kt:6 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:7 foo +// test.kt:5 foo +// EXPECTATIONS JVM +// test.kt:6 foo +// test.kt:7 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:8 foo +// test.kt:11 foo +// EXPECTATIONS JVM +// test.kt:12 foo +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:7 foo +// test.kt:11 foo +// EXPECTATIONS JVM +// test.kt:12 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:13 foo +// test.kt:5 foo +// EXPECTATIONS JVM +// test.kt:6 foo +// test.kt:7 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:8 foo +// test.kt:11 foo +// EXPECTATIONS JVM +// test.kt:12 foo +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:13 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:6 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:5 foo +// EXPECTATIONS JVM +// test.kt:6 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:7 foo +// test.kt:5 foo +// EXPECTATIONS JVM +// test.kt:6 foo +// test.kt:7 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:8 foo +// test.kt:11 foo +// EXPECTATIONS JVM +// test.kt:12 foo +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:7 foo +// test.kt:11 foo +// EXPECTATIONS JVM +// test.kt:12 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:13 foo +// test.kt:5 foo +// EXPECTATIONS JVM +// test.kt:6 foo +// test.kt:7 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:8 foo +// test.kt:11 foo +// EXPECTATIONS JVM +// test.kt:12 foo +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:13 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:12 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:20 box // EXPECTATIONS JS_IR -// test.kt:18 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:4 foo -// test.kt:6 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:4 foo -// test.kt:6 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:15 foo // test.kt:19 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:5 foo +// test.kt:7 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:5 foo +// test.kt:7 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:20 box diff --git a/compiler/testData/debug/stepping/whenComplicatedSubject.kt b/compiler/testData/debug/stepping/whenComplicatedSubject.kt index b74a37e6c7c..253e30eadf8 100644 --- a/compiler/testData/debug/stepping/whenComplicatedSubject.kt +++ b/compiler/testData/debug/stepping/whenComplicatedSubject.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Int) { @@ -22,43 +23,43 @@ fun box() { // right case without stepping through evaluation of each condition. // EXPECTATIONS JVM JVM_IR -// test.kt:16 box -// test.kt:5 foo -// test.kt:6 foo -// test.kt:4 foo -// test.kt:11 foo -// test.kt:13 foo // test.kt:17 box -// test.kt:5 foo -// EXPECTATIONS JVM // test.kt:6 foo -// EXPECTATIONS JVM JVM_IR // test.kt:7 foo -// test.kt:4 foo -// test.kt:13 foo -// test.kt:18 box // test.kt:5 foo -// EXPECTATIONS JVM +// test.kt:12 foo +// test.kt:14 foo +// test.kt:18 box // test.kt:6 foo +// EXPECTATIONS JVM // test.kt:7 foo // EXPECTATIONS JVM JVM_IR // test.kt:8 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo +// test.kt:5 foo +// test.kt:14 foo // test.kt:19 box +// test.kt:6 foo +// EXPECTATIONS JVM +// test.kt:7 foo +// test.kt:8 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:9 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:20 box // EXPECTATIONS JS_IR -// test.kt:16 box -// test.kt:5 foo -// test.kt:6 foo -// test.kt:13 foo // test.kt:17 box -// test.kt:5 foo +// test.kt:6 foo // test.kt:7 foo -// test.kt:13 foo +// test.kt:14 foo // test.kt:18 box -// test.kt:5 foo +// test.kt:6 foo // test.kt:8 foo -// test.kt:13 foo +// test.kt:14 foo // test.kt:19 box +// test.kt:6 foo +// test.kt:9 foo +// test.kt:14 foo +// test.kt:20 box diff --git a/compiler/testData/debug/stepping/whenConstant.kt b/compiler/testData/debug/stepping/whenConstant.kt index ce0a54e5204..112e53fe489 100644 --- a/compiler/testData/debug/stepping/whenConstant.kt +++ b/compiler/testData/debug/stepping/whenConstant.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -14,14 +15,14 @@ fun box() { // JVM_IR and JVM backends have different heuristics for when to use a switch. // EXPECTATIONS JVM JVM_IR -// test.kt:4 box -// EXPECTATIONS JVM_IR // test.kt:5 box -// test.kt:7 box +// EXPECTATIONS JVM_IR +// test.kt:6 box +// test.kt:8 box // EXPECTATIONS JVM JVM_IR -// test.kt:10 box -// test.kt:12 box +// test.kt:11 box +// test.kt:13 box // EXPECTATIONS JS_IR -// test.kt:4 box -// test.kt:12 box +// test.kt:5 box +// test.kt:13 box diff --git a/compiler/testData/debug/stepping/whenExpr.kt b/compiler/testData/debug/stepping/whenExpr.kt index 8c0e19e717a..636cb2df104 100644 --- a/compiler/testData/debug/stepping/whenExpr.kt +++ b/compiler/testData/debug/stepping/whenExpr.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -16,14 +17,14 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box // test.kt:5 box // test.kt:6 box -// test.kt:9 box -// test.kt:13 box -// test.kt:16 box +// test.kt:7 box +// test.kt:10 box +// test.kt:14 box +// test.kt:17 box // EXPECTATIONS JS_IR -// test.kt:4 box // test.kt:5 box -// test.kt:16 box +// test.kt:6 box +// test.kt:17 box diff --git a/compiler/testData/debug/stepping/whenIsChecks.kt b/compiler/testData/debug/stepping/whenIsChecks.kt index 422c0c02654..0d1765287f1 100644 --- a/compiler/testData/debug/stepping/whenIsChecks.kt +++ b/compiler/testData/debug/stepping/whenIsChecks.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Any) { @@ -18,30 +19,30 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:15 box -// test.kt:4 foo +// test.kt:16 box // test.kt:5 foo // test.kt:6 foo -// test.kt:12 foo -// test.kt:16 box -// test.kt:4 foo -// test.kt:5 foo // test.kt:7 foo -// test.kt:8 foo -// test.kt:12 foo +// test.kt:13 foo // test.kt:17 box -// test.kt:4 foo // test.kt:5 foo -// test.kt:7 foo -// test.kt:10 foo -// test.kt:12 foo +// test.kt:6 foo +// test.kt:8 foo +// test.kt:9 foo +// test.kt:13 foo // test.kt:18 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:8 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:19 box // EXPECTATIONS JS_IR -// test.kt:15 box -// test.kt:12 foo // test.kt:16 box -// test.kt:12 foo +// test.kt:13 foo // test.kt:17 box -// test.kt:12 foo +// test.kt:13 foo // test.kt:18 box +// test.kt:13 foo +// test.kt:19 box diff --git a/compiler/testData/debug/stepping/whenMultiLine.kt b/compiler/testData/debug/stepping/whenMultiLine.kt index a311e3e824c..3f420736f0f 100644 --- a/compiler/testData/debug/stepping/whenMultiLine.kt +++ b/compiler/testData/debug/stepping/whenMultiLine.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Int): Int { @@ -34,68 +35,68 @@ fun box() { // JVM_IR stepping behavior here is the same as for `whenMultiLineSubject.kt`. // EXPECTATIONS JVM JVM_IR -// test.kt:26 box -// test.kt:4 foo -// EXPECTATIONS JVM -// test.kt:5 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:6 foo -// test.kt:13 foo -// EXPECTATIONS JVM -// test.kt:14 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:15 foo -// test.kt:13 foo -// test.kt:22 foo -// test.kt:26 box // test.kt:27 box -// test.kt:4 foo -// EXPECTATIONS JVM // test.kt:5 foo -// test.kt:7 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:8 foo -// test.kt:13 foo // EXPECTATIONS JVM -// test.kt:14 foo -// test.kt:16 foo +// test.kt:6 foo // EXPECTATIONS JVM JVM_IR -// test.kt:17 foo -// test.kt:13 foo -// test.kt:22 foo +// test.kt:7 foo +// test.kt:14 foo +// EXPECTATIONS JVM +// test.kt:15 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:16 foo +// test.kt:14 foo +// test.kt:23 foo // test.kt:27 box // test.kt:28 box -// test.kt:4 foo -// EXPECTATIONS JVM // test.kt:5 foo -// test.kt:7 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:10 foo -// test.kt:13 foo // EXPECTATIONS JVM -// test.kt:14 foo -// test.kt:16 foo +// test.kt:6 foo +// test.kt:8 foo // EXPECTATIONS JVM JVM_IR -// test.kt:19 foo -// test.kt:13 foo -// test.kt:22 foo +// test.kt:9 foo +// test.kt:14 foo +// EXPECTATIONS JVM +// test.kt:15 foo +// test.kt:17 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:18 foo +// test.kt:14 foo +// test.kt:23 foo // test.kt:28 box // test.kt:29 box +// test.kt:5 foo +// EXPECTATIONS JVM +// test.kt:6 foo +// test.kt:8 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:11 foo +// test.kt:14 foo +// EXPECTATIONS JVM +// test.kt:15 foo +// test.kt:17 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:20 foo +// test.kt:14 foo +// test.kt:23 foo +// test.kt:29 box +// test.kt:30 box // EXPECTATIONS JS_IR -// test.kt:26 box -// test.kt:4 foo -// test.kt:13 foo -// test.kt:15 foo -// test.kt:22 foo // test.kt:27 box -// test.kt:4 foo -// test.kt:13 foo -// test.kt:17 foo -// test.kt:22 foo +// test.kt:5 foo +// test.kt:14 foo +// test.kt:16 foo +// test.kt:23 foo // test.kt:28 box -// test.kt:4 foo -// test.kt:13 foo -// test.kt:19 foo -// test.kt:22 foo +// test.kt:5 foo +// test.kt:14 foo +// test.kt:18 foo +// test.kt:23 foo // test.kt:29 box +// test.kt:5 foo +// test.kt:14 foo +// test.kt:20 foo +// test.kt:23 foo +// test.kt:30 box diff --git a/compiler/testData/debug/stepping/whenMultiLineSubject.kt b/compiler/testData/debug/stepping/whenMultiLineSubject.kt index acf29cf2df5..c00474253fc 100644 --- a/compiler/testData/debug/stepping/whenMultiLineSubject.kt +++ b/compiler/testData/debug/stepping/whenMultiLineSubject.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Int): Int { @@ -29,46 +30,46 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:26 box -// test.kt:4 foo -// test.kt:6 foo -// test.kt:13 foo -// test.kt:15 foo -// test.kt:13 foo -// test.kt:22 foo -// test.kt:26 box // test.kt:27 box -// test.kt:4 foo -// test.kt:8 foo -// test.kt:13 foo -// test.kt:17 foo -// test.kt:13 foo -// test.kt:22 foo +// test.kt:5 foo +// test.kt:7 foo +// test.kt:14 foo +// test.kt:16 foo +// test.kt:14 foo +// test.kt:23 foo // test.kt:27 box // test.kt:28 box -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:19 foo -// test.kt:13 foo -// test.kt:22 foo +// test.kt:5 foo +// test.kt:9 foo +// test.kt:14 foo +// test.kt:18 foo +// test.kt:14 foo +// test.kt:23 foo // test.kt:28 box // test.kt:29 box +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:20 foo +// test.kt:14 foo +// test.kt:23 foo +// test.kt:29 box +// test.kt:30 box // EXPECTATIONS JS_IR -// test.kt:26 box -// test.kt:4 foo -// test.kt:13 foo -// test.kt:15 foo -// test.kt:22 foo // test.kt:27 box -// test.kt:4 foo -// test.kt:13 foo -// test.kt:17 foo -// test.kt:22 foo +// test.kt:5 foo +// test.kt:14 foo +// test.kt:16 foo +// test.kt:23 foo // test.kt:28 box -// test.kt:4 foo -// test.kt:13 foo -// test.kt:19 foo -// test.kt:22 foo +// test.kt:5 foo +// test.kt:14 foo +// test.kt:18 foo +// test.kt:23 foo // test.kt:29 box +// test.kt:5 foo +// test.kt:14 foo +// test.kt:20 foo +// test.kt:23 foo +// test.kt:30 box diff --git a/compiler/testData/debug/stepping/whenNullalbeSubject.kt b/compiler/testData/debug/stepping/whenNullalbeSubject.kt index 4caf0ae7a8e..d638d3085a5 100644 --- a/compiler/testData/debug/stepping/whenNullalbeSubject.kt +++ b/compiler/testData/debug/stepping/whenNullalbeSubject.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -16,14 +17,14 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box // test.kt:5 box // test.kt:6 box -// test.kt:9 box -// test.kt:13 box -// test.kt:16 box +// test.kt:7 box +// test.kt:10 box +// test.kt:14 box +// test.kt:17 box // EXPECTATIONS JS_IR -// test.kt:4 box // test.kt:5 box -// test.kt:16 box +// test.kt:6 box +// test.kt:17 box diff --git a/compiler/testData/debug/stepping/whenSubject.kt b/compiler/testData/debug/stepping/whenSubject.kt index 4312a496ec0..cd49bf293db 100644 --- a/compiler/testData/debug/stepping/whenSubject.kt +++ b/compiler/testData/debug/stepping/whenSubject.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Int) { @@ -19,95 +20,95 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:18 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:4 foo -// test.kt:6 foo -// test.kt:4 foo -// test.kt:7 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:6 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:4 foo -// test.kt:7 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:12 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:5 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:4 foo -// test.kt:6 foo -// test.kt:4 foo -// test.kt:7 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:6 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:4 foo -// test.kt:7 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:12 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:11 foo -// test.kt:10 foo -// test.kt:15 foo // test.kt:19 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:5 foo +// test.kt:7 foo +// test.kt:5 foo +// test.kt:8 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:7 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:5 foo +// test.kt:8 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:13 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:6 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:5 foo +// test.kt:7 foo +// test.kt:5 foo +// test.kt:8 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:7 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:5 foo +// test.kt:8 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:13 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:12 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:20 box // EXPECTATIONS JS_IR -// test.kt:18 box -// test.kt:4 foo -// test.kt:5 foo -// test.kt:4 foo -// test.kt:6 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:11 foo -// test.kt:4 foo -// test.kt:6 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:12 foo -// test.kt:4 foo -// test.kt:10 foo -// test.kt:13 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:15 foo -// test.kt:10 foo -// test.kt:15 foo // test.kt:19 box +// test.kt:5 foo +// test.kt:6 foo +// test.kt:5 foo +// test.kt:7 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:12 foo +// test.kt:5 foo +// test.kt:7 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:13 foo +// test.kt:5 foo +// test.kt:11 foo +// test.kt:14 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:11 foo +// test.kt:16 foo +// test.kt:20 box diff --git a/compiler/testData/debug/stepping/whenSubject2.kt b/compiler/testData/debug/stepping/whenSubject2.kt index dbcbb73ee05..d4fae7023f0 100644 --- a/compiler/testData/debug/stepping/whenSubject2.kt +++ b/compiler/testData/debug/stepping/whenSubject2.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun foo(x: Int) { @@ -27,137 +28,137 @@ fun box() { // then goes to the right branch. // EXPECTATIONS JVM JVM_IR -// test.kt:22 box -// test.kt:5 foo -// EXPECTATIONS JVM_IR -// test.kt:4 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:7 foo -// test.kt:5 foo -// EXPECTATIONS JVM_IR -// test.kt:4 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:8 foo -// test.kt:5 foo -// EXPECTATIONS JVM_IR -// test.kt:4 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:9 foo -// test.kt:13 foo -// EXPECTATIONS JVM_IR -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:8 foo -// test.kt:13 foo -// EXPECTATIONS JVM_IR -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:16 foo -// test.kt:5 foo -// EXPECTATIONS JVM_IR -// test.kt:4 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:9 foo -// test.kt:13 foo -// EXPECTATIONS JVM_IR -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:16 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:7 foo -// test.kt:13 foo -// EXPECTATIONS JVM_IR -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:15 foo -// test.kt:5 foo -// EXPECTATIONS JVM_IR -// test.kt:4 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:8 foo -// test.kt:5 foo -// EXPECTATIONS JVM_IR -// test.kt:4 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:9 foo -// test.kt:13 foo -// EXPECTATIONS JVM_IR -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:8 foo -// test.kt:13 foo -// EXPECTATIONS JVM_IR -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:16 foo -// test.kt:5 foo -// EXPECTATIONS JVM_IR -// test.kt:4 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:9 foo -// test.kt:13 foo -// EXPECTATIONS JVM_IR -// test.kt:12 foo -// EXPECTATIONS JVM JVM_IR -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:16 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:15 foo -// test.kt:12 foo -// test.kt:19 foo // test.kt:23 box +// test.kt:6 foo +// EXPECTATIONS JVM_IR +// test.kt:5 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:8 foo +// test.kt:6 foo +// EXPECTATIONS JVM_IR +// test.kt:5 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:9 foo +// test.kt:6 foo +// EXPECTATIONS JVM_IR +// test.kt:5 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:10 foo +// test.kt:14 foo +// EXPECTATIONS JVM_IR +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:9 foo +// test.kt:14 foo +// EXPECTATIONS JVM_IR +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:17 foo +// test.kt:6 foo +// EXPECTATIONS JVM_IR +// test.kt:5 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:10 foo +// test.kt:14 foo +// EXPECTATIONS JVM_IR +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:17 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:8 foo +// test.kt:14 foo +// EXPECTATIONS JVM_IR +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:16 foo +// test.kt:6 foo +// EXPECTATIONS JVM_IR +// test.kt:5 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:9 foo +// test.kt:6 foo +// EXPECTATIONS JVM_IR +// test.kt:5 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:10 foo +// test.kt:14 foo +// EXPECTATIONS JVM_IR +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:9 foo +// test.kt:14 foo +// EXPECTATIONS JVM_IR +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:17 foo +// test.kt:6 foo +// EXPECTATIONS JVM_IR +// test.kt:5 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:10 foo +// test.kt:14 foo +// EXPECTATIONS JVM_IR +// test.kt:13 foo +// EXPECTATIONS JVM JVM_IR +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:17 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:16 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:24 box // EXPECTATIONS JS_IR -// test.kt:22 box -// test.kt:4 foo -// test.kt:7 foo -// test.kt:4 foo -// test.kt:8 foo -// test.kt:4 foo -// test.kt:12 foo -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:12 foo -// test.kt:16 foo -// test.kt:4 foo -// test.kt:12 foo -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:12 foo -// test.kt:15 foo -// test.kt:4 foo -// test.kt:8 foo -// test.kt:4 foo -// test.kt:12 foo -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:12 foo -// test.kt:16 foo -// test.kt:4 foo -// test.kt:12 foo -// test.kt:17 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:12 foo -// test.kt:19 foo -// test.kt:12 foo -// test.kt:19 foo // test.kt:23 box +// test.kt:5 foo +// test.kt:8 foo +// test.kt:5 foo +// test.kt:9 foo +// test.kt:5 foo +// test.kt:13 foo +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:13 foo +// test.kt:17 foo +// test.kt:5 foo +// test.kt:13 foo +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:13 foo +// test.kt:16 foo +// test.kt:5 foo +// test.kt:9 foo +// test.kt:5 foo +// test.kt:13 foo +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:13 foo +// test.kt:17 foo +// test.kt:5 foo +// test.kt:13 foo +// test.kt:18 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:13 foo +// test.kt:20 foo +// test.kt:24 box diff --git a/compiler/testData/debug/stepping/whenWithInlineInCondition.kt b/compiler/testData/debug/stepping/whenWithInlineInCondition.kt index a619cfbfbb1..28cfce48f1f 100644 --- a/compiler/testData/debug/stepping/whenWithInlineInCondition.kt +++ b/compiler/testData/debug/stepping/whenWithInlineInCondition.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { val x = value() @@ -30,15 +31,10 @@ fun nop() {} // JVM_IR generates an additional line number for the end of the condition, which is necessary for the correct "step over" behavior. // EXPECTATIONS JVM JVM_IR -// test.kt:3 box -// test.kt:19 value -// test.kt:3 box +// test.kt:4 box +// test.kt:20 value // test.kt:4 box // test.kt:5 box -// test.kt:20 box -// EXPECTATIONS JVM_IR -// test.kt:5 box -// EXPECTATIONS JVM JVM_IR // test.kt:6 box // test.kt:21 box // EXPECTATIONS JVM_IR @@ -46,42 +42,47 @@ fun nop() {} // EXPECTATIONS JVM JVM_IR // test.kt:7 box // test.kt:22 box -// test.kt:7 box -// test.kt:28 nop -// test.kt:7 box -// test.kt:12 box -// test.kt:20 box -// test.kt:12 box -// test.kt:21 box -// test.kt:12 box -// test.kt:13 box -// test.kt:20 box -// test.kt:13 box -// test.kt:26 box // EXPECTATIONS JVM_IR -// test.kt:13 box +// test.kt:7 box // EXPECTATIONS JVM JVM_IR +// test.kt:8 box +// test.kt:23 box +// test.kt:8 box +// test.kt:29 nop +// test.kt:8 box +// test.kt:13 box +// test.kt:21 box +// test.kt:13 box +// test.kt:22 box +// test.kt:13 box // test.kt:14 box // test.kt:21 box // test.kt:14 box -// test.kt:25 box +// test.kt:27 box +// EXPECTATIONS JVM_IR // test.kt:14 box -// test.kt:28 nop -// test.kt:14 box -// test.kt:17 box +// EXPECTATIONS JVM JVM_IR +// test.kt:15 box +// test.kt:22 box +// test.kt:15 box +// test.kt:26 box +// test.kt:15 box +// test.kt:29 nop +// test.kt:15 box +// test.kt:18 box // EXPECTATIONS JS_IR -// test.kt:3 box -// test.kt:19 value -// test.kt:5 box +// test.kt:4 box +// test.kt:20 value // test.kt:6 box // test.kt:7 box -// test.kt:7 box -// test.kt:28 nop -// test.kt:20 box -// test.kt:12 box +// test.kt:8 box +// test.kt:8 box +// test.kt:29 nop +// test.kt:21 box // test.kt:13 box // test.kt:14 box -// test.kt:14 box -// test.kt:28 nop -// test.kt:17 box +// test.kt:15 box +// test.kt:15 box +// test.kt:29 nop +// test.kt:18 box diff --git a/compiler/testData/debug/stepping/while.kt b/compiler/testData/debug/stepping/while.kt index 1214f3cd27f..791c373f0f2 100644 --- a/compiler/testData/debug/stepping/while.kt +++ b/compiler/testData/debug/stepping/while.kt @@ -1,3 +1,4 @@ +// IGNORE_BACKEND: WASM // FILE: test.kt fun box() { @@ -13,26 +14,26 @@ fun box() { } // EXPECTATIONS JVM JVM_IR -// test.kt:4 box // test.kt:5 box // test.kt:6 box -// test.kt:5 box -// test.kt:9 box -// test.kt:11 box -// test.kt:12 box -// test.kt:11 box +// test.kt:7 box +// test.kt:6 box +// test.kt:10 box // test.kt:12 box // test.kt:13 box +// test.kt:12 box +// test.kt:13 box +// test.kt:14 box // EXPECTATIONS JS_IR -// test.kt:4 box // test.kt:5 box -// test.kt:5 box -// test.kt:5 box -// test.kt:5 box -// test.kt:9 box -// test.kt:12 box -// test.kt:12 box -// test.kt:12 box -// test.kt:12 box -// test.kt:13 box \ No newline at end of file +// test.kt:6 box +// test.kt:6 box +// test.kt:6 box +// test.kt:6 box +// test.kt:10 box +// test.kt:13 box +// test.kt:13 box +// test.kt:13 box +// test.kt:13 box +// test.kt:14 box \ No newline at end of file diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/WasmEnvironmentConfigurationDirectives.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/WasmEnvironmentConfigurationDirectives.kt index 87aed3463f0..b5962e2a3cc 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/WasmEnvironmentConfigurationDirectives.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/WasmEnvironmentConfigurationDirectives.kt @@ -34,4 +34,9 @@ object WasmEnvironmentConfigurationDirectives : SimpleDirectivesContainer() { description = "Specify the prefix directory for output directory that will contains artifacts", applicability = DirectiveApplicability.Global ) + + val GENERATE_SOURCE_MAP by directive( + description = "Enables generation of source map", + applicability = DirectiveApplicability.Global + ) } diff --git a/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMap.kt b/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMap.kt index 50e2ae43cb2..757e0095d13 100644 --- a/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMap.kt +++ b/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMap.kt @@ -53,6 +53,23 @@ class SourceMap(val sourceContentResolver: (String) -> Reader?) { } } + fun segmentForGeneratedLocation(lineNumber: Int, columnNumber: Int?): SourceMapSegment? { + val group = groups.getOrNull(lineNumber)?.takeIf { it.segments.isNotEmpty() } ?: return null + return if (columnNumber == null || columnNumber <= group.segments[0].generatedColumnNumber) { + group.segments[0] + } else { + val candidateIndex = group.segments.indexOfFirst { + columnNumber <= it.generatedColumnNumber + } + if (candidateIndex < 0) + null + else if (candidateIndex == 0 || group.segments[candidateIndex].generatedColumnNumber == columnNumber) + group.segments[candidateIndex] + else + group.segments[candidateIndex - 1] + } + } + companion object { @Throws(IOException::class, SourceMapSourceReplacementException::class) fun replaceSources(sourceMapFile: File, mapping: (String) -> String): Boolean { diff --git a/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMapParser.kt b/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMapParser.kt index a9c00e224b5..04130521704 100644 --- a/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMapParser.kt +++ b/js/js.parser/src/org/jetbrains/kotlin/js/parser/sourcemaps/SourceMapParser.kt @@ -142,7 +142,7 @@ object SourceMapParser { } when { - stream.isEof -> return stream.createError("Unexpected EOF, ',' or ';' expected") + stream.isEof -> break stream.isGroupTerminator -> { currentGroup = SourceMapGroup().also { sourceMap.groups += it } jsColumn = 0 diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/handlers/JsDebugRunner.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/handlers/JsDebugRunner.kt index fab06676370..fd51c4096d9 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/handlers/JsDebugRunner.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/handlers/JsDebugRunner.kt @@ -352,24 +352,6 @@ private fun URI.withAuthority(newAuthority: String?) = private fun Debugger.Location.toCodePosition() = CodePosition(lineNumber, columnNumber ?: -1) -private fun SourceMap.segmentForGeneratedLocation(lineNumber: Int, columnNumber: Int?): SourceMapSegment? { - - val group = groups.getOrNull(lineNumber)?.takeIf { it.segments.isNotEmpty() } ?: return null - return if (columnNumber == null || columnNumber <= group.segments[0].generatedColumnNumber) { - group.segments[0] - } else { - val candidateIndex = group.segments.indexOfFirst { - columnNumber <= it.generatedColumnNumber - } - if (candidateIndex < 0) - null - else if (candidateIndex == 0 || group.segments[candidateIndex].generatedColumnNumber == columnNumber) - group.segments[candidateIndex] - else - group.segments[candidateIndex - 1] - } -} - @Serializable private class ValueDescription(val isNull: Boolean, val isReferenceType: Boolean, val valueDescription: String, val typeName: String) { fun toLocalVariableRecord(variableName: String) = LocalVariableRecord( diff --git a/wasm/wasm.tests/test/org/jetbrains/kotlin/generators/tests/GenerateWasmTests.kt b/wasm/wasm.tests/test/org/jetbrains/kotlin/generators/tests/GenerateWasmTests.kt index af133d7c490..776f96b09da 100644 --- a/wasm/wasm.tests/test/org/jetbrains/kotlin/generators/tests/GenerateWasmTests.kt +++ b/wasm/wasm.tests/test/org/jetbrains/kotlin/generators/tests/GenerateWasmTests.kt @@ -55,6 +55,10 @@ fun main(args: Array) { testClass { model("codegen/boxWasmJsInterop") } + + testClass { + model("debug/stepping") + } } testGroup("wasm/wasm.tests/tests-gen", "js/js.translator/testData", testRunnerMethodName = "runTest0") { @@ -84,6 +88,10 @@ fun main(args: Array) { testClass { model("codegen/boxWasmWasi") } + + testClass { + model("debug/stepping") + } } } } \ No newline at end of file diff --git a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractFirWasmTest.kt b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractFirWasmTest.kt index 4c0513c5e8a..2e4bf37efbb 100644 --- a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractFirWasmTest.kt +++ b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractFirWasmTest.kt @@ -13,6 +13,7 @@ import org.jetbrains.kotlin.test.builders.* import org.jetbrains.kotlin.test.directives.DiagnosticsDirectives import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives +import org.jetbrains.kotlin.test.directives.WasmEnvironmentConfigurationDirectives import org.jetbrains.kotlin.test.frontend.fir.* import org.jetbrains.kotlin.test.frontend.fir.handlers.* import org.jetbrains.kotlin.test.model.* @@ -22,6 +23,7 @@ import org.jetbrains.kotlin.test.services.configuration.WasmEnvironmentConfigura import org.jetbrains.kotlin.wasm.test.converters.FirWasmKlibBackendFacade import org.jetbrains.kotlin.wasm.test.converters.WasmBackendFacade import org.jetbrains.kotlin.wasm.test.handlers.WasmBoxRunner +import org.jetbrains.kotlin.wasm.test.handlers.WasmDebugRunner open class AbstractFirWasmTest( @@ -99,3 +101,18 @@ open class AbstractFirWasmJsTranslatorTest : AbstractFirWasmTest( "js/js.translator/testData/box/", "js.translator/firBox" ) +open class AbstractFirWasmSteppingTest : AbstractFirWasmTest( + "compiler/testData/debug/stepping/", + "debug/stepping/" +) { + + override val wasmBoxTestRunner: Constructor> + get() = ::WasmDebugRunner + + override fun TestConfigurationBuilder.configuration() { + commonConfigurationForWasmBlackBoxCodegenTest() + defaultDirectives { + +WasmEnvironmentConfigurationDirectives.GENERATE_SOURCE_MAP + } + } +} diff --git a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractK1WasmTest.kt b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractK1WasmTest.kt index 1878b8bc83c..980b8837c35 100644 --- a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractK1WasmTest.kt +++ b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractK1WasmTest.kt @@ -8,6 +8,9 @@ package org.jetbrains.kotlin.wasm.test import org.jetbrains.kotlin.test.Constructor import org.jetbrains.kotlin.test.TargetBackend import org.jetbrains.kotlin.test.backend.ir.IrBackendInput +import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder +import org.jetbrains.kotlin.test.builders.wasmArtifactsHandlersStep +import org.jetbrains.kotlin.test.directives.WasmEnvironmentConfigurationDirectives import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontend2IrConverter import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontendFacade import org.jetbrains.kotlin.test.frontend.classic.ClassicFrontendOutputArtifact @@ -17,6 +20,7 @@ import org.jetbrains.kotlin.test.services.configuration.WasmEnvironmentConfigura import org.jetbrains.kotlin.wasm.test.converters.FirWasmKlibBackendFacade import org.jetbrains.kotlin.wasm.test.converters.WasmBackendFacade import org.jetbrains.kotlin.wasm.test.handlers.WasmBoxRunner +import org.jetbrains.kotlin.wasm.test.handlers.WasmDebugRunner abstract class AbstractK1WasmTest( pathToTestDir: String, @@ -62,3 +66,19 @@ open class AbstractK1WasmJsTranslatorTest : AbstractK1WasmTest( "js/js.translator/testData/box/", "js.translator/k1Box" ) + +open class AbstractK1WasmSteppingTest : AbstractK1WasmTest( + "compiler/testData/debug/stepping/", + "debug/stepping/" +) { + + override val wasmBoxTestRunner: Constructor> + get() = ::WasmDebugRunner + + override fun TestConfigurationBuilder.configuration() { + commonConfigurationForWasmBlackBoxCodegenTest() + defaultDirectives { + +WasmEnvironmentConfigurationDirectives.GENERATE_SOURCE_MAP + } + } +} \ No newline at end of file diff --git a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractWasmBlackBoxCodegenTestBase.kt b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractWasmBlackBoxCodegenTestBase.kt index 32b724f1c60..5ca78c1c2ce 100644 --- a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractWasmBlackBoxCodegenTestBase.kt +++ b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/AbstractWasmBlackBoxCodegenTestBase.kt @@ -41,7 +41,7 @@ abstract class AbstractWasmBlackBoxCodegenTestBase open val additionalSourceProvider: Constructor? = null - override fun TestConfigurationBuilder.configuration() { + protected fun TestConfigurationBuilder.commonConfigurationForWasmBlackBoxCodegenTest() { globalDefaults { frontend = targetFrontend targetPlatform = WasmPlatforms.Default @@ -56,16 +56,6 @@ abstract class AbstractWasmBlackBoxCodegenTestBase() @@ -16,4 +21,95 @@ abstract class AbstractWasmArtifactsCollector(testServices: TestServices) : Wasm override fun processModule(module: TestModule, info: BinaryArtifacts.Wasm) { modulesToArtifact[module] = info } -} \ No newline at end of file + + protected fun collectJsArtifacts(originalFile: File): JsArtifacts { + val jsFiles = mutableListOf() + val mjsFiles = mutableListOf() + var entryMjs: String? = "test.mjs" + + testServices.moduleStructure.modules.forEach { m -> + m.files.forEach { file: TestFile -> + val name = file.name + when { + name.endsWith(".js") -> + jsFiles += AdditionalFile(file.name, file.originalContent) + + name.endsWith(".mjs") -> { + mjsFiles += AdditionalFile(file.name, file.originalContent) + if (name == "entry.mjs") { + entryMjs = name + } + } + } + } + } + + originalFile.parentFile.resolve(originalFile.nameWithoutExtension + JavaScript.DOT_EXTENSION) + .takeIf { it.exists() } + ?.let { + jsFiles += AdditionalFile(it.name, it.readText()) + } + + originalFile.parentFile.resolve(originalFile.nameWithoutExtension + JavaScript.DOT_MODULE_EXTENSION) + .takeIf { it.exists() } + ?.let { + mjsFiles += AdditionalFile(it.name, it.readText()) + } + + return JsArtifacts(entryMjs, jsFiles, mjsFiles) + } + + protected fun JsArtifacts.saveJsArtifacts(baseDir: File): SavedJsArtifacts { + val mjsFilePaths = mutableListOf() + for (mjsFile: AdditionalFile in mjsFiles) { + val file = File(baseDir, mjsFile.name) + file.writeText(mjsFile.content) + mjsFilePaths += file.canonicalPath + } + + val jsFilePaths = mutableListOf() + for (jsFile: AdditionalFile in jsFiles) { + val file = File(baseDir, jsFile.name) + file.writeText(jsFile.content) + jsFilePaths += file.canonicalPath + } + + return SavedJsArtifacts(jsFilePaths, mjsFilePaths) + } + + protected fun processExceptions(exceptions: List) { + when (exceptions.size) { + 0 -> {} // Everything OK + 1 -> { + throw exceptions.single() + } + else -> { + throw AssertionError("Failed with several exceptions. Look at suppressed exceptions below.").apply { + exceptions.forEach { addSuppressed(it) } + } + } + } + } + + protected class AdditionalFile(val name: String, val content: String) + protected class JsArtifacts(val entryPath: String?, val jsFiles: List, val mjsFiles: List) + protected data class SavedJsArtifacts(val jsFilePaths: List, val mjsFilePaths: List) +} + +fun TestServices.getWasmTestOutputDirectory(): File { + val originalFile = moduleStructure.originalTestDataFiles.first() + val allDirectives = moduleStructure.allDirectives + + val pathToRootOutputDir = allDirectives[WasmEnvironmentConfigurationDirectives.PATH_TO_ROOT_OUTPUT_DIR].first() + val testGroupDirPrefix = allDirectives[WasmEnvironmentConfigurationDirectives.TEST_GROUP_OUTPUT_DIR_PREFIX].first() + val pathToTestDir = allDirectives[WasmEnvironmentConfigurationDirectives.PATH_TO_TEST_DIR].first() + + val testGroupOutputDir = File(File(pathToRootOutputDir, "out"), testGroupDirPrefix) + val stopFile = File(pathToTestDir) + return generateSequence(originalFile.parentFile) { it.parentFile } + .takeWhile { it != stopFile } + .map { it.name } + .toList().asReversed() + .fold(testGroupOutputDir, ::File) + .let { File(it, originalFile.nameWithoutExtension) } +} diff --git a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmBoxRunner.kt b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmBoxRunner.kt index 5dc807aef00..45e96de0840 100644 --- a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmBoxRunner.kt +++ b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmBoxRunner.kt @@ -32,41 +32,8 @@ class WasmBoxRunner( val artifacts = modulesToArtifact.values.single() val baseFileName = "index" val outputDirBase = testServices.getWasmTestOutputDirectory() - - val jsFiles = mutableListOf() - val mjsFiles = mutableListOf() - var entryMjs: String? = "test.mjs" - - testServices.moduleStructure.modules.forEach { m -> - m.files.forEach { file: TestFile -> - val name = file.name - when { - name.endsWith(".js") -> - jsFiles += AdditionalFile(file.name, file.originalContent) - - name.endsWith(".mjs") -> { - mjsFiles += AdditionalFile(file.name, file.originalContent) - if (name == "entry.mjs") { - entryMjs = name - } - } - } - } - } - val originalFile = testServices.moduleStructure.originalTestDataFiles.first() - - originalFile.parentFile.resolve(originalFile.nameWithoutExtension + JavaScript.DOT_EXTENSION) - .takeIf { it.exists() } - ?.let { - jsFiles += AdditionalFile(it.name, it.readText()) - } - - originalFile.parentFile.resolve(originalFile.nameWithoutExtension + JavaScript.DOT_MODULE_EXTENSION) - .takeIf { it.exists() } - ?.let { - mjsFiles += AdditionalFile(it.name, it.readText()) - } + val collectedJsArtifacts = collectJsArtifacts(originalFile) val debugMode = DebugMode.fromSystemProperty("kotlin.wasm.debugMode") val startUnitTests = RUN_UNIT_TESTS in testServices.moduleStructure.allDirectives @@ -106,16 +73,7 @@ class WasmBoxRunner( writeCompilationResult(res, dir, baseFileName) File(dir, "test.mjs").writeText(testJs) - for (mjsFile: AdditionalFile in mjsFiles) { - File(dir, mjsFile.name).writeText(mjsFile.content) - } - - val jsFilePaths = mutableListOf() - for (jsFile: AdditionalFile in jsFiles) { - val file = File(dir, jsFile.name) - file.writeText(jsFile.content) - jsFilePaths += file.canonicalPath - } + val (jsFilePaths) = collectedJsArtifacts.saveJsArtifacts(dir) if (debugMode >= DebugMode.DEBUG) { File(dir, "index.html").writeText( @@ -149,7 +107,7 @@ class WasmBoxRunner( println(" ------ $mode Test file://$path/test.mjs") val projectName = "kotlin" println(" ------ $mode HTML http://0.0.0.0:63342/$projectName/${dir.path}/index.html") - for (mjsFile: AdditionalFile in mjsFiles) { + for (mjsFile: AdditionalFile in collectedJsArtifacts.mjsFiles) { println(" ------ $mode External ESM file://$path/${mjsFile.name}") } } @@ -164,23 +122,13 @@ class WasmBoxRunner( debugMode = debugMode, disableExceptions = disableExceptions, failsIn = failsIn, - entryMjs = entryMjs, + entryMjs = collectedJsArtifacts.entryPath, jsFilePaths = jsFilePaths, workingDirectory = dir, ) } - when (exceptions.size) { - 0 -> {} // Everything OK - 1 -> { - throw exceptions.single() - } - else -> { - throw AssertionError("Failed with several exceptions. Look at suppressed exceptions below.").apply { - exceptions.forEach { addSuppressed(it) } - } - } - } + processExceptions(exceptions) if (mode == "dce") { checkExpectedOutputSize(debugMode, testFileText, dir) @@ -190,8 +138,6 @@ class WasmBoxRunner( writeToFilesAndRunTest("dev", artifacts.compilerResult) writeToFilesAndRunTest("dce", artifacts.compilerResultWithDCE) } - - private class AdditionalFile(val name: String, val content: String) } internal fun WasmVM.runWithCathedExceptions( @@ -223,24 +169,6 @@ internal fun WasmVM.runWithCathedExceptions( return null } -fun TestServices.getWasmTestOutputDirectory(): File { - val originalFile = moduleStructure.originalTestDataFiles.first() - val allDirectives = moduleStructure.allDirectives - - val pathToRootOutputDir = allDirectives[WasmEnvironmentConfigurationDirectives.PATH_TO_ROOT_OUTPUT_DIR].first() - val testGroupDirPrefix = allDirectives[WasmEnvironmentConfigurationDirectives.TEST_GROUP_OUTPUT_DIR_PREFIX].first() - val pathToTestDir = allDirectives[WasmEnvironmentConfigurationDirectives.PATH_TO_TEST_DIR].first() - - val testGroupOutputDir = File(File(pathToRootOutputDir, "out"), testGroupDirPrefix) - val stopFile = File(pathToTestDir) - return generateSequence(originalFile.parentFile) { it.parentFile } - .takeWhile { it != stopFile } - .map { it.name } - .toList().asReversed() - .fold(testGroupOutputDir, ::File) - .let { File(it, originalFile.nameWithoutExtension) } -} - fun checkExpectedOutputSize(debugMode: DebugMode, testFileContent: String, testDir: File) { val expectedSizes = InTextDirectivesUtils.findListWithPrefixes(testFileContent, "// WASM_DCE_EXPECTED_OUTPUT_SIZE: ") diff --git a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmDebugRunner.kt b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmDebugRunner.kt new file mode 100644 index 00000000000..9da9dbf9243 --- /dev/null +++ b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/handlers/WasmDebugRunner.kt @@ -0,0 +1,169 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.wasm.test.handlers + +import org.jetbrains.kotlin.backend.wasm.WasmCompilerResult +import org.jetbrains.kotlin.backend.wasm.writeCompilationResult +import org.jetbrains.kotlin.js.parser.sourcemaps.* +import org.jetbrains.kotlin.test.TargetBackend +import org.jetbrains.kotlin.test.services.TestServices +import org.jetbrains.kotlin.test.services.configuration.WasmEnvironmentConfigurator +import org.jetbrains.kotlin.test.services.moduleStructure +import org.jetbrains.kotlin.test.utils.SteppingTestLoggedData +import org.jetbrains.kotlin.test.utils.checkSteppingTestResult +import org.jetbrains.kotlin.test.utils.formatAsSteppingTestExpectation +import org.jetbrains.kotlin.wasm.test.tools.WasmVM +import java.io.File + +class WasmDebugRunner(testServices: TestServices) : AbstractWasmArtifactsCollector(testServices) { + override fun processAfterAllModules(someAssertionWasFailed: Boolean) { + if (!someAssertionWasFailed) { + saveAndRunWasmCode() + } + } + + private fun saveAndRunWasmCode() { + val artifacts = modulesToArtifact.values.single() + val outputDirBase = testServices.getWasmTestOutputDirectory() + val originalFile = testServices.moduleStructure.originalTestDataFiles.first() + val mainModule = WasmEnvironmentConfigurator.getMainModule(testServices) + val collectedJsArtifacts = collectJsArtifacts(originalFile) + + val testFileContent = """ + let messageId = 0; + const locations = []; + function addLocation(frame) { + locations.push({ + functionName: frame.functionName, + functionLine: frame.functionLocation?.lineNumber, + functionColumn: frame.functionLocation?.columnNumber, + line: frame.location.lineNumber, + column: frame.location.columnNumber + }) + } + function sendMessage(message) { send(JSON.stringify(Object.assign(message, { id: messageId++ }))) } + function enableDebugger() { sendMessage({ method: 'Debugger.enable' }) } + function disableDebugger() { sendMessage({ method: 'Debugger.disable' }) } + function stepInto() { sendMessage({ method: "Debugger.stepInto" }) ;} + function setBreakpoint(func) { + const scriptId = %FunctionGetScriptId(func); + const offset = %FunctionGetScriptSourcePosition(func); + const loc = %ScriptLocationFromLine2(scriptId, undefined, undefined, offset); + sendMessage({ + method: "Debugger.setBreakpoint", + params: { + location: { + scriptId: scriptId.toString(), + lineNumber: loc.line, + columnNumber: loc.column, + } + } + }) + } + globalThis.receive = function(message) { + message = JSON.parse(message); + if (message.method == "Debugger.paused") { + addLocation(message.params.callFrames[0]); + stepInto(); + } + } + + const jsModule = await import('./index.mjs'); + const box = jsModule.default.box; + + enableDebugger(); + setBreakpoint(box); + box(); + disableDebugger(); + print(JSON.stringify(locations)) + """.trimIndent() + + fun writeToFilesAndRunTest(mode: String, res: WasmCompilerResult) { + val sourceMap = res.parsedSourceMaps + + val dir = File(outputDirBase, mode) + dir.mkdirs() + + writeCompilationResult(res, dir, "index") + File(dir, "test.mjs").writeText(testFileContent) + + val (jsFilePaths) = collectedJsArtifacts.saveJsArtifacts(dir) + + val exception = try { + val result = WasmVM.V8.run( + entryMjs = "./${collectedJsArtifacts.entryPath}", + jsFiles = jsFilePaths, + workingDirectory = dir, + toolArgs = listOf("--enable-inspector", "--allow-natives-syntax") + ) + val parsedLocations = FrameParser(result).parse().mapNotNull { frame -> + val originalFunctionName = frame.currentFunctionLocation.let { + sourceMap.segmentForGeneratedLocation(it.line, it.column)?.name ?: frame.functionName + } + val pausedLocation = sourceMap.segmentForGeneratedLocation( + frame.pausedLocation.line, + frame.pausedLocation.column, + ) + + val testFileName = pausedLocation?.sourceFileName + + if (testFileName == null || pausedLocation.sourceLineNumber < 0) { + null + } else { + SteppingTestLoggedData( + pausedLocation.sourceLineNumber + 1, + false, + formatAsSteppingTestExpectation( + testFileName, + pausedLocation.sourceLineNumber + 1, + originalFunctionName, + false + ) + ) + } + } + + checkSteppingTestResult( + frontendKind = mainModule.frontendKind, + mainModule.targetBackend ?: TargetBackend.WASM, + originalFile, + parsedLocations + ) + + null + } catch (e: Throwable) { e } + + processExceptions(listOfNotNull(exception)) + } + + writeToFilesAndRunTest("dev", artifacts.compilerResult) + writeToFilesAndRunTest("dce", artifacts.compilerResultWithDCE) + } + + private val WasmCompilerResult.parsedSourceMaps: SourceMap + get() = when (val parseResult = SourceMapParser.parse(sourceMap ?: error("Expect to have source maps for stepping test"))) { + is SourceMapSuccess -> parseResult.value + is SourceMapError -> error(parseResult.message) + } + + private class Location(val line: Int, val column: Int) + private class Frame(val functionName: String, val currentFunctionLocation: Location, val pausedLocation: Location) + private class FrameParser(private val input: String) { + fun parse(): List = + (parseJson(input) as JsonArray).elements + .map { + val frameObject = it as JsonObject + Frame( + frameObject.properties["functionName"].asString(), + Location(frameObject.properties["functionLine"].asInt(), frameObject.properties["functionColumn"].asInt()), + Location(frameObject.properties["line"].asInt(), frameObject.properties["column"].asInt()) + ) + } + + private fun JsonNode?.asInt() = (this as JsonNumber).value.toInt() + private fun JsonNode?.asString() = (this as JsonString).value + } +} \ No newline at end of file diff --git a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/tools/WasmVM.kt b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/tools/WasmVM.kt index d7904ae3600..6d08ab39a1a 100644 --- a/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/tools/WasmVM.kt +++ b/wasm/wasm.tests/test/org/jetbrains/kotlin/wasm/test/tools/WasmVM.kt @@ -17,50 +17,74 @@ internal sealed class WasmVM(val shortName: String) { val name: String = javaClass.simpleName protected val tool = ExternalTool(System.getProperty("javascript.engine.path.$name")) - abstract fun run(entryMjs: String, jsFiles: List, workingDirectory: File?, disableExceptionHandlingIfPossible: Boolean = false) + abstract fun run( + entryMjs: String, + jsFiles: List, + workingDirectory: File?, + disableExceptionHandlingIfPossible: Boolean = false, + toolArgs: List = emptyList() + ): String object V8 : WasmVM("V8") { - override fun run(entryMjs: String, jsFiles: List, workingDirectory: File?, disableExceptionHandlingIfPossible: Boolean) { + override fun run( + entryMjs: String, + jsFiles: List, + workingDirectory: File?, + disableExceptionHandlingIfPossible: Boolean, + toolArgs: List + ) = tool.run( + *toolArgs.toTypedArray(), "--experimental-wasm-gc", "--wasm-final-types", "--wasm-disable-deprecated", *jsFiles.toTypedArray(), "--module", entryMjs, - workingDirectory = workingDirectory + workingDirectory = workingDirectory, ) - } } object SpiderMonkey : WasmVM("SM") { - override fun run(entryMjs: String, jsFiles: List, workingDirectory: File?, disableExceptionHandlingIfPossible: Boolean) { + override fun run( + entryMjs: String, + jsFiles: List, + workingDirectory: File?, + disableExceptionHandlingIfPossible: Boolean, + toolArgs: List + ) = tool.run( + *toolArgs.toTypedArray(), "--wasm-verbose", "--wasm-gc", *if (disableExceptionHandlingIfPossible) arrayOf("--no-wasm-exceptions") else emptyArray(), "--wasm-function-references", *jsFiles.flatMap { listOf("-f", it) }.toTypedArray(), "--module=$entryMjs", - workingDirectory = workingDirectory + workingDirectory = workingDirectory, ) - } } object NodeJs : WasmVM("NodeJs") { - override fun run(entryMjs: String, jsFiles: List, workingDirectory: File?, disableExceptionHandlingIfPossible: Boolean) { + override fun run( + entryMjs: String, + jsFiles: List, + workingDirectory: File?, + disableExceptionHandlingIfPossible: Boolean, + toolArgs: List + ) = tool.run( + *toolArgs.toTypedArray(), "--experimental-wasm-gc", *jsFiles.flatMap { listOf("-f", it) }.toTypedArray(), entryMjs, workingDirectory = workingDirectory ) - } } } internal class ExternalTool(val path: String) { - fun run(vararg arguments: String, workingDirectory: File? = null) { + fun run(vararg arguments: String, workingDirectory: File? = null): String { val command = arrayOf(path, *arguments) val processBuilder = ProcessBuilder(*command).redirectErrorStream(true) @@ -70,7 +94,6 @@ internal class ExternalTool(val path: String) { val process = processBuilder.start() - val commandString = command.joinToString(" ") { escapeShellArgument(it) } if (toolLogsEnabled) { println( @@ -83,13 +106,21 @@ internal class ExternalTool(val path: String) { } // Print process output - val input = BufferedReader(InputStreamReader(process.inputStream)) - while (true) println(input.readLine() ?: break) + val stdout = StringBuilder() + val bufferedStdout = BufferedReader(InputStreamReader(process.inputStream)) + + while (process.isAlive) { + val line = bufferedStdout.readLine() ?: break + stdout.appendLine(line) + println(line) + } val exitValue = process.waitFor() if (exitValue != 0) { fail("Command \"$commandString\" terminated with exit code $exitValue") } + + return stdout.toString() } } diff --git a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmSteppingTestGenerated.java b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmSteppingTestGenerated.java new file mode 100644 index 00000000000..28cc520ec54 --- /dev/null +++ b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmSteppingTestGenerated.java @@ -0,0 +1,645 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.wasm.test; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.GenerateWasmTestsKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/debug/stepping") +@TestDataPath("$PROJECT_ROOT") +public class FirWasmSteppingTestGenerated extends AbstractFirWasmSteppingTest { + @Test + public void testAllFilesPresentInStepping() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/debug/stepping"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.WASM, true); + } + + @Test + @TestMetadata("anonymousFunction.kt") + public void testAnonymousFunction() throws Exception { + runTest("compiler/testData/debug/stepping/anonymousFunction.kt"); + } + + @Test + @TestMetadata("anonymousFunctionDirect.kt") + public void testAnonymousFunctionDirect() throws Exception { + runTest("compiler/testData/debug/stepping/anonymousFunctionDirect.kt"); + } + + @Test + @TestMetadata("assertion.kt") + public void testAssertion() throws Exception { + runTest("compiler/testData/debug/stepping/assertion.kt"); + } + + @Test + @TestMetadata("beforeGotoToWhileStart.kt") + public void testBeforeGotoToWhileStart() throws Exception { + runTest("compiler/testData/debug/stepping/beforeGotoToWhileStart.kt"); + } + + @Test + @TestMetadata("callWithCallInArguments.kt") + public void testCallWithCallInArguments() throws Exception { + runTest("compiler/testData/debug/stepping/callWithCallInArguments.kt"); + } + + @Test + @TestMetadata("callWithReceiver.kt") + public void testCallWithReceiver() throws Exception { + runTest("compiler/testData/debug/stepping/callWithReceiver.kt"); + } + + @Test + @TestMetadata("callableReference.kt") + public void testCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/callableReference.kt"); + } + + @Test + @TestMetadata("chainCall.kt") + public void testChainCall() throws Exception { + runTest("compiler/testData/debug/stepping/chainCall.kt"); + } + + @Test + @TestMetadata("class.kt") + public void testClass() throws Exception { + runTest("compiler/testData/debug/stepping/class.kt"); + } + + @Test + @TestMetadata("classObject.kt") + public void testClassObject() throws Exception { + runTest("compiler/testData/debug/stepping/classObject.kt"); + } + + @Test + @TestMetadata("commentBeforeClass.kt") + public void testCommentBeforeClass() throws Exception { + runTest("compiler/testData/debug/stepping/commentBeforeClass.kt"); + } + + @Test + @TestMetadata("commentBeforeCompanionProperty.kt") + public void testCommentBeforeCompanionProperty() throws Exception { + runTest("compiler/testData/debug/stepping/commentBeforeCompanionProperty.kt"); + } + + @Test + @TestMetadata("commentBeforeFunctionWithDefault.kt") + public void testCommentBeforeFunctionWithDefault() throws Exception { + runTest("compiler/testData/debug/stepping/commentBeforeFunctionWithDefault.kt"); + } + + @Test + @TestMetadata("comments.kt") + public void testComments() throws Exception { + runTest("compiler/testData/debug/stepping/comments.kt"); + } + + @Test + @TestMetadata("compileTimeConstant.kt") + public void testCompileTimeConstant() throws Exception { + runTest("compiler/testData/debug/stepping/compileTimeConstant.kt"); + } + + @Test + @TestMetadata("conjunction.kt") + public void testConjunction() throws Exception { + runTest("compiler/testData/debug/stepping/conjunction.kt"); + } + + @Test + @TestMetadata("constantConditions.kt") + public void testConstantConditions() throws Exception { + runTest("compiler/testData/debug/stepping/constantConditions.kt"); + } + + @Test + @TestMetadata("constructorCall.kt") + public void testConstructorCall() throws Exception { + runTest("compiler/testData/debug/stepping/constructorCall.kt"); + } + + @Test + @TestMetadata("constructors.kt") + public void testConstructors() throws Exception { + runTest("compiler/testData/debug/stepping/constructors.kt"); + } + + @Test + @TestMetadata("continue.kt") + public void testContinue() throws Exception { + runTest("compiler/testData/debug/stepping/continue.kt"); + } + + @Test + @TestMetadata("dataClass.kt") + public void testDataClass() throws Exception { + runTest("compiler/testData/debug/stepping/dataClass.kt"); + } + + @Test + @TestMetadata("defaultParameter.kt") + public void testDefaultParameter() throws Exception { + runTest("compiler/testData/debug/stepping/defaultParameter.kt"); + } + + @Test + @TestMetadata("delegation.kt") + public void testDelegation() throws Exception { + runTest("compiler/testData/debug/stepping/delegation.kt"); + } + + @Test + @TestMetadata("enum.kt") + public void testEnum() throws Exception { + runTest("compiler/testData/debug/stepping/enum.kt"); + } + + @Test + @TestMetadata("for.kt") + public void testFor() throws Exception { + runTest("compiler/testData/debug/stepping/for.kt"); + } + + @Test + @TestMetadata("functionCallWithDefault.kt") + public void testFunctionCallWithDefault() throws Exception { + runTest("compiler/testData/debug/stepping/functionCallWithDefault.kt"); + } + + @Test + @TestMetadata("functionCallWithInlinedLambdaParam.kt") + public void testFunctionCallWithInlinedLambdaParam() throws Exception { + runTest("compiler/testData/debug/stepping/functionCallWithInlinedLambdaParam.kt"); + } + + @Test + @TestMetadata("functionCallWithLambdaParam.kt") + public void testFunctionCallWithLambdaParam() throws Exception { + runTest("compiler/testData/debug/stepping/functionCallWithLambdaParam.kt"); + } + + @Test + @TestMetadata("functionInAnotherFile.kt") + public void testFunctionInAnotherFile() throws Exception { + runTest("compiler/testData/debug/stepping/functionInAnotherFile.kt"); + } + + @Test + @TestMetadata("if.kt") + public void testIf() throws Exception { + runTest("compiler/testData/debug/stepping/if.kt"); + } + + @Test + @TestMetadata("if2.kt") + public void testIf2() throws Exception { + runTest("compiler/testData/debug/stepping/if2.kt"); + } + + @Test + @TestMetadata("ifThen.kt") + public void testIfThen() throws Exception { + runTest("compiler/testData/debug/stepping/ifThen.kt"); + } + + @Test + @TestMetadata("ifThenElse.kt") + public void testIfThenElse() throws Exception { + runTest("compiler/testData/debug/stepping/ifThenElse.kt"); + } + + @Test + @TestMetadata("ifThenElseFalse.kt") + public void testIfThenElseFalse() throws Exception { + runTest("compiler/testData/debug/stepping/ifThenElseFalse.kt"); + } + + @Test + @TestMetadata("IfTrueThenFalse.kt") + public void testIfTrueThenFalse() throws Exception { + runTest("compiler/testData/debug/stepping/IfTrueThenFalse.kt"); + } + + @Test + @TestMetadata("ifWithInlineInCondition.kt") + public void testIfWithInlineInCondition() throws Exception { + runTest("compiler/testData/debug/stepping/ifWithInlineInCondition.kt"); + } + + @Test + @TestMetadata("iincStepping.kt") + public void testIincStepping() throws Exception { + runTest("compiler/testData/debug/stepping/iincStepping.kt"); + } + + @Test + @TestMetadata("implicitThis.kt") + public void testImplicitThis() throws Exception { + runTest("compiler/testData/debug/stepping/implicitThis.kt"); + } + + @Test + @TestMetadata("implicitThisOnInvoke.kt") + public void testImplicitThisOnInvoke() throws Exception { + runTest("compiler/testData/debug/stepping/implicitThisOnInvoke.kt"); + } + + @Test + @TestMetadata("inTheEndOfLambdaArgumentOfInlineCall.kt") + public void testInTheEndOfLambdaArgumentOfInlineCall() throws Exception { + runTest("compiler/testData/debug/stepping/inTheEndOfLambdaArgumentOfInlineCall.kt"); + } + + @Test + @TestMetadata("initBlocks.kt") + public void testInitBlocks() throws Exception { + runTest("compiler/testData/debug/stepping/initBlocks.kt"); + } + + @Test + @TestMetadata("initBlocksCompanion.kt") + public void testInitBlocksCompanion() throws Exception { + runTest("compiler/testData/debug/stepping/initBlocksCompanion.kt"); + } + + @Test + @TestMetadata("inlineCallableReference.kt") + public void testInlineCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/inlineCallableReference.kt"); + } + + @Test + @TestMetadata("inlineNamedCallableReference.kt") + public void testInlineNamedCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/inlineNamedCallableReference.kt"); + } + + @Test + @TestMetadata("inlineSimpleCall.kt") + public void testInlineSimpleCall() throws Exception { + runTest("compiler/testData/debug/stepping/inlineSimpleCall.kt"); + } + + @Test + @TestMetadata("kt15259.kt") + public void testKt15259() throws Exception { + runTest("compiler/testData/debug/stepping/kt15259.kt"); + } + + @Test + @TestMetadata("kt29179.kt") + public void testKt29179() throws Exception { + runTest("compiler/testData/debug/stepping/kt29179.kt"); + } + + @Test + @TestMetadata("kt42208.kt") + public void testKt42208() throws Exception { + runTest("compiler/testData/debug/stepping/kt42208.kt"); + } + + @Test + @TestMetadata("kt42208b.kt") + public void testKt42208b() throws Exception { + runTest("compiler/testData/debug/stepping/kt42208b.kt"); + } + + @Test + @TestMetadata("kt42208c.kt") + public void testKt42208c() throws Exception { + runTest("compiler/testData/debug/stepping/kt42208c.kt"); + } + + @Test + @TestMetadata("lambdaStepInline.kt") + public void testLambdaStepInline() throws Exception { + runTest("compiler/testData/debug/stepping/lambdaStepInline.kt"); + } + + @Test + @TestMetadata("lambdaStepInlineWithDefaults.kt") + public void testLambdaStepInlineWithDefaults() throws Exception { + runTest("compiler/testData/debug/stepping/lambdaStepInlineWithDefaults.kt"); + } + + @Test + @TestMetadata("lineNumberAfterInline.kt") + public void testLineNumberAfterInline() throws Exception { + runTest("compiler/testData/debug/stepping/lineNumberAfterInline.kt"); + } + + @Test + @TestMetadata("linenumberForOneParametersArgumentCall.kt") + public void testLinenumberForOneParametersArgumentCall() throws Exception { + runTest("compiler/testData/debug/stepping/linenumberForOneParametersArgumentCall.kt"); + } + + @Test + @TestMetadata("localFunction.kt") + public void testLocalFunction() throws Exception { + runTest("compiler/testData/debug/stepping/localFunction.kt"); + } + + @Test + @TestMetadata("localFunctionWIthOnelineExpressionBody.kt") + public void testLocalFunctionWIthOnelineExpressionBody() throws Exception { + runTest("compiler/testData/debug/stepping/localFunctionWIthOnelineExpressionBody.kt"); + } + + @Test + @TestMetadata("localProperty.kt") + public void testLocalProperty() throws Exception { + runTest("compiler/testData/debug/stepping/localProperty.kt"); + } + + @Test + @TestMetadata("multiModule.kt") + public void testMultiModule() throws Exception { + runTest("compiler/testData/debug/stepping/multiModule.kt"); + } + + @Test + @TestMetadata("multilineExpression.kt") + public void testMultilineExpression() throws Exception { + runTest("compiler/testData/debug/stepping/multilineExpression.kt"); + } + + @Test + @TestMetadata("multilineFunctionCall.kt") + public void testMultilineFunctionCall() throws Exception { + runTest("compiler/testData/debug/stepping/multilineFunctionCall.kt"); + } + + @Test + @TestMetadata("multilineInfixCall.kt") + public void testMultilineInfixCall() throws Exception { + runTest("compiler/testData/debug/stepping/multilineInfixCall.kt"); + } + + @Test + @TestMetadata("namedCallableReference.kt") + public void testNamedCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/namedCallableReference.kt"); + } + + @Test + @TestMetadata("nestedInline.kt") + public void testNestedInline() throws Exception { + runTest("compiler/testData/debug/stepping/nestedInline.kt"); + } + + @Test + @TestMetadata("noParametersArgumentCallInExpression.kt") + public void testNoParametersArgumentCallInExpression() throws Exception { + runTest("compiler/testData/debug/stepping/noParametersArgumentCallInExpression.kt"); + } + + @Test + @TestMetadata("nullcheck.kt") + public void testNullcheck() throws Exception { + runTest("compiler/testData/debug/stepping/nullcheck.kt"); + } + + @Test + @TestMetadata("overridenGetterSetter.kt") + public void testOverridenGetterSetter() throws Exception { + runTest("compiler/testData/debug/stepping/overridenGetterSetter.kt"); + } + + @Test + @TestMetadata("primitiveNullChecks.kt") + public void testPrimitiveNullChecks() throws Exception { + runTest("compiler/testData/debug/stepping/primitiveNullChecks.kt"); + } + + @Test + @TestMetadata("propertyAccessor.kt") + public void testPropertyAccessor() throws Exception { + runTest("compiler/testData/debug/stepping/propertyAccessor.kt"); + } + + @Test + @TestMetadata("psvm.kt") + public void testPsvm() throws Exception { + runTest("compiler/testData/debug/stepping/psvm.kt"); + } + + @Test + @TestMetadata("recursion.kt") + public void testRecursion() throws Exception { + runTest("compiler/testData/debug/stepping/recursion.kt"); + } + + @Test + @TestMetadata("simpleDefaultArg.kt") + public void testSimpleDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArg.kt"); + } + + @Test + @TestMetadata("simpleDefaultArgWithInline.kt") + public void testSimpleDefaultArgWithInline() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt"); + } + + @Test + @TestMetadata("simpleInlineDefaultArg.kt") + public void testSimpleInlineDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleInlineDefaultArg.kt"); + } + + @Test + @TestMetadata("simpleSmap.kt") + public void testSimpleSmap() throws Exception { + runTest("compiler/testData/debug/stepping/simpleSmap.kt"); + } + + @Test + @TestMetadata("smapInlineAsArgument.kt") + public void testSmapInlineAsArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineAsArgument.kt"); + } + + @Test + @TestMetadata("smapInlineAsInfixArgument.kt") + public void testSmapInlineAsInfixArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineAsInfixArgument.kt"); + } + + @Test + @TestMetadata("smapInlineAsInlineArgument.kt") + public void testSmapInlineAsInlineArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineAsInlineArgument.kt"); + } + + @Test + @TestMetadata("smapInlineInIntrinsicArgument.kt") + public void testSmapInlineInIntrinsicArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineInIntrinsicArgument.kt"); + } + + @Test + @TestMetadata("stringSwitches.kt") + public void testStringSwitches() throws Exception { + runTest("compiler/testData/debug/stepping/stringSwitches.kt"); + } + + @Test + @TestMetadata("stringSwitchesSmall.kt") + public void testStringSwitchesSmall() throws Exception { + runTest("compiler/testData/debug/stepping/stringSwitchesSmall.kt"); + } + + @Test + @TestMetadata("suspendFunWithLambdaParameter.kt") + public void testSuspendFunWithLambdaParameter() throws Exception { + runTest("compiler/testData/debug/stepping/suspendFunWithLambdaParameter.kt"); + } + + @Test + @TestMetadata("suspendFunWithSuspendLambdaParameter.kt") + public void testSuspendFunWithSuspendLambdaParameter() throws Exception { + runTest("compiler/testData/debug/stepping/suspendFunWithSuspendLambdaParameter.kt"); + } + + @Test + @TestMetadata("throwException.kt") + public void testThrowException() throws Exception { + runTest("compiler/testData/debug/stepping/throwException.kt"); + } + + @Test + @TestMetadata("topLevel.kt") + public void testTopLevel() throws Exception { + runTest("compiler/testData/debug/stepping/topLevel.kt"); + } + + @Test + @TestMetadata("trait.kt") + public void testTrait() throws Exception { + runTest("compiler/testData/debug/stepping/trait.kt"); + } + + @Test + @TestMetadata("tryCatch.kt") + public void testTryCatch() throws Exception { + runTest("compiler/testData/debug/stepping/tryCatch.kt"); + } + + @Test + @TestMetadata("tryCatchExpression.kt") + public void testTryCatchExpression() throws Exception { + runTest("compiler/testData/debug/stepping/tryCatchExpression.kt"); + } + + @Test + @TestMetadata("tryCatchFinally.kt") + public void testTryCatchFinally() throws Exception { + runTest("compiler/testData/debug/stepping/tryCatchFinally.kt"); + } + + @Test + @TestMetadata("tryFinally.kt") + public void testTryFinally() throws Exception { + runTest("compiler/testData/debug/stepping/tryFinally.kt"); + } + + @Test + @TestMetadata("variablesWithoutInitializer.kt") + public void testVariablesWithoutInitializer() throws Exception { + runTest("compiler/testData/debug/stepping/variablesWithoutInitializer.kt"); + } + + @Test + @TestMetadata("voidLambdaStepInline.kt") + public void testVoidLambdaStepInline() throws Exception { + runTest("compiler/testData/debug/stepping/voidLambdaStepInline.kt"); + } + + @Test + @TestMetadata("when.kt") + public void testWhen() throws Exception { + runTest("compiler/testData/debug/stepping/when.kt"); + } + + @Test + @TestMetadata("whenComplicatedSubject.kt") + public void testWhenComplicatedSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenComplicatedSubject.kt"); + } + + @Test + @TestMetadata("whenConstant.kt") + public void testWhenConstant() throws Exception { + runTest("compiler/testData/debug/stepping/whenConstant.kt"); + } + + @Test + @TestMetadata("whenExpr.kt") + public void testWhenExpr() throws Exception { + runTest("compiler/testData/debug/stepping/whenExpr.kt"); + } + + @Test + @TestMetadata("whenIsChecks.kt") + public void testWhenIsChecks() throws Exception { + runTest("compiler/testData/debug/stepping/whenIsChecks.kt"); + } + + @Test + @TestMetadata("whenMultiLine.kt") + public void testWhenMultiLine() throws Exception { + runTest("compiler/testData/debug/stepping/whenMultiLine.kt"); + } + + @Test + @TestMetadata("whenMultiLineSubject.kt") + public void testWhenMultiLineSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenMultiLineSubject.kt"); + } + + @Test + @TestMetadata("whenNullalbeSubject.kt") + public void testWhenNullalbeSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenNullalbeSubject.kt"); + } + + @Test + @TestMetadata("whenSubject.kt") + public void testWhenSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenSubject.kt"); + } + + @Test + @TestMetadata("whenSubject2.kt") + public void testWhenSubject2() throws Exception { + runTest("compiler/testData/debug/stepping/whenSubject2.kt"); + } + + @Test + @TestMetadata("whenWithInlineInCondition.kt") + public void testWhenWithInlineInCondition() throws Exception { + runTest("compiler/testData/debug/stepping/whenWithInlineInCondition.kt"); + } + + @Test + @TestMetadata("while.kt") + public void testWhile() throws Exception { + runTest("compiler/testData/debug/stepping/while.kt"); + } +} diff --git a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmSteppingTestGenerated.java b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmSteppingTestGenerated.java new file mode 100644 index 00000000000..7708a889533 --- /dev/null +++ b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmSteppingTestGenerated.java @@ -0,0 +1,645 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.wasm.test; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.GenerateWasmTestsKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/debug/stepping") +@TestDataPath("$PROJECT_ROOT") +public class K1WasmSteppingTestGenerated extends AbstractK1WasmSteppingTest { + @Test + public void testAllFilesPresentInStepping() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/debug/stepping"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.WASM, true); + } + + @Test + @TestMetadata("anonymousFunction.kt") + public void testAnonymousFunction() throws Exception { + runTest("compiler/testData/debug/stepping/anonymousFunction.kt"); + } + + @Test + @TestMetadata("anonymousFunctionDirect.kt") + public void testAnonymousFunctionDirect() throws Exception { + runTest("compiler/testData/debug/stepping/anonymousFunctionDirect.kt"); + } + + @Test + @TestMetadata("assertion.kt") + public void testAssertion() throws Exception { + runTest("compiler/testData/debug/stepping/assertion.kt"); + } + + @Test + @TestMetadata("beforeGotoToWhileStart.kt") + public void testBeforeGotoToWhileStart() throws Exception { + runTest("compiler/testData/debug/stepping/beforeGotoToWhileStart.kt"); + } + + @Test + @TestMetadata("callWithCallInArguments.kt") + public void testCallWithCallInArguments() throws Exception { + runTest("compiler/testData/debug/stepping/callWithCallInArguments.kt"); + } + + @Test + @TestMetadata("callWithReceiver.kt") + public void testCallWithReceiver() throws Exception { + runTest("compiler/testData/debug/stepping/callWithReceiver.kt"); + } + + @Test + @TestMetadata("callableReference.kt") + public void testCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/callableReference.kt"); + } + + @Test + @TestMetadata("chainCall.kt") + public void testChainCall() throws Exception { + runTest("compiler/testData/debug/stepping/chainCall.kt"); + } + + @Test + @TestMetadata("class.kt") + public void testClass() throws Exception { + runTest("compiler/testData/debug/stepping/class.kt"); + } + + @Test + @TestMetadata("classObject.kt") + public void testClassObject() throws Exception { + runTest("compiler/testData/debug/stepping/classObject.kt"); + } + + @Test + @TestMetadata("commentBeforeClass.kt") + public void testCommentBeforeClass() throws Exception { + runTest("compiler/testData/debug/stepping/commentBeforeClass.kt"); + } + + @Test + @TestMetadata("commentBeforeCompanionProperty.kt") + public void testCommentBeforeCompanionProperty() throws Exception { + runTest("compiler/testData/debug/stepping/commentBeforeCompanionProperty.kt"); + } + + @Test + @TestMetadata("commentBeforeFunctionWithDefault.kt") + public void testCommentBeforeFunctionWithDefault() throws Exception { + runTest("compiler/testData/debug/stepping/commentBeforeFunctionWithDefault.kt"); + } + + @Test + @TestMetadata("comments.kt") + public void testComments() throws Exception { + runTest("compiler/testData/debug/stepping/comments.kt"); + } + + @Test + @TestMetadata("compileTimeConstant.kt") + public void testCompileTimeConstant() throws Exception { + runTest("compiler/testData/debug/stepping/compileTimeConstant.kt"); + } + + @Test + @TestMetadata("conjunction.kt") + public void testConjunction() throws Exception { + runTest("compiler/testData/debug/stepping/conjunction.kt"); + } + + @Test + @TestMetadata("constantConditions.kt") + public void testConstantConditions() throws Exception { + runTest("compiler/testData/debug/stepping/constantConditions.kt"); + } + + @Test + @TestMetadata("constructorCall.kt") + public void testConstructorCall() throws Exception { + runTest("compiler/testData/debug/stepping/constructorCall.kt"); + } + + @Test + @TestMetadata("constructors.kt") + public void testConstructors() throws Exception { + runTest("compiler/testData/debug/stepping/constructors.kt"); + } + + @Test + @TestMetadata("continue.kt") + public void testContinue() throws Exception { + runTest("compiler/testData/debug/stepping/continue.kt"); + } + + @Test + @TestMetadata("dataClass.kt") + public void testDataClass() throws Exception { + runTest("compiler/testData/debug/stepping/dataClass.kt"); + } + + @Test + @TestMetadata("defaultParameter.kt") + public void testDefaultParameter() throws Exception { + runTest("compiler/testData/debug/stepping/defaultParameter.kt"); + } + + @Test + @TestMetadata("delegation.kt") + public void testDelegation() throws Exception { + runTest("compiler/testData/debug/stepping/delegation.kt"); + } + + @Test + @TestMetadata("enum.kt") + public void testEnum() throws Exception { + runTest("compiler/testData/debug/stepping/enum.kt"); + } + + @Test + @TestMetadata("for.kt") + public void testFor() throws Exception { + runTest("compiler/testData/debug/stepping/for.kt"); + } + + @Test + @TestMetadata("functionCallWithDefault.kt") + public void testFunctionCallWithDefault() throws Exception { + runTest("compiler/testData/debug/stepping/functionCallWithDefault.kt"); + } + + @Test + @TestMetadata("functionCallWithInlinedLambdaParam.kt") + public void testFunctionCallWithInlinedLambdaParam() throws Exception { + runTest("compiler/testData/debug/stepping/functionCallWithInlinedLambdaParam.kt"); + } + + @Test + @TestMetadata("functionCallWithLambdaParam.kt") + public void testFunctionCallWithLambdaParam() throws Exception { + runTest("compiler/testData/debug/stepping/functionCallWithLambdaParam.kt"); + } + + @Test + @TestMetadata("functionInAnotherFile.kt") + public void testFunctionInAnotherFile() throws Exception { + runTest("compiler/testData/debug/stepping/functionInAnotherFile.kt"); + } + + @Test + @TestMetadata("if.kt") + public void testIf() throws Exception { + runTest("compiler/testData/debug/stepping/if.kt"); + } + + @Test + @TestMetadata("if2.kt") + public void testIf2() throws Exception { + runTest("compiler/testData/debug/stepping/if2.kt"); + } + + @Test + @TestMetadata("ifThen.kt") + public void testIfThen() throws Exception { + runTest("compiler/testData/debug/stepping/ifThen.kt"); + } + + @Test + @TestMetadata("ifThenElse.kt") + public void testIfThenElse() throws Exception { + runTest("compiler/testData/debug/stepping/ifThenElse.kt"); + } + + @Test + @TestMetadata("ifThenElseFalse.kt") + public void testIfThenElseFalse() throws Exception { + runTest("compiler/testData/debug/stepping/ifThenElseFalse.kt"); + } + + @Test + @TestMetadata("IfTrueThenFalse.kt") + public void testIfTrueThenFalse() throws Exception { + runTest("compiler/testData/debug/stepping/IfTrueThenFalse.kt"); + } + + @Test + @TestMetadata("ifWithInlineInCondition.kt") + public void testIfWithInlineInCondition() throws Exception { + runTest("compiler/testData/debug/stepping/ifWithInlineInCondition.kt"); + } + + @Test + @TestMetadata("iincStepping.kt") + public void testIincStepping() throws Exception { + runTest("compiler/testData/debug/stepping/iincStepping.kt"); + } + + @Test + @TestMetadata("implicitThis.kt") + public void testImplicitThis() throws Exception { + runTest("compiler/testData/debug/stepping/implicitThis.kt"); + } + + @Test + @TestMetadata("implicitThisOnInvoke.kt") + public void testImplicitThisOnInvoke() throws Exception { + runTest("compiler/testData/debug/stepping/implicitThisOnInvoke.kt"); + } + + @Test + @TestMetadata("inTheEndOfLambdaArgumentOfInlineCall.kt") + public void testInTheEndOfLambdaArgumentOfInlineCall() throws Exception { + runTest("compiler/testData/debug/stepping/inTheEndOfLambdaArgumentOfInlineCall.kt"); + } + + @Test + @TestMetadata("initBlocks.kt") + public void testInitBlocks() throws Exception { + runTest("compiler/testData/debug/stepping/initBlocks.kt"); + } + + @Test + @TestMetadata("initBlocksCompanion.kt") + public void testInitBlocksCompanion() throws Exception { + runTest("compiler/testData/debug/stepping/initBlocksCompanion.kt"); + } + + @Test + @TestMetadata("inlineCallableReference.kt") + public void testInlineCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/inlineCallableReference.kt"); + } + + @Test + @TestMetadata("inlineNamedCallableReference.kt") + public void testInlineNamedCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/inlineNamedCallableReference.kt"); + } + + @Test + @TestMetadata("inlineSimpleCall.kt") + public void testInlineSimpleCall() throws Exception { + runTest("compiler/testData/debug/stepping/inlineSimpleCall.kt"); + } + + @Test + @TestMetadata("kt15259.kt") + public void testKt15259() throws Exception { + runTest("compiler/testData/debug/stepping/kt15259.kt"); + } + + @Test + @TestMetadata("kt29179.kt") + public void testKt29179() throws Exception { + runTest("compiler/testData/debug/stepping/kt29179.kt"); + } + + @Test + @TestMetadata("kt42208.kt") + public void testKt42208() throws Exception { + runTest("compiler/testData/debug/stepping/kt42208.kt"); + } + + @Test + @TestMetadata("kt42208b.kt") + public void testKt42208b() throws Exception { + runTest("compiler/testData/debug/stepping/kt42208b.kt"); + } + + @Test + @TestMetadata("kt42208c.kt") + public void testKt42208c() throws Exception { + runTest("compiler/testData/debug/stepping/kt42208c.kt"); + } + + @Test + @TestMetadata("lambdaStepInline.kt") + public void testLambdaStepInline() throws Exception { + runTest("compiler/testData/debug/stepping/lambdaStepInline.kt"); + } + + @Test + @TestMetadata("lambdaStepInlineWithDefaults.kt") + public void testLambdaStepInlineWithDefaults() throws Exception { + runTest("compiler/testData/debug/stepping/lambdaStepInlineWithDefaults.kt"); + } + + @Test + @TestMetadata("lineNumberAfterInline.kt") + public void testLineNumberAfterInline() throws Exception { + runTest("compiler/testData/debug/stepping/lineNumberAfterInline.kt"); + } + + @Test + @TestMetadata("linenumberForOneParametersArgumentCall.kt") + public void testLinenumberForOneParametersArgumentCall() throws Exception { + runTest("compiler/testData/debug/stepping/linenumberForOneParametersArgumentCall.kt"); + } + + @Test + @TestMetadata("localFunction.kt") + public void testLocalFunction() throws Exception { + runTest("compiler/testData/debug/stepping/localFunction.kt"); + } + + @Test + @TestMetadata("localFunctionWIthOnelineExpressionBody.kt") + public void testLocalFunctionWIthOnelineExpressionBody() throws Exception { + runTest("compiler/testData/debug/stepping/localFunctionWIthOnelineExpressionBody.kt"); + } + + @Test + @TestMetadata("localProperty.kt") + public void testLocalProperty() throws Exception { + runTest("compiler/testData/debug/stepping/localProperty.kt"); + } + + @Test + @TestMetadata("multiModule.kt") + public void testMultiModule() throws Exception { + runTest("compiler/testData/debug/stepping/multiModule.kt"); + } + + @Test + @TestMetadata("multilineExpression.kt") + public void testMultilineExpression() throws Exception { + runTest("compiler/testData/debug/stepping/multilineExpression.kt"); + } + + @Test + @TestMetadata("multilineFunctionCall.kt") + public void testMultilineFunctionCall() throws Exception { + runTest("compiler/testData/debug/stepping/multilineFunctionCall.kt"); + } + + @Test + @TestMetadata("multilineInfixCall.kt") + public void testMultilineInfixCall() throws Exception { + runTest("compiler/testData/debug/stepping/multilineInfixCall.kt"); + } + + @Test + @TestMetadata("namedCallableReference.kt") + public void testNamedCallableReference() throws Exception { + runTest("compiler/testData/debug/stepping/namedCallableReference.kt"); + } + + @Test + @TestMetadata("nestedInline.kt") + public void testNestedInline() throws Exception { + runTest("compiler/testData/debug/stepping/nestedInline.kt"); + } + + @Test + @TestMetadata("noParametersArgumentCallInExpression.kt") + public void testNoParametersArgumentCallInExpression() throws Exception { + runTest("compiler/testData/debug/stepping/noParametersArgumentCallInExpression.kt"); + } + + @Test + @TestMetadata("nullcheck.kt") + public void testNullcheck() throws Exception { + runTest("compiler/testData/debug/stepping/nullcheck.kt"); + } + + @Test + @TestMetadata("overridenGetterSetter.kt") + public void testOverridenGetterSetter() throws Exception { + runTest("compiler/testData/debug/stepping/overridenGetterSetter.kt"); + } + + @Test + @TestMetadata("primitiveNullChecks.kt") + public void testPrimitiveNullChecks() throws Exception { + runTest("compiler/testData/debug/stepping/primitiveNullChecks.kt"); + } + + @Test + @TestMetadata("propertyAccessor.kt") + public void testPropertyAccessor() throws Exception { + runTest("compiler/testData/debug/stepping/propertyAccessor.kt"); + } + + @Test + @TestMetadata("psvm.kt") + public void testPsvm() throws Exception { + runTest("compiler/testData/debug/stepping/psvm.kt"); + } + + @Test + @TestMetadata("recursion.kt") + public void testRecursion() throws Exception { + runTest("compiler/testData/debug/stepping/recursion.kt"); + } + + @Test + @TestMetadata("simpleDefaultArg.kt") + public void testSimpleDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArg.kt"); + } + + @Test + @TestMetadata("simpleDefaultArgWithInline.kt") + public void testSimpleDefaultArgWithInline() throws Exception { + runTest("compiler/testData/debug/stepping/simpleDefaultArgWithInline.kt"); + } + + @Test + @TestMetadata("simpleInlineDefaultArg.kt") + public void testSimpleInlineDefaultArg() throws Exception { + runTest("compiler/testData/debug/stepping/simpleInlineDefaultArg.kt"); + } + + @Test + @TestMetadata("simpleSmap.kt") + public void testSimpleSmap() throws Exception { + runTest("compiler/testData/debug/stepping/simpleSmap.kt"); + } + + @Test + @TestMetadata("smapInlineAsArgument.kt") + public void testSmapInlineAsArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineAsArgument.kt"); + } + + @Test + @TestMetadata("smapInlineAsInfixArgument.kt") + public void testSmapInlineAsInfixArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineAsInfixArgument.kt"); + } + + @Test + @TestMetadata("smapInlineAsInlineArgument.kt") + public void testSmapInlineAsInlineArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineAsInlineArgument.kt"); + } + + @Test + @TestMetadata("smapInlineInIntrinsicArgument.kt") + public void testSmapInlineInIntrinsicArgument() throws Exception { + runTest("compiler/testData/debug/stepping/smapInlineInIntrinsicArgument.kt"); + } + + @Test + @TestMetadata("stringSwitches.kt") + public void testStringSwitches() throws Exception { + runTest("compiler/testData/debug/stepping/stringSwitches.kt"); + } + + @Test + @TestMetadata("stringSwitchesSmall.kt") + public void testStringSwitchesSmall() throws Exception { + runTest("compiler/testData/debug/stepping/stringSwitchesSmall.kt"); + } + + @Test + @TestMetadata("suspendFunWithLambdaParameter.kt") + public void testSuspendFunWithLambdaParameter() throws Exception { + runTest("compiler/testData/debug/stepping/suspendFunWithLambdaParameter.kt"); + } + + @Test + @TestMetadata("suspendFunWithSuspendLambdaParameter.kt") + public void testSuspendFunWithSuspendLambdaParameter() throws Exception { + runTest("compiler/testData/debug/stepping/suspendFunWithSuspendLambdaParameter.kt"); + } + + @Test + @TestMetadata("throwException.kt") + public void testThrowException() throws Exception { + runTest("compiler/testData/debug/stepping/throwException.kt"); + } + + @Test + @TestMetadata("topLevel.kt") + public void testTopLevel() throws Exception { + runTest("compiler/testData/debug/stepping/topLevel.kt"); + } + + @Test + @TestMetadata("trait.kt") + public void testTrait() throws Exception { + runTest("compiler/testData/debug/stepping/trait.kt"); + } + + @Test + @TestMetadata("tryCatch.kt") + public void testTryCatch() throws Exception { + runTest("compiler/testData/debug/stepping/tryCatch.kt"); + } + + @Test + @TestMetadata("tryCatchExpression.kt") + public void testTryCatchExpression() throws Exception { + runTest("compiler/testData/debug/stepping/tryCatchExpression.kt"); + } + + @Test + @TestMetadata("tryCatchFinally.kt") + public void testTryCatchFinally() throws Exception { + runTest("compiler/testData/debug/stepping/tryCatchFinally.kt"); + } + + @Test + @TestMetadata("tryFinally.kt") + public void testTryFinally() throws Exception { + runTest("compiler/testData/debug/stepping/tryFinally.kt"); + } + + @Test + @TestMetadata("variablesWithoutInitializer.kt") + public void testVariablesWithoutInitializer() throws Exception { + runTest("compiler/testData/debug/stepping/variablesWithoutInitializer.kt"); + } + + @Test + @TestMetadata("voidLambdaStepInline.kt") + public void testVoidLambdaStepInline() throws Exception { + runTest("compiler/testData/debug/stepping/voidLambdaStepInline.kt"); + } + + @Test + @TestMetadata("when.kt") + public void testWhen() throws Exception { + runTest("compiler/testData/debug/stepping/when.kt"); + } + + @Test + @TestMetadata("whenComplicatedSubject.kt") + public void testWhenComplicatedSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenComplicatedSubject.kt"); + } + + @Test + @TestMetadata("whenConstant.kt") + public void testWhenConstant() throws Exception { + runTest("compiler/testData/debug/stepping/whenConstant.kt"); + } + + @Test + @TestMetadata("whenExpr.kt") + public void testWhenExpr() throws Exception { + runTest("compiler/testData/debug/stepping/whenExpr.kt"); + } + + @Test + @TestMetadata("whenIsChecks.kt") + public void testWhenIsChecks() throws Exception { + runTest("compiler/testData/debug/stepping/whenIsChecks.kt"); + } + + @Test + @TestMetadata("whenMultiLine.kt") + public void testWhenMultiLine() throws Exception { + runTest("compiler/testData/debug/stepping/whenMultiLine.kt"); + } + + @Test + @TestMetadata("whenMultiLineSubject.kt") + public void testWhenMultiLineSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenMultiLineSubject.kt"); + } + + @Test + @TestMetadata("whenNullalbeSubject.kt") + public void testWhenNullalbeSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenNullalbeSubject.kt"); + } + + @Test + @TestMetadata("whenSubject.kt") + public void testWhenSubject() throws Exception { + runTest("compiler/testData/debug/stepping/whenSubject.kt"); + } + + @Test + @TestMetadata("whenSubject2.kt") + public void testWhenSubject2() throws Exception { + runTest("compiler/testData/debug/stepping/whenSubject2.kt"); + } + + @Test + @TestMetadata("whenWithInlineInCondition.kt") + public void testWhenWithInlineInCondition() throws Exception { + runTest("compiler/testData/debug/stepping/whenWithInlineInCondition.kt"); + } + + @Test + @TestMetadata("while.kt") + public void testWhile() throws Exception { + runTest("compiler/testData/debug/stepping/while.kt"); + } +}