FIR checkers: report specific errors instead of INAPPLICABLE_CANDIDATE
Specifically, the report the following 4 errors. * NON_VARARG_SPREAD * ARGUMENT_PASSED_TWICE * TOO_MANY_ARGUMENTS * NO_VALUE_FOR_PARAMETER Also added/updated the following position strategies. * NAME_OF_NAMED_ARGUMENT * VALUE_ARGUMENTS
This commit is contained in:
committed by
Mikhail Glukhikh
parent
fc8d0e3ee0
commit
761a0a7d0d
Vendored
+6
-6
@@ -2,15 +2,15 @@
|
||||
|
||||
fun foo(p: (Int, () -> Int) -> Unit) {
|
||||
// Errors except last call
|
||||
<!INAPPLICABLE_CANDIDATE!>p<!> { 1 }
|
||||
<!INAPPLICABLE_CANDIDATE!>p<!>() { 2 }
|
||||
<!NO_VALUE_FOR_PARAMETER!>p { 1 }<!>
|
||||
p(<!NO_VALUE_FOR_PARAMETER!>)<!> { 2 }
|
||||
p(3) { 4 }
|
||||
}
|
||||
|
||||
fun bar(p: (String, Any, () -> String) -> Unit) {
|
||||
// Errors except last call
|
||||
<!INAPPLICABLE_CANDIDATE!>p<!> { "" }
|
||||
<!INAPPLICABLE_CANDIDATE!>p<!>() { "x" }
|
||||
<!INAPPLICABLE_CANDIDATE!>p<!>("y") { "z" }
|
||||
<!NO_VALUE_FOR_PARAMETER, NO_VALUE_FOR_PARAMETER!>p { "" }<!>
|
||||
p(<!NO_VALUE_FOR_PARAMETER, NO_VALUE_FOR_PARAMETER!>)<!> { "x" }
|
||||
p("y"<!NO_VALUE_FOR_PARAMETER!>)<!> { "z" }
|
||||
p("v", Any()) { "w" }
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -7,4 +7,4 @@ object Z {
|
||||
infix fun add(b : Foo.() -> Unit) : Z = Z
|
||||
}
|
||||
|
||||
val t2 = Z <!INAPPLICABLE_CANDIDATE!>add<!> <!INAPPLICABLE_CANDIDATE!>{ }<!> { }
|
||||
val t2 = Z <!INAPPLICABLE_CANDIDATE!>add<!> { } <!TOO_MANY_ARGUMENTS!>{ }<!>
|
||||
|
||||
Reference in New Issue
Block a user