blob: 09da8642d5730b0b06be556c2fe9e50d26808e83 [file]
// IGNORE_BACKEND_K1: JVM_IR
// TARGET_BACKEND: JVM_IR
// LANGUAGE: +MultiPlatformProjects
// WITH_STDLIB
// MODULE: common
// TARGET_PLATFORM: Common
// FILE: common.kt
import kotlinx.serialization.*
@Serializable
public abstract class Something {
public val eventFlow: List<String> get() = error("")
}
// MODULE: jvm()()(common)
// TARGET_PLATFORM: JVM
// FILE: jvm.kt
fun intermediate() {}
// MODULE: jvm2(jvm)()()
// TARGET_PLATFORM: JVM
// FILE: main.kt
import kotlinx.serialization.*
import kotlinx.serialization.json.*
import kotlinx.serialization.descriptors.*
import kotlin.test.assertEquals
@Serializable
data class Impl(var kek: String): Something()
fun assertImpl() {
val impl = Impl("kek")
val json = Json.encodeToString(impl)
assertEquals("""{"kek":"kek"}""", json)
val decoded = Json.decodeFromString(Impl.serializer(), json)
assertEquals(impl, decoded)
}
fun box(): String {
try {
assertImpl()
return "OK"
} catch (e: Throwable) {
e.printStackTrace()
return e.message!!
}
}