Disallow @JvmOverloads on any interface methods

#KT-12224 Fixed
This commit is contained in:
Dmitry Jemerov
2016-11-17 16:20:10 +01:00
parent 79e90b32e8
commit b8525de726
7 changed files with 13 additions and 3 deletions
@@ -3,5 +3,5 @@ class C {
<!OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS!>@kotlin.jvm.JvmOverloads<!> constructor() {
}
<!OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS!>@kotlin.jvm.JvmOverloads<!>1 fun foo(s: String) {}
<!OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS!>@kotlin.jvm.JvmOverloads<!> fun foo(s: String) {}
}
@@ -1,5 +1,8 @@
interface T {
<!OVERLOADS_ABSTRACT!>@kotlin.jvm.JvmOverloads<!> fun foo(s: String = "OK")
<!OVERLOADS_INTERFACE!>@kotlin.jvm.JvmOverloads<!> fun foo(s: String = "OK")
<!OVERLOADS_INTERFACE!>@kotlin.jvm.JvmOverloads<!> fun bar(s: String = "OK") {
}
}
@@ -9,6 +9,7 @@ public abstract class C {
}
public interface T {
@kotlin.jvm.JvmOverloads public open fun bar(/*0*/ s: kotlin.String = ...): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@kotlin.jvm.JvmOverloads public abstract fun foo(/*0*/ s: kotlin.String = ...): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int