Report error if fun interface method has JVM name getFunctionDelegate
This is needed so that it wouldn't clash with the corresponding member from the kotlin/jvm/internal/FunctionAdapter interface, which all fun interface wrappers will implement to get proper equals/hashCode. The workaround is to rename the fun interface method. #KT-33455
This commit is contained in:
+32
@@ -0,0 +1,32 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
fun interface F1 {
|
||||
val <!FUNCTION_DELEGATE_MEMBER_NAME_CLASH!>functionDelegate<!>: Function<*>? get() = null
|
||||
fun invoke()
|
||||
}
|
||||
|
||||
fun interface F2 {
|
||||
fun <!FUNCTION_DELEGATE_MEMBER_NAME_CLASH!>getFunctionDelegate<!>(): Function<*>? = null
|
||||
fun invoke()
|
||||
}
|
||||
|
||||
fun interface F3 {
|
||||
val getFunctionDelegate: Function<*>? get() = null
|
||||
fun invoke()
|
||||
}
|
||||
|
||||
fun interface F4 {
|
||||
fun functionDelegate(): Function<*>? = null
|
||||
fun invoke()
|
||||
}
|
||||
|
||||
fun interface F5 {
|
||||
val <!FUNCTION_DELEGATE_MEMBER_NAME_CLASH!>functionDelegate<!>: Any? get() = null
|
||||
fun invoke()
|
||||
}
|
||||
|
||||
fun interface F6 {
|
||||
val String.functionDelegate: Function<*>? get() = null
|
||||
fun getFunctionDelegate(x: Any?): Function<*>? = null
|
||||
fun invoke()
|
||||
}
|
||||
Reference in New Issue
Block a user