Tests for some more cases of JVM signature clashes
This commit is contained in:
@@ -19,3 +19,16 @@ trait Tr {
|
||||
class SubTr : Tr {
|
||||
val tr = 1
|
||||
}
|
||||
|
||||
// Clashing synthetic accessors are only reported in compiler, IDE doesn't see them
|
||||
class C {
|
||||
private fun f() {}
|
||||
fun `f$b$0`(c: C) {}
|
||||
|
||||
class Nested {
|
||||
|
||||
fun test() {
|
||||
C().f()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,4 @@
|
||||
WARNING: $TESTDATA_DIR$/signatureClash.kt: (26, 17) Parameter 'c' is never used
|
||||
ERROR: $TESTDATA_DIR$/signatureClash.kt: (6, 5) Accidental override: The following declarations have the same JVM signature (getX()I):
|
||||
fun getX(): kotlin.Int
|
||||
fun <get-x>(): kotlin.Int
|
||||
@@ -19,4 +20,10 @@ ERROR: $TESTDATA_DIR$/signatureClash.kt: (16, 5) Platform declaration clash: The
|
||||
ERROR: $TESTDATA_DIR$/signatureClash.kt: (20, 5) Platform declaration clash: The following declarations have the same JVM signature (getTr()I):
|
||||
fun <get-tr>(): kotlin.Int
|
||||
fun getTr(): kotlin.Int
|
||||
ERROR: $TESTDATA_DIR$/signatureClash.kt: (24, 7) Platform declaration clash: The following declarations have the same JVM signature (f$b$0(LC;)V):
|
||||
fun f$b$0(c: C): kotlin.Unit
|
||||
fun f(): kotlin.Unit
|
||||
ERROR: $TESTDATA_DIR$/signatureClash.kt: (26, 5) Platform declaration clash: The following declarations have the same JVM signature (f$b$0(LC;)V):
|
||||
fun f$b$0(c: C): kotlin.Unit
|
||||
fun f(): kotlin.Unit
|
||||
COMPILATION_ERROR
|
||||
@@ -0,0 +1,2 @@
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>val aa<!> = 1
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>val Aa<!> = 1
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
class G<T>
|
||||
|
||||
val <T> G<T>.foo: Int
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>get()<!> = 1
|
||||
|
||||
val G<String>.foo: Int
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>get()<!> = 1
|
||||
@@ -0,0 +1,5 @@
|
||||
<!CONFLICTING_OVERLOADS!>fun foo(vararg <!UNUSED_PARAMETER!>x<!>: Int)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun foo(<!UNUSED_PARAMETER!>x<!>: IntArray)<!> {}
|
||||
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>fun foo(vararg <!UNUSED_PARAMETER!>x<!>: Int?)<!> {}
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>fun foo(<!UNUSED_PARAMETER!>x<!>: Array<Int>)<!> {}
|
||||
Reference in New Issue
Block a user