Files
kotlin-fork/compiler/fir/analysis-tests/testData/resolve/overrides/protobufExt.kt
T
2020-03-19 09:51:01 +03:00

15 lines
310 B
Kotlin
Vendored

interface Ext<M : Message<M>, T>
interface Message<M : Message<M>> {
fun <T> ext(e: Ext<M, T>): T
}
class MyMessage : Message<MyMessage>
class MyExt : Ext<MyMessage, String>
fun <M : Message<M>, T> Message<M>.extF(e: Ext<M, T>): T = ext(e)
fun foo(m: MyMessage, e: MyExt) {
m.ext(e)
m.extF(e)
}