Choose first non-flexible when selecting most specific

This commit is contained in:
Denis Zharkov
2015-12-11 14:48:45 +03:00
parent 02311538d6
commit 8d0c3281cd
21 changed files with 126 additions and 125 deletions
@@ -19,7 +19,7 @@ public interface B {
public interface C : A, B {
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ y: kotlin.Int): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ x: kotlin.Int): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -27,14 +27,14 @@ public interface C : A, B {
public abstract class C1 : A, B {
public constructor C1()
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ y: kotlin.Int): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ x: kotlin.Int): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
public interface D : B, A {
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ x: kotlin.Int): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ y: kotlin.Int): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -42,7 +42,7 @@ public interface D : B, A {
public abstract class D1 : A, B {
public constructor D1()
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ y: kotlin.Int): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ x: kotlin.Int): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -21,10 +21,10 @@ public interface B {
}
public interface C : A, B {
public abstract override /*2*/ /*fake_override*/ fun bar(/*0*/ a1: kotlin.Int, /*1*/ a2: kotlin.Double, /*2*/ b3: kotlin.String): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun baz(/*0*/ a1: kotlin.Int, /*1*/ b2: kotlin.Double, /*2*/ a3: kotlin.String, /*3*/ b4: kotlin.Int, /*4*/ a5: kotlin.String): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun bar(/*0*/ a1: kotlin.Int, /*1*/ a2: kotlin.Double, /*2*/ a3: kotlin.String): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun baz(/*0*/ a1: kotlin.Int, /*1*/ a2: kotlin.Double, /*2*/ a3: kotlin.String, /*3*/ a4: kotlin.Int, /*4*/ a5: kotlin.String): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ b1: kotlin.Int, /*1*/ b2: kotlin.Double): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ a1: kotlin.Int, /*1*/ a2: kotlin.Double): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -18,7 +18,7 @@ public interface B {
public interface C : A<kotlin.Int>, B {
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ b: kotlin.Int): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ a: kotlin.Int): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -18,7 +18,7 @@ public interface B {
public interface C : A, B {
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun </*0*/ T> foo(/*0*/ b: T): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun </*0*/ E> foo(/*0*/ a: E): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -18,7 +18,7 @@ public interface B</*0*/ E> {
public interface C</*0*/ U> : A<U>, B<U> {
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ b: U): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ a: U): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -19,7 +19,7 @@ public interface B {
public interface C : A, B {
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ b1: kotlin.Int, /*1*/ b2: kotlin.Double): kotlin.Unit
public abstract override /*2*/ /*fake_override*/ fun foo(/*0*/ a1: kotlin.Int, /*1*/ a2: kotlin.Double): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}