[FIR2IR] Keep redundant cast on 'this' for local anonymous function
#KT-42517 Fixed
This commit is contained in:
committed by
Mikhail Glukhikh
parent
f4531b0f34
commit
620a5d404d
@@ -0,0 +1,19 @@
|
||||
// WITH_RUNTIME
|
||||
// FULL_JDK
|
||||
// IGNORE_BACKEND: JS_IR
|
||||
// IGNORE_BACKEND: JS
|
||||
|
||||
fun Any.copyValueIfNeeded(): Any {
|
||||
return when (this) {
|
||||
is Array<*> -> java.lang.reflect.Array.newInstance(this::class.java.componentType, size).apply {
|
||||
this as Array<Any?>
|
||||
(this@copyValueIfNeeded as Array<Any?>).forEachIndexed { i, value -> this[i] = value?.copyValueIfNeeded() }
|
||||
}
|
||||
else -> this
|
||||
}
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val res = arrayOf("FAIL", "OK").copyValueIfNeeded() as Array<String>
|
||||
return res[1]
|
||||
}
|
||||
Reference in New Issue
Block a user