[PSI2IR, K/Wasm] Sync start and end offsets on PSI and FIR for primary constructors

This commit is contained in:
Artem Kobzar
2024-02-29 14:42:33 +00:00
committed by Space Team
parent 87e162e052
commit 2e4d02e9f4
126 changed files with 82 additions and 188 deletions
@@ -8,9 +8,15 @@ package org.jetbrains.kotlin.backend.wasm.ir2wasm
import org.jetbrains.kotlin.ir.IrElement
import org.jetbrains.kotlin.ir.IrFileEntry
import org.jetbrains.kotlin.ir.LineAndColumn
import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET
import org.jetbrains.kotlin.ir.util.SYNTHETIC_OFFSET
import org.jetbrains.kotlin.wasm.ir.WasmExpressionBuilder
import org.jetbrains.kotlin.wasm.ir.source.location.SourceLocation
private val IrElement.hasSyntheticOrUndefinedLocation: Boolean
get() = startOffset in SYNTHETIC_OFFSET..UNDEFINED_OFFSET ||
endOffset in SYNTHETIC_OFFSET..UNDEFINED_OFFSET
enum class LocationType {
START {
override fun getLineAndColumnNumberFor(irElement: IrElement, fileEntry: IrFileEntry) =
@@ -26,6 +32,7 @@ enum class LocationType {
fun IrElement.getSourceLocation(fileEntry: IrFileEntry?, type: LocationType = LocationType.START): SourceLocation {
if (fileEntry == null) return SourceLocation.NoLocation("fileEntry is null")
if (hasSyntheticOrUndefinedLocation) return SourceLocation.NoLocation("Synthetic declaration")
val path = fileEntry.name
val (line, column) = type.getLineAndColumnNumberFor(this, fileEntry)
@@ -208,7 +208,7 @@ internal class BodyGenerator(
}
fun generatePrimaryConstructorBody(ktClassOrObject: KtPureClassOrObject, irConstructor: IrConstructor): IrBody {
val irBlockBody = context.irFactory.createBlockBody(ktClassOrObject.pureStartOffset, ktClassOrObject.pureEndOffset)
val irBlockBody = context.irFactory.createBlockBody(irConstructor.startOffset, irConstructor.endOffset)
generateSuperConstructorCall(irBlockBody, ktClassOrObject)
@@ -244,7 +244,6 @@ internal class FunctionGenerator(declarationGenerator: DeclarationGenerator) : D
ktClassOrObject: KtPureClassOrObject
): IrConstructor =
declareConstructor(
ktClassOrObject,
ktClassOrObject.primaryConstructor ?: ktClassOrObject,
ktClassOrObject.contextReceivers.mapNotNull { it.typeReference() },
primaryConstructorDescriptor
@@ -262,7 +261,6 @@ internal class FunctionGenerator(declarationGenerator: DeclarationGenerator) : D
fun generateSecondaryConstructor(ktConstructor: KtSecondaryConstructor, ktClassOrObject: KtPureClassOrObject): IrConstructor {
val constructorDescriptor = getOrFail(BindingContext.CONSTRUCTOR, ktConstructor) as ClassConstructorDescriptor
return declareConstructor(
ktConstructor,
ktConstructor,
ktClassOrObject.contextReceivers.mapNotNull { it.typeReference() },
constructorDescriptor
@@ -282,7 +280,6 @@ internal class FunctionGenerator(declarationGenerator: DeclarationGenerator) : D
private inline fun declareConstructor(
ktConstructorElement: KtPureElement,
ktParametersElement: KtPureElement,
ktContextReceiversElements: List<KtPureElement>,
constructorDescriptor: ClassConstructorDescriptor,
generateBody: BodyGenerator.(IrConstructor) -> IrBody?
@@ -310,7 +307,7 @@ internal class FunctionGenerator(declarationGenerator: DeclarationGenerator) : D
contextReceiverParametersCount = ktContextReceiversElements.size
}
}.buildWithScope { irConstructor ->
generateValueParameterDeclarations(irConstructor, ktParametersElement, null, ktContextReceiversElements)
generateValueParameterDeclarations(irConstructor, ktConstructorElement, null, ktContextReceiversElements)
if (context.configuration.generateBodies) {
irConstructor.body = createBodyGenerator(irConstructor.symbol).generateBody(irConstructor)
}
+1 -1
View File
@@ -25,7 +25,7 @@ fun box() {
// test.kt:10 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box
// test.kt:3 $cond (13, 18)
// test.kt:9 $box
// test.kt:10 $box
-1
View File
@@ -28,7 +28,6 @@ fun box() {
// test.kt:10 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:7 $box
// test.kt:4 $eval (27, 30)
// test.kt:8 $box$lambda.invoke (8, 8, 8, 8, 12)
@@ -17,7 +17,6 @@ fun box() {
// test.kt:8 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box
// test.kt:6 $box$lambda.invoke (8, 8, 8, 8, 12)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17)
-1
View File
@@ -54,7 +54,6 @@ fun box(): String {
// test.kt:31 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:26 $box (4, 12, 4)
// test.kt:17 $box (57, 57, 57, 57)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
@@ -46,7 +46,6 @@ fun box() {
// test.kt:21 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:20 $box
// test.kt:12 $foo (11, 11, 11, 11, 11, 11)
// test.kt:13 $foo (12, 12)
@@ -48,12 +48,11 @@ fun box() {
// test.kt:15 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:9 $box (12, 12)
// test.kt:4 $A.<init> (7, 7, 7, 7)
// test.kt:12 $box (24, 20)
// test.kt:6 $bar (16, 16, 19, 16, 16, 19, 16, 16, 19)
// test.kt:11 $box
// test.kt:10 $box (4, 4)
// test.kt:15 $box
-1
View File
@@ -36,7 +36,6 @@ fun box() {
// test.kt:16 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:10 $box (12, 12)
// test.kt:7 $A.<init>
// test.kt:11 $box
-1
View File
@@ -38,7 +38,6 @@ fun f(block: () -> Unit) {
// test.kt:8 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box (12, 12, 4)
// Runtime.kt:70 $kotlin.wasm.internal.getBoxedBoolean (8, 8)
// Runtime.kt:73 $kotlin.wasm.internal.getBoxedBoolean (8, 35)
-1
View File
@@ -40,7 +40,6 @@ fun box() {
// test.kt:16 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:10 $box (12, 12)
// test.kt:7 $A.<init>
// test.kt:11 $box (4, 6)
-1
View File
@@ -38,7 +38,6 @@ fun box() {
// test.kt:16 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:13 $box (12, 12)
// test.kt:5 $A.<init>
// test.kt:10 $A.<init>
-1
View File
@@ -51,7 +51,6 @@ fun box() {
// test.kt:18 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:15 $box
// test.kt:16 $box
// test.kt:17 $box (6, 6)
@@ -22,7 +22,6 @@ class A {
// test.kt:6 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (4, 4, 4)
// test.kt:11 $A.<init>
// test.kt:6 $box
@@ -27,6 +27,5 @@ fun box() {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:12 $box
// test.kt:13 $box
@@ -21,7 +21,6 @@ fun box() {
// test.kt:11 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:10 $box (4, 4, 4, 4, 4)
// test.kt:5 $foo$default (0, 17, 17, 17, 17, 0)
// test.kt:6 $foo (11, 4)
-1
View File
@@ -55,7 +55,6 @@ class A {
// test.kt:8 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (4, 4, 8)
// test.kt:33 $A.<init> (1, 1)
// test.kt:25 $A.foo
@@ -16,7 +16,6 @@ fun box() {
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box
// test.kt:5 $box
// test.kt:7 $box
-1
View File
@@ -45,7 +45,6 @@ fun getD() = true
// test.kt:12 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box (16, 4)
// test.kt:14 $getA (13, 17)
// test.kt:5 $box
@@ -30,7 +30,6 @@ fun test(): Long {
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (4, 4)
// test.kt:11 $test
// test.kt:12 $test (15, 8)
-1
View File
@@ -49,7 +49,6 @@ fun box() {
// test.kt:15 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:7 $box (4, 6, 4, 4)
// test.kt:4 $A.<init> (8, 19, 8, 19, 8, 19, 8, 19)
// test.kt:8 $box (4, 4, 4)
+3 -5
View File
@@ -1,4 +1,4 @@
// IGNORE_BACKEND_K2: WASM
// FILE: test.kt
fun box() {
@@ -194,7 +194,6 @@ class O<T>(i: T) {
// test.kt:18 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (4, 4, 4)
// test.kt:20 $B.<init>
// test.kt:6 $box (4, 6, 4, 4)
@@ -219,9 +218,8 @@ class O<T>(i: T) {
// test.kt:40 $J.<init> (16, 8)
// test.kt:42 $J.<init>
// test.kt:12 $box (4, 6, 4, 4)
// test.kt:43 $K.<init>
// test.kt:43 $K.<init> (8, 19)
// test.kt:45 $K.<init> (16, 8)
// test.kt:47 $K.<init>
// test.kt:13 $box (4, 4, 4)
// test.kt:49 $L.<init> (4, 4)
// test.kt:54 $L.<init> (16, 8)
@@ -243,7 +241,7 @@ class O<T>(i: T) {
// test.kt:67 $N.<init> (16, 8)
// test.kt:68 $N.<init>
// test.kt:16 $box (4, 6, 6, 6, 6, 4, 4)
// test.kt:76 $O.<init> (1, 1)
// test.kt:73 $O.<init> (16, 16)
// test.kt:17 $box (4, 6, 9, 9, 9, 9, 4, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8)
-1
View File
@@ -81,7 +81,6 @@ fun box() {
// Array.kt:76 $kotlin.Array.set (5, 5, 5, 5)
// String.kt:149 $kotlin.stringLiteral (11, 4, 11, 4, 11, 4, 11, 4)
// Library.kt:39 $<init properties test.kt> (62, 82)
// test.kt:1 $box
// test.kt:8 $box (14, 14, 14, 14, 14, 4, 14, 4, 4, 4, 14, 9, 14, 4, 14, 4, 4, 4, 14, 9, 14, 4, 14, 4, 4, 4, 14, 9, 14, 4, 14, 4, 4, 4, 14, 9, 14, 4, 14, 4, 4, 4)
// test.kt:5 $<get-strings>
// Array.kt:82 $kotlin.Array.<get-size> (16, 24, 29)
+1 -4
View File
@@ -360,11 +360,9 @@ fun box() {
// String.kt:57 $kotlin.text.unsafeStringFromCharArray
// String.kt:138 $kotlin.text.unsafeStringFromCharArray (4, 4, 4, 4, 11, 17, 22, 29, 4, 34)
// test.kt:18 $box (17, 9, 9, 17, 12, 12)
// test.kt:1 $D.component1
// test.kt:19 $box (4, 6, 6, 6, 6, 6, 6)
// test.kt:20 $box (12, 14, 17, 17, 17, 17, 12)
// test.kt:6 $E.<init> (13, 25, 13, 25, 13, 25)
// test.kt:11 $E.<init> (1, 1, 1)
// test.kt:6 $E.<init> (13, 25, 39, 13, 25, 39, 13, 25, 39)
// test.kt:21 $box (4, 13, 15, 18, 18, 18, 18, 13, 6, 6)
// test.kt:8 $E.equals (39, 44)
// test.kt:22 $box (4, 6, 6)
@@ -372,7 +370,6 @@ fun box() {
// test.kt:23 $box (4, 6, 6)
// test.kt:7 $E.toString (30, 30, 30, 30, 34)
// test.kt:24 $box (19, 9, 9, 19, 13, 13)
// test.kt:1 $E.component1
// test.kt:25 $box (4, 6, 6)
// test.kt:10 $E.copy (17, 19, 22, 17, 24)
// test.kt:26 $box
-1
View File
@@ -34,7 +34,6 @@ fun box() {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:12 $box (4, 4, 8, 8, 8, 8)
// test.kt:9 $A.<init>
// test.kt:7 $A.foo$default (4, 25, 25, 25, 25, 4)
-1
View File
@@ -42,6 +42,5 @@ fun box() {
// test.kt:17 $box (12, 12)
// test.kt:14 $C.<init> (15, 16)
// test.kt:18 $box (4, 6)
// test.kt:1 $C.f
// test.kt:11 $O.f
// test.kt:19 $box
+3 -5
View File
@@ -1,4 +1,4 @@
// IGNORE_BACKEND_K2: WASM
// FILE: test.kt
enum class E() {
@@ -56,7 +56,6 @@ fun box() {
// test.kt:25 box
// EXPECTATIONS WASM
// test.kt:1 $box
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8)
// ThrowHelpers.kt:29 $kotlin.wasm.internal.rangeCheck (6, 14, 6, 19, 28, 19, 6, 14, 6, 19, 28, 19, 6, 14, 6, 19, 28, 19, 6, 14, 6, 19, 28, 19, 6, 14, 6, 19, 28, 19, 6, 14, 6, 19, 28, 19, 6, 14, 6, 19, 28, 19, 6, 14, 6, 19, 28, 19)
@@ -74,12 +73,11 @@ fun box() {
// Enum.kt:11 $kotlin.Enum.<init> (4, 4, 4, 4)
// Enum.kt:27 $kotlin.Enum.<init> (1, 1, 1, 1)
// test.kt:12 $E.<init> (15, 15)
// test.kt:13 $E.<init> (1, 1)
// test.kt:4 $E.<init> (14, 14)
// test.kt:23 $box
// test.kt:8 $E.foo (16, 16)
// test.kt:10 $E.foo
// test.kt:16 $E2_initEntries
// test.kt:15 $E2.<init> (14, 14)
// test.kt:20 $E2.<init> (1, 1)
// test.kt:15 $E2.<init> (14, 26, 14, 26)
// test.kt:18 $E2_initEntries
// test.kt:25 $box
-1
View File
@@ -36,7 +36,6 @@ inline fun foo(n: Int) {}
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box (14, 4, 17, 4, 14, 9, 14, 4, 17, 4, 4, 14, 9, 14, 4, 17, 4, 4, 14, 9, 14, 4, 17, 4, 4)
// test.kt:5 $box (8, 12, 8, 12, 8, 12)
// test.kt:7 $box
@@ -29,7 +29,6 @@ inline fun bar(i: Int = 1) {
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (4, 4, 4, 4)
// test.kt:9 $foo$default (0, 17, 17, 17, 17, 0)
// test.kt:10 $foo
@@ -42,7 +42,6 @@ inline fun foo(f: () -> Unit) {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (4, 4)
// test.kt:16 $box (12, 4, 12, 4)
// test.kt:17 $box (4, 4)
@@ -60,7 +60,6 @@ fun foo(f: () -> Unit) {
// test.kt:12 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box
// test.kt:15 $foo (4, 4)
// test.kt:6 $box$lambda.invoke (20, 12, 21)
@@ -47,7 +47,6 @@ fun bar(x: Int) =
// test.kt:15 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:14 $box (8, 4, 4)
// foo.kt:5 $foo (8, 13, 8, 8, 13, 8)
// foo.kt:8 $foo (15, 11, 4)
-1
View File
@@ -34,7 +34,6 @@ inline fun getB(): Int {
// test.kt:9 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (8, 8)
// test.kt:15 $box (11, 4, 11, 4)
// test.kt:7 $box
-1
View File
@@ -47,7 +47,6 @@ fun box() {
// test.kt:23 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:21 $box (8, 4)
// test.kt:5 $foo (8, 12, 8, 8, 12, 8)
// test.kt:6 $foo (8, 8, 8, 8)
-1
View File
@@ -36,7 +36,6 @@ fun box() {
// test.kt:16 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:13 $box
// test.kt:5 $foo (8, 8)
// test.kt:6 $foo
-1
View File
@@ -58,7 +58,6 @@ fun box() {
// test.kt:24 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:21 $box
// test.kt:5 $foo (8, 8)
// test.kt:6 $foo (8, 8, 8, 8)
+1 -1
View File
@@ -57,10 +57,10 @@ fun box() {
// test.kt:19 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:16 $box
// test.kt:9 $foo (8, 8)
// test.kt:6 $cond (13, 18, 13, 18, 13, 18)
// test.kt:12 $foo
// test.kt:13 $foo (1, 1)
// test.kt:17 $box (12, 4)
// test.kt:18 $box
@@ -72,7 +72,6 @@ fun nop() {}
// test.kt:22 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box
// test.kt:25 $box (11, 4, 11, 4, 11, 4, 11, 4)
// test.kt:5 $box
-1
View File
@@ -51,7 +51,6 @@ fun box() {
// test.kt:19 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (12, 4)
// test.kt:6 $box (4, 6)
// Primitives.kt:2 $box
-1
View File
@@ -68,7 +68,6 @@ class A {
// test.kt:6 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (4, 4, 8)
// test.kt:29 $A.<init>
// test.kt:11 $A.test
+3 -5
View File
@@ -1,4 +1,4 @@
// IGNORE_BACKEND_K2: WASM
// FILE: test.kt
fun box() {
@@ -45,13 +45,11 @@ fun test(b: B) {
// test.kt:6 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (9, 11, 11, 9, 4)
// test.kt:8 $A.<init>
// test.kt:10 $B.<init>
// test.kt:12 $B.<init>
// test.kt:10 $B.<init> (8, 17)
// test.kt:15 $test (4, 4)
// Standard.kt:3 $test (77, 90)
// Standard.kt:3 $test (51, 64)
// Standard.kt:67 $test
// Standard.kt:70 $test (20, 11, 20, 4)
// test.kt:11 $B.invoke
@@ -46,7 +46,6 @@ fun nop() {}
// test.kt:10 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box
// test.kt:13 $box
// test.kt:21 $nop (12, 12, 12)
-1
View File
@@ -121,7 +121,6 @@ fun box() {
// test.kt:53 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:49 $box (4, 4, 4)
// test.kt:8 $Foo.<init> (8, 12, 8)
// test.kt:46 $x (10, 10, 10, 10, 12, 10, 10, 10, 10, 12)
@@ -66,7 +66,6 @@ fun box() {
// test.kt:32 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:9 $Companion.<init> (12, 16, 16, 16, 16, 12)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8)
@@ -43,7 +43,6 @@ inline fun f(block: () -> Unit) {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box (12, 4)
// test.kt:5 $box (4, 4)
// test.kt:16 $box (4, 4)
@@ -28,7 +28,6 @@ fun g() {}
// test.kt:6 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box (12, 4)
// test.kt:5 $box
// test.kt:9 $box (4, 4)
+4 -1
View File
@@ -55,10 +55,13 @@ fun box() {
// test.kt:25 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:10 $box (4, 4)
// test.kt:6 $box (4, 4, 4, 4)
// test.kt:11 $box
// test.kt:14 $box (4, 4)
// test.kt:15 $box
// test.kt:18 $box
// test.kt:19 $box
// test.kt:21 $box
// test.kt:22 $box
// test.kt:25 $box
+1 -1
View File
@@ -29,9 +29,9 @@ fun box() {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:12 $box (4, 4)
// test.kt:6 $makeFace (25, 25)
// test.kt:8 $<no name provided>.<init>
// test.kt:9 $<no name provided>.<init>
// test.kt:9 $makeFace
// test.kt:13 $box
-1
View File
@@ -34,7 +34,6 @@ fun box() {
// test.kt:16 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:15 $box (4, 4, 8)
// test.kt:5 $A.<init>
// test.kt:12 $A.<init>
-1
View File
@@ -25,7 +25,6 @@ inline fun foo() = {
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (4, 4)
// test1.kt:11 $box
// test.kt:8 $box$lambda.invoke
-1
View File
@@ -28,7 +28,6 @@ inline fun foo() = {
// test.kt:8 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box
// test1.kt:12 $box
// test.kt:7 $box
-1
View File
@@ -50,7 +50,6 @@ fun baz(v:(() -> Unit)) {
// test.kt:9 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (8, 4)
// test1.kt:13 $box (1, 1)
// test3.kt:16 $baz (4, 4)
-1
View File
@@ -29,7 +29,6 @@ fun box(): String {
// test.kt:14 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:9 $box (4, 10, 10, 10, 10, 15)
// test.kt:5 $box (11, 11, 4, 11, 11, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17)
@@ -34,7 +34,6 @@ fun box(): String {
// test.kt:17 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:15 $box
// test.kt:4 $box (11, 11, 4)
// test.kt:3 $box (45, 45, 45, 45, 49)
@@ -49,7 +49,6 @@ fun box() {
// test.kt:25 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:23 $box
// test.kt:13 $test1 (4, 4)
// test.kt:9 $test1 (4, 4, 4, 4)
@@ -29,7 +29,6 @@ inline fun lookAtMe(f: (String) -> Unit) {
// test.kt:9 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box
// test.kt:12 $box (12, 12, 12, 12, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
-1
View File
@@ -27,7 +27,6 @@ fun box() {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (4, 4, 4, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8)
@@ -25,7 +25,6 @@ fun box() {
// test.kt:11 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (4, 4, 4, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8)
-1
View File
@@ -30,7 +30,6 @@ fun box(): String {
// test.kt:14 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:9 $box (8, 8, 8, 8)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8)
-1
View File
@@ -33,7 +33,6 @@ fun box() {
// test.kt:17 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:15 $box (4, 4)
// a.kt:5 $a (10, 10, 10, 10, 13)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
@@ -27,7 +27,6 @@ fun test(a: Boolean, b: Boolean, c: Boolean): Boolean {
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box (9, 15, 21, 4, 4)
// test.kt:10 $test (11, 4)
// test.kt:11 $test
@@ -22,7 +22,6 @@ fun foo(i: Int) {
// test.kt:8 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box
// test.kt:5 $box
// test.kt:11 $foo
@@ -22,7 +22,6 @@ infix fun Int.foo(i: Int) {
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (4, 4)
// test.kt:6 $box
// test.kt:10 $foo
@@ -33,7 +33,6 @@ fun g() {}
// test.kt:6 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box (12, 4)
// test.kt:5 $box
// test.kt:9 $f
-1
View File
@@ -74,7 +74,6 @@ inline fun html(init: () -> Unit) {
// test.kt:22 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:20 $box
// test.kt:8 $box (14, 14, 14, 14, 4, 18, 10)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
@@ -28,7 +28,6 @@ inline fun lookAtMe(f: () -> Int) {
// test.kt:9 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:6 $box
// test.kt:12 $box
// test.kt:13 $box (4, 8, 4, 4)
-1
View File
@@ -58,7 +58,6 @@ fun testExpressionBody(nullable: String?) =
// test.kt:11 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:7 $box (9, 9, 9, 9, 4, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8)
@@ -85,7 +85,6 @@ fun box() {
// test.kt:34 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:31 $box (17, 17)
// test.kt:18 $MyInterfaceImplWithBreakpoints.<init>
// test.kt:21 $MyInterfaceImplWithBreakpoints.<init>
@@ -19,7 +19,6 @@ fun box(): String {
// test.kt:7 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:5 $box
// test.kt:6 $box
// test.kt:7 $box (11, 11, 11, 11, 4)
-1
View File
@@ -28,7 +28,6 @@ fun box() {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:12 $box (4, 4, 8, 8)
// test.kt:9 $A.<init>
// test.kt:7 $A.<get-prop> (19, 12)
-1
View File
@@ -40,7 +40,6 @@ fun foo(n :Int ) : Int {
// test.kt:6 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box
// test.kt:5 $box (16, 12, 4)
// test.kt:9 $foo (8, 13, 8, 18, 23, 18, 8, 13, 8, 18, 23, 18, 8, 13, 8)
-1
View File
@@ -21,7 +21,6 @@ fun box(): String {
// test.kt:9 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:9 $box (11, 11, 11, 11, 4)
// test.kt:4 $ifoo$default (0, 22, 22, 22, 22, 0)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17)
@@ -30,7 +30,6 @@ fun box(): String {
// test.kt:15 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:14 $box
// test.kt:5 $box (29, 29, 29, 29)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17)
@@ -23,7 +23,6 @@ fun box(): String {
// test.kt:11 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:11 $box (11, 4)
// test.kt:6 $box
// test.kt:4 $box (26, 26, 26, 26, 30)
-1
View File
@@ -26,7 +26,6 @@ fun box() {
// test.kt:14 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:11 $box
// test.kt:7 $box
// test.kt:12 $box (8, 8, 8, 8)
@@ -50,7 +50,6 @@ fun fail() : String {
// test.kt:10 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (16, 4)
// test.kt:17 $box (11, 11, 11, 11, 4, 11, 11, 11, 11, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
@@ -48,7 +48,6 @@ fun fail() : String {
// test.kt:12 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:7 $box (4, 4, 4)
// test.kt:15 $box (11, 11, 11, 11, 4, 11, 11, 11, 11, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
@@ -46,7 +46,6 @@ fun fail() : String {
// test.kt:10 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (4, 9, 14, 14, 14, 14, 19, 19, 19, 19)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8)
@@ -41,7 +41,6 @@ fun fail() : String {
// test.kt:10 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (4, 4, 4)
// test.kt:13 $box (11, 11, 11, 11, 4, 11, 11, 11, 11, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
-2
View File
@@ -120,7 +120,6 @@ fun box() {
// test.kt:34 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:30 $box (17, 17, 17, 17, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8)
@@ -156,7 +155,6 @@ fun box() {
// String.kt:143 $kotlin.stringLiteral (15, 8, 15, 8, 15, 8, 15, 8, 15, 8, 15, 8, 15, 8, 15, 8, 15, 8)
// String.kt:98 $kotlin.String.equals (12, 12, 12, 12, 12, 12, 12, 12, 12)
// String.kt:99 $kotlin.String.equals (12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28)
// test.kt:1 $stringSwitch (0, 0, 0, 0, 0, 0, 0, 0, 0)
// test.kt:5 $stringSwitch (4, 4, 4, 4)
// test.kt:12 $stringSwitch (19, 4, 19, 4, 19, 4, 19, 4)
// test.kt:13 $stringSwitch (8, 15, 8, 8, 8)
@@ -105,7 +105,6 @@ fun box() {
// test.kt:30 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:27 $box (17, 17, 17, 17, 4)
// String.kt:141 $kotlin.stringLiteral (17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17, 17, 28, 17)
// Array.kt:59 $kotlin.Array.get (19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8, 19, 26, 34, 8)
@@ -141,7 +140,6 @@ fun box() {
// String.kt:143 $kotlin.stringLiteral (15, 8, 15, 8, 15, 8, 15, 8, 15, 8, 15, 8)
// String.kt:98 $kotlin.String.equals (12, 12, 12, 12, 12, 12)
// String.kt:99 $kotlin.String.equals (12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28, 12, 35, 28)
// test.kt:1 $stringSwitch (0, 0, 0, 0, 0, 0)
// test.kt:5 $stringSwitch (4, 4, 4)
// test.kt:11 $stringSwitch (19, 4, 19, 4, 19, 4)
// test.kt:12 $stringSwitch (8, 15, 8, 8)
-1
View File
@@ -41,7 +41,6 @@ fun throwIfLess(a: Int, b: Int) {
// test.kt:16 throwIfLess
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:4 $box (12, 4)
// test.kt:5 $box (12, 4)
// test.kt:7 $box (20, 23, 8)
-1
View File
@@ -21,7 +21,6 @@ fun box() {
// test.kt:10 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:9 $box (4, 4)
// test.kt:4 $foo (12, 16)
// test.kt:10 $box
-1
View File
@@ -59,7 +59,6 @@ fun box() {
// test.kt:17 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:15 $box (5, 5, 20)
// test.kt:15 $<no name provided>.<init>
// test.kt:8 $A.bar (15, 8, 15, 8)
-1
View File
@@ -43,7 +43,6 @@ fun box() {
// test.kt:16 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:14 $box (8, 4)
// test.kt:6 $foo (12, 12, 31, 31, 25)
// test.kt:10 $foo (4, 4, 4, 4, 4, 4, 4, 4)
@@ -156,7 +156,6 @@ fun box() {
// test.kt:49 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:42 $box
// test.kt:6 $foo (8, 8, 8, 8)
// test.kt:29 $mightThrow (8, 8, 8, 8, 22, 22, 16)
+1 -2
View File
@@ -1,4 +1,4 @@
// IGNORE_BACKEND_K2: WASM
// FILE: test.kt
fun foo() {
@@ -131,7 +131,6 @@ fun box() {
// test.kt:39 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:34 $box
// test.kt:6 $foo (8, 8, 8)
// test.kt:26 $mightThrow (8, 8, 8, 22, 22, 16)
-1
View File
@@ -84,7 +84,6 @@ fun box() {
// test.kt:26 mightThrow2
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:30 $box
// test.kt:6 $foo (8, 8)
// test.kt:22 $mightThrow (8, 8)
@@ -30,7 +30,6 @@ fun box() {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:8 $box (8, 4)
// test.kt:9 $box (8, 4)
// test.kt:10 $box (9, 8)
@@ -22,7 +22,6 @@ fun box(): String {
// test.kt:9 box
// EXPECTATIONS WASM
// test.kt:1 $box__JsExportAdapter
// test.kt:5 $box
// Standard.kt:41 $box (4, 4)
// Standard.kt:44 $box (11, 11, 11, 4, 11, 11, 11, 4)
+1 -1
View File
@@ -114,10 +114,10 @@ fun box() {
// test.kt:20 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:19 $box (8, 4)
// test.kt:6 $foo (8, 23, 19, 8, 8, 8, 8, 8, 8)
// test.kt:7 $foo (23, 19, 23, 19)
// test.kt:8 $foo (16, 16, 16, 16)
// test.kt:12 $foo (8, 8, 8, 8, 23, 19, 8, 8, 8)
// test.kt:14 $foo (16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16)
// test.kt:11 $foo (4, 4, 4, 4, 4, 4, 4)
+2 -3
View File
@@ -55,11 +55,10 @@ fun box() {
// test.kt:20 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:17 $box (8, 4)
// test.kt:7 $foo (13, 23, 13, 13)
// test.kt:11 $foo (7, 7, 7)
// test.kt:12 $foo (7, 7)
// test.kt:11 $foo (7, 7, 7, 12)
// test.kt:12 $foo (7, 12, 7)
// test.kt:14 $foo (1, 1, 1)
// test.kt:18 $box (8, 4)
// test.kt:8 $foo
-1
View File
@@ -24,7 +24,6 @@ fun box() {
// test.kt:13 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box
// test.kt:6 $box
// test.kt:11 $box (12, 12, 12, 12)
+1 -1
View File
@@ -30,7 +30,6 @@ fun box() {
// test.kt:17 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:5 $box (18, 18, 18, 18)
// test.kt:6 $box
// test.kt:7 $box
@@ -38,4 +37,5 @@ fun box() {
// Runtime.kt:49 $kotlin.wasm.internal.nullableEquals (25, 30, 37, 30, 4, 25, 30, 37, 30, 4)
// Primitives.kt:1363 $kotlin.Int__equals-impl (42, 42, 24, 48, 42, 42, 24, 48)
// test.kt:10 $box
// test.kt:14 $box
// test.kt:17 $box
-1
View File
@@ -43,7 +43,6 @@ fun box() {
// test.kt:19 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:18 $box (8, 8, 8, 8, 4)
// test.kt:5 $foo (8, 10, 10, 10, 20, 8, 31)
// Primitives.kt:2239 $kotlin.Float__toInt-impl (8, 38, 8, 38)
-1
View File
@@ -43,7 +43,6 @@ fun box() {
// test.kt:19 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:18 $box (8, 8, 8, 8, 4)
// test.kt:5 $foo (8, 10, 10, 10, 20, 8, 31)
// Primitives.kt:2239 $kotlin.Float__toInt-impl (8, 38, 8, 38)
@@ -65,7 +65,6 @@ fun box() {
// test.kt:29 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:28 $box (8, 8, 8, 8, 11, 11, 11, 11, 4)
// test.kt:5 $foo (8, 23, 8)
// test.kt:6 $foo (12, 22, 22, 22, 22)
-1
View File
@@ -29,7 +29,6 @@ fun box() {
// test.kt:14 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:13 $box (8, 8, 8, 8, 4)
// test.kt:5 $foo (15, 8)
// test.kt:6 $foo (12, 24)
@@ -39,7 +39,6 @@ fun box() {
// test.kt:19 box
// EXPECTATIONS WASM
// test.kt:1 $box
// test.kt:18 $box (8, 8, 8, 8, 4)
// test.kt:5 $foo
// test.kt:6 $foo (12, 24)

Some files were not shown because too many files have changed in this diff Show More