26c1098a4f
* Fix objects in inline functions and lambdas: * Add common lowerings used in K/JS and K/Native * Fix inline lambda call detection logic in presence of additional casts Merge-request: KT-MR-8791 Merged-by: Svyatoslav Kuzmich <svyatoslav.kuzmich@jetbrains.com>
26 lines
451 B
Kotlin
Vendored
26 lines
451 B
Kotlin
Vendored
// IGNORE_BACKEND: JVM
|
|
// IGNORE_BACKEND_MULTI_MODULE: JVM, JVM_MULTI_MODULE_IR_AGAINST_OLD
|
|
// FILE: a.kt
|
|
|
|
package test
|
|
|
|
open class A {
|
|
val v = "OK"
|
|
|
|
open inner class AA {
|
|
protected inline fun inAA(crossinline modifier: (String) -> String): String = modifier(v)
|
|
}
|
|
}
|
|
|
|
// FILE: b.kt
|
|
|
|
import test.*
|
|
|
|
class B : A() {
|
|
inner class BB : AA() {
|
|
fun test(): String = inAA { i -> i }
|
|
}
|
|
}
|
|
|
|
fun box(): String = B().BB().test()
|