FIR: introduce delegate diagnostics
This commit adds diagnostics for the following * DELEGATE_SPECIAL_FUNCTION_MISSING * DELEGATE_SPECIAL_FUNCTION_AMBIGUITY * DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE
This commit is contained in:
committed by
Mikhail Glukhikh
parent
454ae3b17a
commit
b5caa658d6
Vendored
-9
@@ -1,9 +0,0 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
object T1 {
|
||||
operator fun Int.provideDelegate(host: T1, p: Any): Long = 2
|
||||
operator fun Long.getValue(receiver: String, p: Any): Double = 1.0
|
||||
|
||||
val String.test1 by 1
|
||||
val test2 by <!ARGUMENT_TYPE_MISMATCH!>1<!>
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
object T1 {
|
||||
|
||||
Vendored
+1
-1
@@ -10,5 +10,5 @@ object T2 {
|
||||
operator fun <T> Foo<T>.getValue(receiver: String, p: Any?): T = TODO()
|
||||
|
||||
val String.test1: String by delegate()
|
||||
val test2: String by <!ARGUMENT_TYPE_MISMATCH!>delegate()<!>
|
||||
val test2: String by <!DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE!>delegate()<!>
|
||||
}
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ fun wrong(arg: Wrong) {}
|
||||
class Wrong
|
||||
|
||||
class Right {
|
||||
val prop: () -> Unit by <!ARGUMENT_TYPE_MISMATCH, ARGUMENT_TYPE_MISMATCH!>::wrong<!>
|
||||
val prop: () -> Unit by <!DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE!>::wrong<!>
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
|
||||
Reference in New Issue
Block a user