JVM IR: Fix handling of anonymous initializers in inline classes (#4372)

Fixes KT-46554
This commit is contained in:
Steven Schäfer
2021-05-11 11:42:11 +02:00
committed by Alexander Udalov
parent cc4c61d2b3
commit b2378620c3
14 changed files with 320 additions and 51 deletions
@@ -0,0 +1,21 @@
inline class IC private constructor(val i: Int) {
@Suppress("SECONDARY_CONSTRUCTOR_WITH_BODY_INSIDE_INLINE_CLASS")
constructor() : this(0) {
counter += 1
}
}
var counter = 0
fun <T> id(t: T) = t
fun box(): String {
val ic = IC()
if (counter != 1) return "FAIL 1: $counter"
counter = 0
id(ic)
if (counter != 0) return "FAIL 2: $counter"
return "OK"
}