[FIR] KT-37027: Add 'out' projection to vararg elements
This commit is contained in:
+1
-1
@@ -12,5 +12,5 @@ fun Foo.bar(vararg x: Int) = ""
|
||||
|
||||
|
||||
fun actualTest() {
|
||||
<!INAPPLICABLE_CANDIDATE!>test<!>(<!UNRESOLVED_REFERENCE!>Foo::bar<!>)
|
||||
test(Foo::bar)
|
||||
}
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@ class A<T> {
|
||||
|
||||
fun test(a: A<out CharSequence>, y: Array<out CharSequence>) {
|
||||
a.foo("", "", "")
|
||||
a.<!INAPPLICABLE_CANDIDATE!>foo<!>(*y)
|
||||
a.foo(*y)
|
||||
// TODO: TYPE_MISMATCH_DUE_TO_TYPE_PROJECTIONS probably redundant
|
||||
a.<!INAPPLICABLE_CANDIDATE!>foo<!>(*y, "")
|
||||
a.foo(*y, "")
|
||||
}
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
fun printAll(vararg a : Any) {}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
<!INAPPLICABLE_CANDIDATE!>printAll<!>(*args) // Shouldn't be an error
|
||||
printAll(*args) // Shouldn't be an error
|
||||
}
|
||||
@@ -19,7 +19,7 @@ fun useTwoStringArrays(fn: (Array<String>, Array<String>) -> Unit) = fn(arrayOf(
|
||||
fun test() {
|
||||
<!INAPPLICABLE_CANDIDATE!>useStrings<!>(::stringVararg)
|
||||
useStringArray(::stringVararg)
|
||||
<!INAPPLICABLE_CANDIDATE!>useIntArray<!>(::numberVararg)
|
||||
useIntArray(::numberVararg)
|
||||
usePrimitiveIntArray(::intVararg)
|
||||
<!INAPPLICABLE_CANDIDATE!>useIntArray<!>(::intVararg)
|
||||
<!INAPPLICABLE_CANDIDATE!>useMixedStringArgs1<!>(::stringVararg)
|
||||
|
||||
@@ -4,6 +4,6 @@ fun bar(vararg a: String) {}
|
||||
|
||||
fun test2(a: Array<String>, b: Array<out String>) {
|
||||
bar(*a)
|
||||
<!INAPPLICABLE_CANDIDATE!>bar<!>(*b)
|
||||
<!INAPPLICABLE_CANDIDATE!>bar<!>("", *a, *b, "")
|
||||
bar(*b)
|
||||
bar("", *a, *b, "")
|
||||
}
|
||||
Reference in New Issue
Block a user