[WASM] Implementation of Class references

This commit is contained in:
Igor Yakovlev
2021-10-26 19:26:17 +02:00
committed by TeamCityServer
parent d9f2bd7963
commit ce360bb10b
43 changed files with 350 additions and 109 deletions
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
class Generic<P : Any>(val p: P)
class Host {
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// WITH_REFLECT
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// WITH_REFLECT
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// TODO: muted automatically, investigate should it be ran for JS or not
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// TODO: muted automatically, investigate should it be ran for JS or not
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: KOTLIN_TEST_LIB
// IGNORE_BACKEND: JS, JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// WITH_RUNTIME
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// IGNORE_BACKEND: NATIVE
// WITH_REFLECT
// WITH_COROUTINES
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// WITH_COROUTINES
// WITH_REFLECT
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// WITH_COROUTINES
// WITH_REFLECT
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// WITH_COROUTINES
import helpers.*
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// WITH_COROUTINES
import helpers.*
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// WITH_COROUTINES
import kotlin.coroutines.*
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: WASM
// WITH_RUNTIME
fun nonGenericId(x: Any?) = x
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
class Q<TT> {
fun <T> qz(x: T, block: (T) -> String) = block(x)
@@ -1,8 +1,5 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
fun box(): String {
lateinit var str: String
try {
@@ -1,8 +1,5 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
import kotlin.UninitializedPropertyAccessException
fun runNoInline(f: () -> Unit) = f()
@@ -1,6 +1,4 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
import kotlin.UninitializedPropertyAccessException
@@ -1,8 +1,5 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
import kotlin.UninitializedPropertyAccessException
fun box(): String {
@@ -1,8 +1,5 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
import kotlin.UninitializedPropertyAccessException
fun box(): String {
@@ -1,6 +1,4 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
// FILE: lateinit.kt
@@ -1,8 +1,5 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
import kotlin.UninitializedPropertyAccessException
lateinit var str: String
@@ -1,8 +1,5 @@
// WITH_RUNTIME
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: REFLECTION
import kotlin.UninitializedPropertyAccessException
lateinit var str: String
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: IGNORED_IN_JS
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// TODO: muted automatically, investigate should it be ran for JS or not
@@ -1,5 +1,5 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WASM_MUTE_REASON: TYPEOF
// WITH_RUNTIME
// See KT-37163
@@ -1,5 +1,5 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WASM_MUTE_REASON: TYPEOF
// WITH_RUNTIME
// See KT-37163
@@ -1,5 +1,5 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WASM_MUTE_REASON: TYPEOF
// WITH_RUNTIME
// See KT-37163
@@ -1,5 +1,3 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WITH_RUNTIME
// See KT-37128
@@ -1,5 +1,5 @@
// IGNORE_BACKEND: WASM
// WASM_MUTE_REASON: CLASS_REFERENCES
// WASM_MUTE_REASON: ULONG_TOSTRING
// KJS_WITH_FULL_RUNTIME
// WITH_REFLECT