[Wasm] Copy property reference lowering from K/N
This commit is contained in:
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.backend.common.ir
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.CommonBackendContext
|
||||
import org.jetbrains.kotlin.backend.common.deepCopyWithVariables
|
||||
import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
@@ -699,3 +700,28 @@ fun IrExpression?.isPure(
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
fun CommonBackendContext.createArrayOfExpression(
|
||||
startOffset: Int, endOffset: Int,
|
||||
arrayElementType: IrType,
|
||||
arrayElements: List<IrExpression>
|
||||
): IrExpression {
|
||||
|
||||
val arrayType = ir.symbols.array.typeWith(arrayElementType)
|
||||
val arg0 = IrVarargImpl(startOffset, endOffset, arrayType, arrayElementType, arrayElements)
|
||||
|
||||
return IrCallImpl(
|
||||
startOffset,
|
||||
endOffset,
|
||||
arrayType,
|
||||
ir.symbols.arrayOf,
|
||||
1,
|
||||
1
|
||||
).apply {
|
||||
putTypeArgument(0, arrayElementType)
|
||||
putValueArgument(0, arg0)
|
||||
}
|
||||
}
|
||||
|
||||
fun IrBuiltIns.getKFunctionType(returnType: IrType, parameterTypes: List<IrType>) =
|
||||
kFunctionN(parameterTypes.size).typeWith(parameterTypes + returnType)
|
||||
@@ -179,6 +179,12 @@ private val sharedVariablesLoweringPhase = makeWasmModulePhase(
|
||||
description = "Box captured mutable variables"
|
||||
)
|
||||
|
||||
private val propertyReferenceLowering = makeWasmModulePhase(
|
||||
::WasmPropertyReferenceLowering,
|
||||
name = "WasmPropertyReferenceLowering",
|
||||
description = "Lower property references"
|
||||
)
|
||||
|
||||
private val callableReferencePhase = makeWasmModulePhase(
|
||||
::WasmCallableReferenceLowering,
|
||||
name = "WasmCallableReferenceLowering",
|
||||
@@ -454,6 +460,7 @@ val wasmPhases = NamedCompilerPhase(
|
||||
enumClassConstructorBodyLoweringPhase then
|
||||
|
||||
sharedVariablesLoweringPhase then
|
||||
propertyReferenceLowering then
|
||||
callableReferencePhase then
|
||||
localDelegatedPropertiesLoweringPhase then
|
||||
localDeclarationsLoweringPhase then
|
||||
|
||||
@@ -18,6 +18,8 @@ import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrClassifierSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol
|
||||
import org.jetbrains.kotlin.ir.types.defaultType
|
||||
import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.ir.types.typeWith
|
||||
import org.jetbrains.kotlin.ir.util.SymbolTable
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
@@ -146,6 +148,21 @@ class WasmSymbols(
|
||||
val exportString = getInternalFunction("exportString")
|
||||
val unsafeGetScratchRawMemory = getInternalFunction("unsafeGetScratchRawMemory")
|
||||
|
||||
// KProperty implementations
|
||||
val kLocalDelegatedPropertyImpl: IrClassSymbol = this.getInternalClass("KLocalDelegatedPropertyImpl")
|
||||
val kLocalDelegatedMutablePropertyImpl: IrClassSymbol = this.getInternalClass("KLocalDelegatedMutablePropertyImpl")
|
||||
val kProperty0Impl: IrClassSymbol = this.getInternalClass("KProperty0Impl")
|
||||
val kProperty1Impl: IrClassSymbol = this.getInternalClass("KProperty1Impl")
|
||||
val kProperty2Impl: IrClassSymbol = this.getInternalClass("KProperty2Impl")
|
||||
val kMutableProperty0Impl: IrClassSymbol = this.getInternalClass("KMutableProperty0Impl")
|
||||
val kMutableProperty1Impl: IrClassSymbol = this.getInternalClass("KMutableProperty1Impl")
|
||||
val kMutableProperty2Impl: IrClassSymbol = this.getInternalClass("KMutableProperty2Impl")
|
||||
val kMutableProperty0: IrClassSymbol = getIrClass(FqName("kotlin.reflect.KMutableProperty0"))
|
||||
val kMutableProperty1: IrClassSymbol = getIrClass(FqName("kotlin.reflect.KMutableProperty1"))
|
||||
val kMutableProperty2: IrClassSymbol = getIrClass(FqName("kotlin.reflect.KMutableProperty2"))
|
||||
|
||||
val kTypeStub = getInternalFunction("kTypeStub")
|
||||
|
||||
private val functionNInterfaces = (0..22).map { arity ->
|
||||
getIrClass(FqName("kotlin.wasm.internal.Function$arity"))
|
||||
}
|
||||
@@ -187,4 +204,8 @@ class WasmSymbols(
|
||||
private fun getInternalFunction(name: String) = getFunction(name, wasmInternalPackage)
|
||||
|
||||
private fun getIrClass(fqName: FqName): IrClassSymbol = symbolTable.referenceClass(getClass(fqName))
|
||||
private fun getInternalClass(name: String): IrClassSymbol = getIrClass(FqName("kotlin.wasm.internal.$name"))
|
||||
fun getKFunctionType(type: IrType, list: List<IrType>): IrType {
|
||||
return irBuiltIns.functionN(list.size).typeWith(list + type)
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,4 @@
|
||||
// WITH_RUNTIME
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
fun foo(it: Int) = "O"[it]
|
||||
|
||||
val Int.foo: Char
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
open class A {
|
||||
var f: String = "OK"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
var result = ""
|
||||
|
||||
class A {
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: IGNORED_IN_JS
|
||||
// IGNORE_BACKEND: JS_IR
|
||||
// IGNORE_BACKEND: JS_IR_ES6
|
||||
// TODO: investigate should it be ran for JS or not
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// KT-30629
|
||||
|
||||
abstract class BaseFragment<T : BaseViewModel> {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: CLASS_REFERENCES
|
||||
class Generic<P : Any>(val p: P)
|
||||
|
||||
class Host {
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: UNKNOWN
|
||||
// SKIP_SOURCEMAP_REMAPPING
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// IGNORE_BACKEND: NATIVE
|
||||
class A(var v: Int) {
|
||||
fun f(x: Int) = x * v
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
val String?.ok: String
|
||||
get() = "OK"
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
fun box(): String {
|
||||
val f = "kotlin"::length
|
||||
val result = f.get()
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
// WITH_RUNTIME
|
||||
// IGNORE_BACKEND: JVM
|
||||
// IGNORE_LIGHT_ANALYSIS
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
|
||||
// JVM_TARGET: 1.8
|
||||
// ^ This test causes SIGSEGV on JDK 1.6 with old back-end.
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
// IGNORE_BACKEND: JVM
|
||||
// WITH_RUNTIME
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
|
||||
val <T> T.foo get() = 42
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
abstract class Base {
|
||||
val result = "OK"
|
||||
}
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: WASM
|
||||
|
||||
// WITH_RUNTIME
|
||||
// FILE: b.kt
|
||||
import a.A
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
val four: Int by NumberDecrypter
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
var result: String by Delegate
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
enum class E {
|
||||
I
|
||||
}
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
val Array<String>.firstElement: String get() = get(0)
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
// !LANGUAGE: -ForbidUsingExtensionPropertyTypeParameterInDelegate
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// IGNORE_BACKEND: NATIVE
|
||||
//For KT-6020
|
||||
import kotlin.reflect.KProperty1
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
|
||||
import kotlin.reflect.KProperty1
|
||||
|
||||
class Q {
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
var x = "OK"
|
||||
|
||||
class C(init: () -> String) {
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
var state = ""
|
||||
|
||||
var topLevel: Int
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// Name of the getter should be 'getaBcde' according to JavaBean conventions
|
||||
var aBcde: Int = 239
|
||||
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty1
|
||||
|
||||
class A {
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// KT-12044 Assertion "Rewrite at slice LEXICAL_SCOPE" for 'if' with property references
|
||||
|
||||
fun box(): String {
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
class Foo {
|
||||
protected var x = 0
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
data class Foo(var bar: Int?)
|
||||
|
||||
fun box(): String {
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
var recivier : Any? = "fail"
|
||||
var value2 : Any? = "fail2"
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: STDLIB_LAZY
|
||||
//WITH_RUNTIME
|
||||
|
||||
fun box(): String {
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: STDLIB_COLLECTIONS
|
||||
// KJS_WITH_FULL_RUNTIME
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
open class Base {
|
||||
open val foo = "Base"
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
class A {
|
||||
var value: String = "fail1"
|
||||
private set
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KMutableProperty
|
||||
|
||||
class Bar(name: String) {
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// See KT-12337 Reference to property with invisible setter should not be a KMutableProperty
|
||||
|
||||
import kotlin.reflect.KProperty1
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// WITH_REFLECT
|
||||
import kotlin.reflect.KProperty0
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
val String.id: String
|
||||
get() = this
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
class A(val x: Int)
|
||||
|
||||
fun box(): String {
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
var storage = 0
|
||||
|
||||
var Int.foo: Int
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
data class Box(var value: String)
|
||||
|
||||
fun box(): String {
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
data class Box(val value: String)
|
||||
|
||||
var pr = Box("first")
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
data class Box(val value: String)
|
||||
|
||||
val foo = Box("lol")
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
abstract class Base(val fn: () -> String)
|
||||
|
||||
class Outer {
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
class Del<T>(var x: T) {
|
||||
operator fun getValue(thisRef: Any?, kProp: Any) = x
|
||||
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// Needs string concatenation lowering working via the stdlib StringBuilder. Otherwise fails with intermitten StackOverflow exception.
|
||||
// WASM_MUTE_REASON: STDLIB_STRING_BUILDER
|
||||
|
||||
data class DC(
|
||||
val d0: String = "", val d1: String = "", val d2: String = "", val d3: String = "", val d4: String = "", val d5: String = "",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
enum class X {
|
||||
B {
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
enum class X {
|
||||
B {
|
||||
override val value = "OK"
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
public open class TestDelegate<T: Any>(private val initializer: () -> T) {
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +NewInference
|
||||
// WITH_RUNTIME
|
||||
// KJS_WITH_FULL_RUNTIME
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: STDLIB_LAZY
|
||||
// WITH_RUNTIME
|
||||
|
||||
fun <C : Any> diContext(context: C): DIContext<C> = DIContext(TypeToken(), context)
|
||||
|
||||
Vendored
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
Vendored
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
Vendored
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
Vendored
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
inline class Z(val x: Int)
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
inline class Z(val x: Int)
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
inline class Z(val x: Int)
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
import kotlin.test.*
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
var setterInvoked = 0
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
class Foo {
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
class Foo {
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
class Foo {
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
var setterInvoked = 0
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
object Foo {
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
class Foo {
|
||||
|
||||
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
var setterInvoked = 0
|
||||
|
||||
compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegatedPropertyOfInlineClassType.kt
Vendored
-2
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
inline class ICInt(val i: Int)
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
|
||||
class Delegate {
|
||||
operator fun getValue(t: Any?, p: Any): String = "OK"
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: STDLIB_LAZY
|
||||
// WITH_RUNTIME
|
||||
|
||||
// MODULE: lib
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// !LANGUAGE: -ForbidUsingExtensionPropertyTypeParameterInDelegate
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: IGNORED_IN_NATIVE
|
||||
// IGNORE_BACKEND: NATIVE
|
||||
// SKIP_MANGLE_VERIFICATION
|
||||
//For KT-6020
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
// !LANGUAGE: -ForbidUsingExtensionPropertyTypeParameterInDelegate
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// IGNORE_BACKEND: NATIVE
|
||||
//For KT-6020
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// Enable when KT-14833 is fixed.
|
||||
// IGNORE_BACKEND: JVM
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// WITH_RUNTIME
|
||||
// MODULE: lib
|
||||
// FILE: common.kt
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: UNIT_ISSUES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
class D {
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
class Holder(var value: Int) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: STDLIB_LAZY
|
||||
// WITH_RUNTIME
|
||||
|
||||
val b: First by lazy {
|
||||
|
||||
-1
@@ -1,4 +1,3 @@
|
||||
// IGNORE_BACKEND: WASM
|
||||
// FILE: 1.kt
|
||||
package a
|
||||
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: WASM
|
||||
|
||||
// FILE: a.kt
|
||||
package a
|
||||
|
||||
|
||||
-2
@@ -1,5 +1,3 @@
|
||||
// IGNORE_BACKEND: WASM
|
||||
|
||||
// FILE: a.kt
|
||||
package a
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
// java.lang.VerifyError: (class: NotImplemented, method: get signature: (Ljava/lang/Object;Lkotlin/reflect/KProperty;)Ljava/lang/Object;) Unable to pop operand off an empty stack
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
// java.lang.ClassNotFoundException: kotlin.Nothing
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: PROPERTY_REFERENCES
|
||||
// WASM_MUTE_REASON: BINDING_RECEIVERS
|
||||
// KJS_WITH_FULL_RUNTIME
|
||||
// WITH_RUNTIME
|
||||
|
||||
|
||||
js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/wasm/semantics/IrCodegenBoxWasmTestGenerated.java
Generated
+290
@@ -1474,6 +1474,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/callableReference/arrayConstructor.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("arrayConstructorArgument.kt")
|
||||
public void testArrayConstructorArgument() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/arrayConstructorArgument.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("arrayOf.kt")
|
||||
public void testArrayOf() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/arrayOf.kt");
|
||||
@@ -1499,6 +1504,16 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/callableReference/inlineArrayConstructors.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt21014.kt")
|
||||
public void testKt21014() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/kt21014.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt21092a.kt")
|
||||
public void testKt21092a() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/kt21092a.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt37604.kt")
|
||||
public void testKt37604() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/kt37604.kt");
|
||||
@@ -1687,6 +1702,16 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/callableReference/bound/dontShareReceiver.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("emptyLHS.kt")
|
||||
public void testEmptyLHS() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/bound/emptyLHS.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("genericBoundPropertyAsCrossinline.kt")
|
||||
public void testGenericBoundPropertyAsCrossinline() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/bound/genericBoundPropertyAsCrossinline.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt12738.kt")
|
||||
public void testKt12738() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/bound/kt12738.kt");
|
||||
@@ -1697,6 +1722,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/callableReference/bound/kt15446.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("multiCase.kt")
|
||||
public void testMultiCase() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/bound/multiCase.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("objectReceiver.kt")
|
||||
public void testObjectReceiver() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/bound/objectReceiver.kt");
|
||||
@@ -2108,6 +2138,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
KotlinTestUtils.runTest0(this::doTest, TargetBackend.WASM, testDataFilePath);
|
||||
}
|
||||
|
||||
@TestMetadata("accessViaSubclass.kt")
|
||||
public void testAccessViaSubclass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/accessViaSubclass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("accessorForPropertyWithPrivateSetter.kt")
|
||||
public void testAccessorForPropertyWithPrivateSetter() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/accessorForPropertyWithPrivateSetter.kt");
|
||||
@@ -2117,10 +2152,115 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/codegen/box/callableReference/property"), Pattern.compile("^([^_](.+))\\.kt$"), null, TargetBackend.WASM, true);
|
||||
}
|
||||
|
||||
@TestMetadata("delegated.kt")
|
||||
public void testDelegated() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/delegated.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegatedMutable.kt")
|
||||
public void testDelegatedMutable() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/delegatedMutable.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("enumNameOrdinal.kt")
|
||||
public void testEnumNameOrdinal() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/enumNameOrdinal.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("extensionToArray.kt")
|
||||
public void testExtensionToArray() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/extensionToArray.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("genericProperty.kt")
|
||||
public void testGenericProperty() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/genericProperty.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inEnum.kt")
|
||||
public void testInEnum() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/inEnum.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokePropertyReference.kt")
|
||||
public void testInvokePropertyReference() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/invokePropertyReference.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("javaBeanConvention.kt")
|
||||
public void testJavaBeanConvention() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/javaBeanConvention.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kClassInstanceIsInitializedFirst.kt")
|
||||
public void testKClassInstanceIsInitializedFirst() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/kClassInstanceIsInitializedFirst.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt12044.kt")
|
||||
public void testKt12044() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/kt12044.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt12982_protectedPropertyReference.kt")
|
||||
public void testKt12982_protectedPropertyReference() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/kt12982_protectedPropertyReference.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt14330.kt")
|
||||
public void testKt14330() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/kt14330.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt14330_2.kt")
|
||||
public void testKt14330_2() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/kt14330_2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("localClassVar.kt")
|
||||
public void testLocalClassVar() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/localClassVar.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("overriddenInSubclass.kt")
|
||||
public void testOverriddenInSubclass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/overriddenInSubclass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("privateSetterInsideClass.kt")
|
||||
public void testPrivateSetterInsideClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/privateSetterInsideClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("simpleExtension.kt")
|
||||
public void testSimpleExtension() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/simpleExtension.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("simpleMember.kt")
|
||||
public void testSimpleMember() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/simpleMember.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("simpleMutableExtension.kt")
|
||||
public void testSimpleMutableExtension() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/simpleMutableExtension.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("simpleMutableMember.kt")
|
||||
public void testSimpleMutableMember() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/simpleMutableMember.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("simpleMutableTopLevel.kt")
|
||||
public void testSimpleMutableTopLevel() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/simpleMutableTopLevel.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("simpleTopLevel.kt")
|
||||
public void testSimpleTopLevel() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/callableReference/property/simpleTopLevel.kt");
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/codegen/box/callableReference/serializability")
|
||||
@@ -4069,6 +4209,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInArrayWithArrayVarUpdatedInLoopBody13.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("forInDelegatedPropertyUpdatedInLoopBody.kt")
|
||||
public void testForInDelegatedPropertyUpdatedInLoopBody() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInDelegatedPropertyUpdatedInLoopBody.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("forInDoubleArrayWithUpcast.kt")
|
||||
public void testForInDoubleArrayWithUpcast() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInDoubleArrayWithUpcast.kt");
|
||||
@@ -4376,6 +4521,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/dataClasses/changingVarParam.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("dataClassWithManyFields.kt")
|
||||
public void testDataClassWithManyFields() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/dataClasses/dataClassWithManyFields.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("genericParam.kt")
|
||||
public void testGenericParam() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/dataClasses/genericParam.kt");
|
||||
@@ -6252,6 +6402,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/fieldRename/constructorAndClassObject.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegates.kt")
|
||||
public void testDelegates() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fieldRename/delegates.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("genericPropertyWithItself.kt")
|
||||
public void testGenericPropertyWithItself() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fieldRename/genericPropertyWithItself.kt");
|
||||
@@ -7410,6 +7565,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/inference/kt10822.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt36446.kt")
|
||||
public void testKt36446() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inference/kt36446.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt38664.kt")
|
||||
public void testKt38664() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inference/kt38664.kt");
|
||||
@@ -7904,6 +8064,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassInStringTemplate.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassPropertyReferenceGetAndSet.kt")
|
||||
public void testInlineClassPropertyReferenceGetAndSet() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassPropertyReferenceGetAndSet.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassValueCapturedInInlineLambda.kt")
|
||||
public void testInlineClassValueCapturedInInlineLambda() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/inlineClassValueCapturedInInlineLambda.kt");
|
||||
@@ -7979,6 +8144,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/kt25246.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt25750.kt")
|
||||
public void testKt25750() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/kt25750.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt25771.kt")
|
||||
public void testKt25771() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/kt25771.kt");
|
||||
@@ -8547,16 +8717,51 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassExtensionFun.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassExtensionVal.kt")
|
||||
public void testInlineClassExtensionVal() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassExtensionVal.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassInternalPrimaryVal.kt")
|
||||
public void testInlineClassInternalPrimaryVal() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassInternalPrimaryVal.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassMemberFun.kt")
|
||||
public void testInlineClassMemberFun() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassMemberFun.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassMemberVal.kt")
|
||||
public void testInlineClassMemberVal() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassMemberVal.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassPrimaryConstructor.kt")
|
||||
public void testInlineClassPrimaryConstructor() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassPrimaryConstructor.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassPrimaryVal.kt")
|
||||
public void testInlineClassPrimaryVal() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassPrimaryVal.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassPrivatePrimaryVal.kt")
|
||||
public void testInlineClassPrivatePrimaryVal() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassPrivatePrimaryVal.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassTypeMemberVar.kt")
|
||||
public void testInlineClassTypeMemberVar() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassTypeMemberVar.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassTypeTopLevelVar.kt")
|
||||
public void testInlineClassTypeTopLevelVar() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/inlineClassTypeTopLevelVar.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt37986.kt")
|
||||
public void testKt37986() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/callableReferences/kt37986.kt");
|
||||
@@ -8920,6 +9125,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/functionNameMangling/propertySetterWithInlineClassTypeArgument.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("reflectionForPropertyOfInlineClassType.kt")
|
||||
public void testReflectionForPropertyOfInlineClassType() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/functionNameMangling/reflectionForPropertyOfInlineClassType.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("syntheticAccessorForFunctionWithMangledName.kt")
|
||||
public void testSyntheticAccessorForFunctionWithMangledName() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/functionNameMangling/syntheticAccessorForFunctionWithMangledName.kt");
|
||||
@@ -9185,6 +9395,61 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
public void testAllFilesPresentInPropertyDelegation() throws Exception {
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/codegen/box/inlineClasses/propertyDelegation"), Pattern.compile("^([^_](.+))\\.kt$"), null, TargetBackend.WASM, true);
|
||||
}
|
||||
|
||||
@TestMetadata("captureLocalVarDelegatedToInlineClass.kt")
|
||||
public void testCaptureLocalVarDelegatedToInlineClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/captureLocalVarDelegatedToInlineClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegateClassVarToInlineClass.kt")
|
||||
public void testDelegateClassVarToInlineClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegateClassVarToInlineClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegateClassVarToInlineClassWithProvideDelegate.kt")
|
||||
public void testDelegateClassVarToInlineClassWithProvideDelegate() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegateClassVarToInlineClassWithProvideDelegate.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegateCompanionVarToInlineClass.kt")
|
||||
public void testDelegateCompanionVarToInlineClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegateCompanionVarToInlineClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegateLocalVarToInlineClass.kt")
|
||||
public void testDelegateLocalVarToInlineClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegateLocalVarToInlineClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegateObjectVarToInlineClass.kt")
|
||||
public void testDelegateObjectVarToInlineClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegateObjectVarToInlineClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegatePrivateCompanionVarToInlineClass.kt")
|
||||
public void testDelegatePrivateCompanionVarToInlineClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegatePrivateCompanionVarToInlineClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegateTopLevelVarToInlineClass.kt")
|
||||
public void testDelegateTopLevelVarToInlineClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegateTopLevelVarToInlineClass.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("delegatedPropertyOfInlineClassType.kt")
|
||||
public void testDelegatedPropertyOfInlineClassType() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/delegatedPropertyOfInlineClassType.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt27070.kt")
|
||||
public void testKt27070() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/kt27070.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt42933.kt")
|
||||
public void testKt42933() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/inlineClasses/propertyDelegation/kt42933.kt");
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/codegen/box/inlineClasses/result")
|
||||
@@ -10104,6 +10369,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/codegen/box/ir/serializationRegressions"), Pattern.compile("^([^_](.+))\\.kt$"), null, TargetBackend.WASM, true);
|
||||
}
|
||||
|
||||
@TestMetadata("genericProperty.kt")
|
||||
public void testGenericProperty() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/ir/serializationRegressions/genericProperty.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("innerClassInEnumEntryClass.kt")
|
||||
public void testInnerClassInEnumEntryClass() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/ir/serializationRegressions/innerClassInEnumEntryClass.kt");
|
||||
@@ -13078,6 +13348,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/codegen/box/properties"), Pattern.compile("^([^_](.+))\\.kt$"), null, TargetBackend.WASM, true);
|
||||
}
|
||||
|
||||
@TestMetadata("augmentedAssignmentsAndIncrements.kt")
|
||||
public void testAugmentedAssignmentsAndIncrements() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/properties/augmentedAssignmentsAndIncrements.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("classArtificialFieldInsideNested.kt")
|
||||
public void testClassArtificialFieldInsideNested() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/properties/classArtificialFieldInsideNested.kt");
|
||||
@@ -13313,6 +13588,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/properties/primitiveOverrideDefaultAccessor.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("primitiveOverrideDelegateAccessor.kt")
|
||||
public void testPrimitiveOverrideDelegateAccessor() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/properties/primitiveOverrideDelegateAccessor.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("privateAccessorOfOverriddenProperty.kt")
|
||||
public void testPrivateAccessorOfOverriddenProperty() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/properties/privateAccessorOfOverriddenProperty.kt");
|
||||
@@ -16823,6 +17103,16 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
|
||||
runTest("compiler/testData/codegen/box/typeMapping/kt3286.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt3863.kt")
|
||||
public void testKt3863() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/typeMapping/kt3863.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt3976.kt")
|
||||
public void testKt3976() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/typeMapping/kt3976.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("nothing.kt")
|
||||
public void testNothing() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/typeMapping/nothing.kt");
|
||||
|
||||
@@ -20,4 +20,10 @@ public actual interface KCallable<out R> {
|
||||
* the setter, similarly, will have the name "<set-foo>".
|
||||
*/
|
||||
actual public val name: String
|
||||
|
||||
|
||||
/**
|
||||
* The type of values returned by this callable.
|
||||
*/
|
||||
public val returnType: KType
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user