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>
24 lines
333 B
Kotlin
Vendored
24 lines
333 B
Kotlin
Vendored
// NO_CHECK_LAMBDA_INLINING
|
|
// FILE: 1.kt
|
|
|
|
package test
|
|
|
|
public inline fun <T, R> T.myLet(f: (T) -> R): R = f(this)
|
|
|
|
// FILE: 2.kt
|
|
|
|
import test.*
|
|
|
|
interface foo {
|
|
fun bar(): String
|
|
}
|
|
|
|
fun box(): String {
|
|
val baz = "OK".myLet {
|
|
object : foo {
|
|
override fun bar() = it
|
|
}
|
|
}
|
|
return baz.bar()
|
|
}
|