FIR checker: report type mismatch for named vararg arguement
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.
This commit is contained in:
committed by
teamcityserver
parent
3708290ca3
commit
e95de0a778
@@ -11,8 +11,8 @@ fun main() {
|
||||
join(1, "2", "3")
|
||||
join(<!NON_VARARG_SPREAD!>*<!>1, "2")
|
||||
join(1, *<!ARGUMENT_TYPE_MISMATCH!>"2"<!>)
|
||||
join(x = 1, a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>"2"<!>)
|
||||
join(x = <!NON_VARARG_SPREAD!>*<!>1, a = *"2")
|
||||
join(x = 1, a = <!ARGUMENT_TYPE_MISMATCH, ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>"2"<!>)
|
||||
join(x = <!NON_VARARG_SPREAD!>*<!>1, a = *<!ARGUMENT_TYPE_MISMATCH!>"2"<!>)
|
||||
join(x = 1, a = a)
|
||||
join(x = 1, a = <!ARGUMENT_TYPE_MISMATCH!>b<!>)
|
||||
join(1, *a)
|
||||
@@ -32,8 +32,8 @@ fun main() {
|
||||
joinG<String>(<!NON_VARARG_SPREAD!>*<!>1, "2")
|
||||
joinG<String>(1, *<!ARGUMENT_TYPE_MISMATCH!>"2"<!>)
|
||||
joinG<String>(x = 1, a = a)
|
||||
joinG<String>(x = 1, a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>"2"<!>)
|
||||
joinG<String>(x = <!NON_VARARG_SPREAD!>*<!>1, a = *"2")
|
||||
joinG<String>(x = 1, a = <!ARGUMENT_TYPE_MISMATCH, ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>"2"<!>)
|
||||
joinG<String>(x = <!NON_VARARG_SPREAD!>*<!>1, a = *<!ARGUMENT_TYPE_MISMATCH!>"2"<!>)
|
||||
joinG<String>(1, *a)
|
||||
joinG<String>(1, *a, "3")
|
||||
joinG<String>(1, "4", *a, "3")
|
||||
@@ -45,8 +45,8 @@ fun main() {
|
||||
joinG(<!NON_VARARG_SPREAD!>*<!>1, "2")
|
||||
joinG(1, *<!ARGUMENT_TYPE_MISMATCH!>"2"<!>)
|
||||
joinG(x = 1, a = a)
|
||||
joinG(x = 1, a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>"2"<!>)
|
||||
joinG(x = <!NON_VARARG_SPREAD!>*<!>1, a = *"2")
|
||||
joinG(x = 1, a = <!ARGUMENT_TYPE_MISMATCH, ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>"2"<!>)
|
||||
joinG(x = <!NON_VARARG_SPREAD!>*<!>1, a = *<!ARGUMENT_TYPE_MISMATCH!>"2"<!>)
|
||||
joinG(1, *a)
|
||||
joinG(1, *a, "3")
|
||||
joinG(1, "4", *a, "3")
|
||||
|
||||
Reference in New Issue
Block a user