Files
kotlin-fork/compiler/testData/codegen/boxWasmJsInterop/kt59084.kt
T
Svyatoslav Kuzmich 833c8b2cd4 [Wasm] Fix transforming setField in an inline class constructor body
IrSetField was transformed to its value to preserve side effects
This transformation produced invalid IR in cases where
IrSetField used in Unit-returning expression context.

This commit fixes it by producing Unit-typed expression

^KT-59084 Fixed
2023-08-17 10:35:00 +00:00

19 lines
342 B
Kotlin
Vendored

// TARGET_BACKEND: WASM
inline class JsDynamic(val value: JsAny?)
val JsAny?.jsDyn: JsDynamic get() = JsDynamic(this)
fun test(): Boolean {
val jsDynamic: JsAny? = 1.toJsNumber()
val jsDyn = jsDynamic.jsDyn
return jsDyn.value == jsDynamic
}
fun box(): String {
if (!test()) {
return "Fail"
}
return "OK"
}