Signature comparison used to find super functions in SignaturesPropagationData

#KT-4509 Fixed
This commit is contained in:
Andrey Breslav
2014-05-20 19:25:01 +04:00
parent 44849f8504
commit 773cb9efbe
15 changed files with 168 additions and 260 deletions
@@ -9,7 +9,7 @@ public final class ClassWithObjectMethod : java.lang.Object {
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun notify(): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun notifyAll(): kotlin.Unit
public open override /*1*/ fun toString(): kotlin.String?
public open override /*1*/ fun toString(): kotlin.String
public final override /*1*/ /*fake_override*/ fun wait(): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun wait(/*0*/ p0: kotlin.Long): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun wait(/*0*/ p0: kotlin.Long, /*1*/ p1: kotlin.Int): kotlin.Unit
@@ -1,14 +1,14 @@
package test
public trait InterfaceWithObjectMethods : java.lang.Object {
public abstract override /*1*/ fun clone(): kotlin.Any?
public abstract override /*1*/ fun clone(): kotlin.Any
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*1*/ fun finalize(): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun getClass(): java.lang.Class<out kotlin.Any?>
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun notify(): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun notifyAll(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String?
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public final override /*1*/ /*fake_override*/ fun wait(): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun wait(/*0*/ p0: kotlin.Long): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun wait(/*0*/ p0: kotlin.Long, /*1*/ p1: kotlin.Int): kotlin.Unit
@@ -0,0 +1,5 @@
package test
class K1 : J() {
override fun foo(l: MutableList<String>): String
}
@@ -0,0 +1,15 @@
package test
public open class J : test.K {
public constructor J()
public open override /*1*/ fun foo(/*0*/ l: kotlin.MutableList<kotlin.String>): kotlin.String
}
internal trait K {
public abstract fun foo(/*0*/ l: kotlin.MutableList<kotlin.String>): kotlin.String
}
internal final class K1 : test.J {
public constructor K1()
public open override /*1*/ fun foo(/*0*/ l: kotlin.MutableList<kotlin.String>): kotlin.String
}
@@ -0,0 +1,9 @@
package test;
import java.util.List;
public class J implements K {
public String foo(List<String> bar) {
return "";
}
}
@@ -0,0 +1,5 @@
package test
trait K {
public fun foo(l: MutableList<String>): String
}