[KLIB] Deserialize backing field initializers of const in IB-only mode

Missing const initializer leads to crash in property accessors inline
lowering during IC recompilation on JS.

 - fix #KT-50512
 - add test for JS IR IC
This commit is contained in:
Roman Artemev
2021-12-27 17:22:28 +03:00
parent 188d073cc3
commit 723ef8f1fb
4 changed files with 36 additions and 6 deletions
@@ -0,0 +1,18 @@
// NO_COMMON_FILES
// MODULE: lib
// FILE: lib.kt
const val FOO: String = "OK"
class B {
inline fun bar(): String {
return FOO // Constant property has to have a backing field with initializer
}
}
// MODULE: main(lib)
// FILE: main.kt
// RECOMPILE
fun box(): String {
return B().bar()
}