Prohibit return type mismatch for delegation members
#KT-13952 Fixed #KT-13005 Fixed
This commit is contained in:
+19
@@ -0,0 +1,19 @@
|
||||
interface IBase1 {
|
||||
fun foo(): Any
|
||||
}
|
||||
|
||||
open class IDerived1 : IBase1 {
|
||||
override fun foo(): String = "1"
|
||||
}
|
||||
|
||||
<!RETURN_TYPE_MISMATCH_BY_DELEGATION!>class Broken1<!>(val b: IBase1) : IBase1 by b, IDerived1()
|
||||
|
||||
interface IBase2 {
|
||||
val foo: Any
|
||||
}
|
||||
|
||||
open class IDerived2 : IBase2 {
|
||||
override val foo: String = "2"
|
||||
}
|
||||
|
||||
<!PROPERTY_TYPE_MISMATCH_BY_DELEGATION!>class Broken2<!>(val b: IBase2) : IBase2 by b, IDerived2()
|
||||
Reference in New Issue
Block a user