FIR: Refine callable reference resolution in assignment position

synthetic_select<() -> T>(::foo) form allows to select better candidate
than synthetic_select(::foo) with expect type `() -> T`
This commit is contained in:
Denis.Zharkov
2021-11-08 12:00:19 +03:00
committed by teamcity
parent 65d7da122f
commit 6e15ee8fea
14 changed files with 83 additions and 20 deletions
@@ -0,0 +1,20 @@
// FIR_IDENTICAL
// SKIP_TXT
// FILE: lib.kt
package lib
fun foo(x: Double): Double = x
// FILE: main.kt
import lib.*
fun foo(): Map<Int, String> = TODO()
var z: (x: Double) -> Double = { it }
fun bar() {
z = ::foo
}
fun baz(x: (Double) -> Double) {}