Prohibit super calls with default parameters
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -ABSTRACT_SUPER_CALL
|
||||
|
||||
abstract class A {
|
||||
open fun foo(a: String = "default") {
|
||||
}
|
||||
|
||||
final fun foo2(a: String = "default") {
|
||||
}
|
||||
|
||||
abstract fun foo3(a: String = "default")
|
||||
}
|
||||
|
||||
open class B : A() {
|
||||
fun test() {
|
||||
super.foo("123")
|
||||
<!SUPER_CALL_WITH_DEFAULT_PARAMETERS!>super.foo()<!>
|
||||
|
||||
super.foo2("123")
|
||||
<!SUPER_CALL_WITH_DEFAULT_PARAMETERS!>super.foo2()<!>
|
||||
|
||||
super.foo3("123")
|
||||
<!SUPER_CALL_WITH_DEFAULT_PARAMETERS!>super.foo3()<!>
|
||||
}
|
||||
|
||||
override fun foo3(a: String) {
|
||||
throw UnsupportedOperationException()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package
|
||||
|
||||
public abstract class A {
|
||||
public constructor A()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open fun foo(/*0*/ a: kotlin.String = ...): kotlin.Unit
|
||||
public final fun foo2(/*0*/ a: kotlin.String = ...): kotlin.Unit
|
||||
public abstract fun foo3(/*0*/ a: kotlin.String = ...): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class B : A {
|
||||
public constructor B()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun foo(/*0*/ a: kotlin.String = ...): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun foo2(/*0*/ a: kotlin.String = ...): kotlin.Unit
|
||||
public open override /*1*/ fun foo3(/*0*/ a: kotlin.String = ...): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun test(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
Reference in New Issue
Block a user