e95de0a778
ProhibitAssigningSingleElementsToVarargsInNamedForm is enabled from 1.3 so there is no need to make FIR accepting single element passed through named arguments. In addition, we may want to report only ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION and not arg type mismatch. But FE1.0 is reporting both so I am following it. If we want to remove the redundant report, we will probably want to remove FirNamedVarargChecker and report during resolution as a cone diagnostic.
34 lines
704 B
Kotlin
Vendored
34 lines
704 B
Kotlin
Vendored
// IGNORE_BACKEND_FIR: JVM_IR
|
|
// !LANGUAGE: -ProhibitAssigningSingleElementsToVarargsInNamedForm -AllowAssigningArrayElementsToVarargsInNamedFormForFunctions
|
|
|
|
fun box(): String {
|
|
if (test1(p = 1) != "1") return "fail 1"
|
|
if (test2(p = "1") != "1") return "fail 2"
|
|
if (test3(p = "1") != "1") return "fail 3"
|
|
|
|
return "OK"
|
|
}
|
|
|
|
fun test1(vararg p: Int): String {
|
|
var result = ""
|
|
for (i in p) {
|
|
result += i
|
|
}
|
|
return result
|
|
}
|
|
|
|
fun test2(vararg p: String): String {
|
|
var result = ""
|
|
for (i in p) {
|
|
result += i
|
|
}
|
|
return result
|
|
}
|
|
|
|
fun <T> test3(vararg p: T): String {
|
|
var result = ""
|
|
for (i in p) {
|
|
result += i
|
|
}
|
|
return result
|
|
} |