Improve JvmConflictingDeclarations diagnostics rendering

This commit is contained in:
Pavel V. Talanov
2016-02-19 16:49:29 +03:00
parent d0b27a5fe2
commit b399bbffd7
6 changed files with 39 additions and 18 deletions
@@ -0,0 +1,12 @@
package a.b
class String
interface I {
<error descr="[CONFLICTING_JVM_DECLARATIONS] Platform declaration clash: The following declarations have the same JVM signature (foo(Ljava/util/List;)V):
fun foo(l: List<a.b.String>): Unit
fun foo(l: List<kotlin.String>): Unit">fun foo(l: List<String>)</error>
<error descr="[CONFLICTING_JVM_DECLARATIONS] Platform declaration clash: The following declarations have the same JVM signature (foo(Ljava/util/List;)V):
fun foo(l: List<a.b.String>): Unit
fun foo(l: List<kotlin.String>): Unit">fun foo(l: List<kotlin.String>)</error>
}
@@ -6,8 +6,8 @@ import kotlin.jvm.JvmName
import kotlin.jvm.JvmMultifileClass
<error descr="[CONFLICTING_JVM_DECLARATIONS] Platform declaration clash: The following declarations have the same JVM signature (getX()I):
fun <get-x>(): kotlin.Int
fun getX(): kotlin.Int">val x</error> = 1
fun <get-x>(): Int
fun getX(): Int">val x</error> = 1
<error descr="[CONFLICTING_JVM_DECLARATIONS] Platform declaration clash: The following declarations have the same JVM signature (getX()I):
fun <get-x>(): kotlin.Int
fun getX(): kotlin.Int">fun getX()</error> = 1
fun <get-x>(): Int
fun getX(): Int">fun getX()</error> = 1
@@ -1,8 +1,8 @@
interface T {
<error descr="[CONFLICTING_JVM_DECLARATIONS] Platform declaration clash: The following declarations have the same JVM signature (foo(Ljava/util/List;)V):
fun foo(l: kotlin.collections.List<kotlin.Int>): kotlin.Unit
fun foo(l: kotlin.collections.List<kotlin.String>): kotlin.Unit">fun foo(l: List<String>)</error> {}
fun foo(l: List<Int>): Unit
fun foo(l: List<String>): Unit">fun foo(l: List<String>)</error> {}
<error descr="[CONFLICTING_JVM_DECLARATIONS] Platform declaration clash: The following declarations have the same JVM signature (foo(Ljava/util/List;)V):
fun foo(l: kotlin.collections.List<kotlin.Int>): kotlin.Unit
fun foo(l: kotlin.collections.List<kotlin.String>): kotlin.Unit">fun foo(l: List<Int>)</error> {}
fun foo(l: List<Int>): Unit
fun foo(l: List<String>): Unit">fun foo(l: List<Int>)</error> {}
}