[K/N] Run irText tests for K2/Native

^KT-58240
This commit is contained in:
Vladimir Sukharev
2023-08-16 14:40:45 +02:00
committed by Space Team
parent 0cfa721585
commit cd4c241fa3
14 changed files with 6122 additions and 14 deletions
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.fir.types.toSymbol
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.native.interop.ObjCMethodInfo
class FirNativeKotlinMangler : FirMangler() {
object FirNativeKotlinMangler : FirMangler() {
override fun getMangleComputer(mode: MangleMode, compatibleMode: Boolean): KotlinMangleComputer<FirDeclaration> {
return FirNativeKotlinMangleComputer(StringBuilder(256), mode)
}
@@ -1,6 +1,4 @@
// IGNORE_BACKEND_K2: JVM_IR
// IGNORE_BACKEND_K2: JS_IR
// IGNORE_BACKEND_K2: JS_IR_ES6
// IGNORE_BACKEND_K2: ANY
// !LANGUAGE: +MultiPlatformProjects
expect abstract class A protected constructor() {
@@ -3,6 +3,7 @@
// IGNORE_BACKEND_K1: ANY
// IGNORE_BACKEND_K2: JS_IR
// IGNORE_BACKEND_K2: JS_IR_ES6
// IGNORE_BACKEND_K2: NATIVE
// MODULE: lib
// FILE: lib.kt
@@ -1,6 +1,4 @@
// IGNORE_BACKEND_K2: JVM_IR
// IGNORE_BACKEND_K2: JS_IR
// IGNORE_BACKEND_K2: JS_IR_ES6
// IGNORE_BACKEND_K2: ANY
// !LANGUAGE: +MultiPlatformProjects
// SKIP_KLIB_TEST
+2 -3
View File
@@ -1,6 +1,5 @@
// IGNORE_BACKEND_K2: JVM_IR
// IGNORE_BACKEND_K2: JS_IR
// IGNORE_BACKEND_K2: JS_IR_ES6
// KT-53629: K2: repeated labels on statements are not supported or diagnostic is incorrect
// IGNORE_BACKEND_K2: ANY
inline fun foo() = false
fun run(x: Boolean, y: Boolean): String {
+1
View File
@@ -1,6 +1,7 @@
// WITH_STDLIB
// IGNORE_BACKEND_K2: JS_IR
// IGNORE_BACKEND_K2: JS_IR_ES6
// IGNORE_BACKEND_K2: NATIVE
open class ControlFlowInfo<K, V>(val map: Map<K, V>): Map<K, V> by map
@@ -154,8 +154,8 @@ sealed class IrBackendInput : ResultingArtifact.BackendInput<IrBackendInput>() {
}
// Actually, class won't be used as a real input for the Native backend during blackbox testing, since such testing is done via a different engine.
// In irText tests, this class is used only as Native-specific FIR2IR output to render and dump IR.
// So, no source files, icData, error flag, serialization lambda, etc are needed.
// In irText tests, this class is used only to hold Native-specific FIR2IR output (module fragments) to render and dump IR.
// So, other fields are actually not needed: source files, icData, error flag, serialization lambda, etc...
class NativeBackendInput(
override val irModuleFragment: IrModuleFragment,
override val dependentIrModuleFragments: List<IrModuleFragment>,