Generalize signature comparison: checking for conflicting overloads.

Also, vararg parameter no longer conflicts with Array<out T>
(CONFLICTING_JVM_DECLARATIONS is reported, can be avoided using @JvmName).
This commit is contained in:
Dmitry Petrov
2016-02-17 18:10:53 +03:00
parent 4ac05f1cd8
commit 8a2b80fe3f
7 changed files with 102 additions and 133 deletions
@@ -2,5 +2,7 @@ package
public fun foo(/*0*/ x: kotlin.Array<kotlin.Int>): kotlin.Unit
public fun foo(/*0*/ vararg x: kotlin.Int? /*kotlin.Array<out kotlin.Int?>*/): kotlin.Unit
public fun foo(/*0*/ nn: kotlin.Array<out kotlin.Number>): kotlin.Unit
public fun foo(/*0*/ vararg nn: kotlin.Number /*kotlin.Array<out kotlin.Number>*/): kotlin.Unit
public fun foo(/*0*/ vararg x: kotlin.Int /*kotlin.IntArray*/): kotlin.Unit
public fun foo(/*0*/ x: kotlin.IntArray): kotlin.Unit