[FIR] Require equivalent candidates to have the same parameters order
NB: In general, it's unclear what to do in cases like the following one, even when sometimes we could, indeed, prefer something: ``` fun foo(a: Int, b: String, c: Boolean) fun foo(b: String, c: Boolean, a: Int) foo(c = false, b = "", a = 0) ``` ^KT-55933 Fixed
This commit is contained in:
committed by
Space Team
parent
4f0563dee1
commit
fe783d7121
@@ -1,12 +0,0 @@
|
||||
// DIAGNOSTICS: -DEBUG_INFO_MISSING_UNRESOLVED
|
||||
// ISSUE: KT-55933
|
||||
|
||||
fun swapVararg(vararg namedVararg: String, named: Int){}
|
||||
fun swapVararg(named: Int, vararg namedVararg: String){}
|
||||
|
||||
val x = swapVararg(named = 42, namedVararg = arrayOf("1", "2"),)
|
||||
|
||||
fun swap(string: String, int: Int){}
|
||||
fun swap(int: Int, string: String){}
|
||||
|
||||
val y = swap(int = 42, string = "2")
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// DIAGNOSTICS: -DEBUG_INFO_MISSING_UNRESOLVED
|
||||
// ISSUE: KT-55933
|
||||
|
||||
|
||||
+1
-1
@@ -8,6 +8,6 @@ fun overloadedFun5(vararg ss: String) = X1
|
||||
fun overloadedFun5(s: String, vararg ss: String) = X2
|
||||
|
||||
val test1 = overloadedFun5("")
|
||||
val test2 = overloadedFun5("", "")
|
||||
val test2 = <!OVERLOAD_RESOLUTION_AMBIGUITY!>overloadedFun5<!>("", "")
|
||||
val test3: X2 = overloadedFun5(s = "", ss = <!ARGUMENT_TYPE_MISMATCH, ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>""<!>)
|
||||
val test4: X1 = overloadedFun5(ss = <!ARGUMENT_TYPE_MISMATCH, ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>""<!>)
|
||||
|
||||
Reference in New Issue
Block a user