[FIR] Fix tower priorities for invoke resolve
#KT-45316 Fixed
This commit is contained in:
Vendored
+19
@@ -0,0 +1,19 @@
|
||||
FILE: twoLocalLambdasWithSameName.kt
|
||||
public abstract interface R : R|kotlin/Any| {
|
||||
}
|
||||
public final fun takeInt(x: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
}
|
||||
public final fun test(fn: R|R.() -> kotlin/String|): R|kotlin/Unit| {
|
||||
lval renderer: R|<anonymous>| = object : R|R| {
|
||||
private constructor(): R|<anonymous>| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final fun render(fn: R|R.() -> kotlin/Int|): R|kotlin/Unit| {
|
||||
lval result: R|kotlin/Int| = R|<local>/fn|.R|SubstitutionOverride<kotlin/Function1.invoke: R|kotlin/Int|>|(this@R|/<anonymous>|)
|
||||
R|/takeInt|(R|<local>/result|)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
// ISSUE: KT-45316
|
||||
interface R
|
||||
|
||||
fun takeInt(x: Int) {}
|
||||
|
||||
fun test(fn: R.() -> String) { // (1)
|
||||
val renderer = object : R {
|
||||
fun render(fn: R.() -> Int) { // (2)
|
||||
val result = fn()
|
||||
takeInt(result)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user