Don't check an argument type during passing it to vararg in the named form to avoid false positives if the argument type is type variable yet

^KT-41144 Fixed
This commit is contained in:
Victor Petukhov
2020-09-09 17:59:23 +03:00
parent 2c4c8cdf01
commit bcd33da6f8
14 changed files with 64 additions and 20 deletions
@@ -12,7 +12,7 @@ fun main() {
join(1, "2", "3")
join(<!NON_VARARG_SPREAD!>*<!>1, "2")
join(1, *<!TYPE_MISMATCH!>"2"<!>)
join(x = 1, a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR!>"2"<!>)
join(x = 1, a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR, NI;TYPE_MISMATCH!>"2"<!>)
join(x = <!NON_VARARG_SPREAD!>*<!>1, a = *<!TYPE_MISMATCH!>"2"<!>)
join(x = 1, a = a)
join(x = 1, a = <!TYPE_MISMATCH!>b<!>)
@@ -33,7 +33,7 @@ fun main() {
joinG<String>(<!NON_VARARG_SPREAD!>*<!>1, "2")
joinG<String>(1, *<!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 = 1, a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR, NI;TYPE_MISMATCH!>"2"<!>)
joinG<String>(x = <!NON_VARARG_SPREAD!>*<!>1, a = *<!TYPE_MISMATCH!>"2"<!>)
joinG<String>(1, *a)
joinG<String>(1, *a, "3")
@@ -46,7 +46,7 @@ fun main() {
joinG(<!NON_VARARG_SPREAD!>*<!>1, "2")
<!OI;TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR!>joinG<!>(1, *<!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 = 1, a = <!ASSIGNING_SINGLE_ELEMENT_TO_VARARG_IN_NAMED_FORM_FUNCTION_ERROR, NI;TYPE_MISMATCH!>"2"<!>)
<!OI;TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR!>joinG<!>(x = <!NON_VARARG_SPREAD!>*<!>1, a = *<!TYPE_MISMATCH!>"2"<!>)
joinG(1, *a)
joinG(1, *a, "3")