Files
kotlin-fork/compiler/testData/diagnostics/tests/resolve/invoke/kt3772.kt
T
2014-05-29 21:24:05 +04:00

27 lines
462 B
Kotlin

//KT-3772 Invoke and overload resolution ambiguity
package bar
open class A {
public fun invoke(<!UNUSED_PARAMETER!>f<!>: A.() -> Unit) {}
}
class B {
public fun invoke(<!UNUSED_PARAMETER!>f<!>: B.() -> Unit) {}
}
open class C
val C.attr: A
get() = A()
open class D: C()
val D.attr: B
get() = B()
fun main(args: Array<String>) {
val b = D()
b.attr {} // overload resolution ambiguity
val d = b.attr
d {} // no error
}