Files
kotlin-fork/compiler/testData/diagnostics/tests/namedArguments/ambiguousNamedArguments2.fir.kt
T
Tianyu Geng 761a0a7d0d 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
2021-04-02 14:36:14 +03:00

25 lines
847 B
Kotlin
Vendored

interface A {
fun foo(a1: Int, a2: Double)
fun bar(a1: Int, a2: Double, a3: String)
fun baz(a1: Int, a2: Double, a3: String, a4: Int, a5: String)
}
interface B {
fun foo(b1: Int, b2: Double)
fun bar(a1: Int, a2: Double, b3: String)
fun baz(a1: Int, b2: Double, a3: String, b4: Int, a5: String)
}
interface C : A, B { // Warning here, this is correct
}
fun test(c: C) {
c.foo(b1 = 1, b2 = 1.0<!NO_VALUE_FOR_PARAMETER, NO_VALUE_FOR_PARAMETER!>)<!>
c.foo(a1 = 1, b2 = 1.0<!NO_VALUE_FOR_PARAMETER!>)<!>
c.foo(a1 = 1, a2 = 1.0)
c.foo(a1 = 1, a2 = 1.0)
c.bar(a1 = 1, a2 = 1.0, b3= ""<!NO_VALUE_FOR_PARAMETER!>)<!>
c.baz(a1 = 1, b2 = 1.0, a3 = "", b4 = 2, a5 = ""<!NO_VALUE_FOR_PARAMETER, NO_VALUE_FOR_PARAMETER!>)<!>
c.baz(a1 = 1, a2 = 1.0, a3 = "", b4 = 2, a5 = ""<!NO_VALUE_FOR_PARAMETER!>)<!>
}