f80a71517f
Vararg parameter in reflection type is interpreted as covariant
array type against array in expected functional type and as
vararg element type otherwise. For instance having function
fun foo(vararg args: Int): Unit { /*...*/ }
reference ::foo can be passed against expected
(Int) -> Unit,
(Int, Int) -> Unit, etc.
In none of such cases type for parameter in foo's reflection type
should be changed to array.
However, against expected type (IntArray) -> Unit args' type
must become IntArray.
^KT-25514 Fixed
15 lines
1.2 KiB
Plaintext
Vendored
15 lines
1.2 KiB
Plaintext
Vendored
package
|
|
|
|
public fun intVararg(/*0*/ vararg args: kotlin.Int /*kotlin.IntArray*/): kotlin.Unit
|
|
public fun numberVararg(/*0*/ vararg args: kotlin.Number /*kotlin.Array<out kotlin.Number>*/): kotlin.Unit
|
|
public fun stringVararg(/*0*/ vararg args: kotlin.String /*kotlin.Array<out kotlin.String>*/): kotlin.Unit
|
|
public fun test(): kotlin.Unit
|
|
public fun useIntArray(/*0*/ fn: (kotlin.Array<kotlin.Int>) -> kotlin.Unit): kotlin.Unit
|
|
public fun useMixedStringArgs1(/*0*/ fn: (kotlin.String, kotlin.Array<kotlin.String>) -> kotlin.Unit): kotlin.Unit
|
|
public fun useMixedStringArgs2(/*0*/ fn: (kotlin.Array<kotlin.String>, kotlin.String) -> kotlin.Unit): kotlin.Unit
|
|
public fun useMixedStringArgs3(/*0*/ fn: (kotlin.String, kotlin.Array<kotlin.String>, kotlin.String) -> kotlin.Unit): kotlin.Unit
|
|
public fun usePrimitiveIntArray(/*0*/ fn: (kotlin.IntArray) -> kotlin.Unit): kotlin.Unit
|
|
public fun useStringArray(/*0*/ fn: (kotlin.Array<kotlin.String>) -> kotlin.Unit): kotlin.Unit
|
|
public fun useStrings(/*0*/ fn: (kotlin.String, kotlin.String, kotlin.String) -> kotlin.Unit): kotlin.Unit
|
|
public fun useTwoStringArrays(/*0*/ fn: (kotlin.Array<kotlin.String>, kotlin.Array<kotlin.String>) -> kotlin.Unit): kotlin.Unit
|