Improved error reporting for invoke on expression
This commit is contained in:
+11
@@ -0,0 +1,11 @@
|
||||
fun test1(f: String.() -> Unit) {
|
||||
<!MISSING_RECEIVER!>(f)<!>()
|
||||
|
||||
<!MISSING_RECEIVER!>f<!>()
|
||||
}
|
||||
|
||||
fun test2(f: (Int) -> Int) {
|
||||
1.<!UNRESOLVED_REFERENCE!>f<!>(2)
|
||||
|
||||
2.<!NO_RECEIVER_ADMITTED!>(f)<!>(2)
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
fun foo(i: Int) {
|
||||
<!FUNCTION_EXPECTED!>i<!>()
|
||||
<!CALLEE_NOT_A_FUNCTION!>1<!>()
|
||||
<!FUNCTION_EXPECTED!>1<!>()
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fun test1() {
|
||||
<!TYPE_MISMATCH!>1<!>. { String.(i: Int) -> i }(1)
|
||||
<!TYPE_MISMATCH!>1<!>.(@label{ String.(i: Int) -> i })(1)
|
||||
}
|
||||
|
||||
fun test2(f: String.(Int) -> Unit) {
|
||||
<!TYPE_MISMATCH!>11<!>.(f)(1)
|
||||
<!TYPE_MISMATCH!>11<!>.(f)(<!NO_VALUE_FOR_PARAMETER!>)<!>
|
||||
}
|
||||
|
||||
fun test3() {
|
||||
fun foo(): String.(Int) -> Unit = {}
|
||||
|
||||
<!TYPE_MISMATCH!>1<!>.(foo())(1)
|
||||
}
|
||||
+1
-1
@@ -5,5 +5,5 @@ fun String.invoke(i: Int) {}
|
||||
fun foo(i: Int) {
|
||||
<!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>i<!>(1)
|
||||
|
||||
<!CALLEE_NOT_A_FUNCTION!>1<!>(1)
|
||||
<!FUNCTION_EXPECTED!>1<!>(1)
|
||||
}
|
||||
Reference in New Issue
Block a user