Files
Dmitriy Novozhilov e6b5cb5216 [TD] Update diagnostics test data due to new test runners
Update includes:
- Changing syntax of `OI/`NI` tags from `<!NI;TAG!>` to `<!TAG{NI}!>`
- Fix some incorrect directives
- Change order of diagnostics in some places
- Remove ignored diagnostics from FIR test data (previously `DIAGNOSTICS` didn't work)
- Update FIR dumps in some places and add `FIR_IDENTICAL` if needed
- Replace all JAVAC_SKIP with SKIP_JAVAC directive
2020-12-16 19:52:25 +03:00

27 lines
997 B
Plaintext
Vendored

FILE: protobufExt.kt
public abstract interface Ext<M : R|Message<M>|, T> : R|kotlin/Any| {
}
public abstract interface Message<M : R|Message<M>|> : R|kotlin/Any| {
public abstract fun <T> ext(e: R|Ext<M, T>|): R|T|
}
public final class MyMessage : R|Message<MyMessage>| {
public constructor(): R|MyMessage| {
super<R|kotlin/Any|>()
}
}
public final class MyExt : R|Ext<MyMessage, kotlin/String>| {
public constructor(): R|MyExt| {
super<R|kotlin/Any|>()
}
}
public final fun <M : R|Message<M>|, T> R|Message<M>|.extF(e: R|Ext<M, T>|): R|T| {
^extF this@R|/extF|.R|SubstitutionOverride</Message.ext: R|T|>|<R|T|>(R|<local>/e|)
}
public final fun foo(m: R|MyMessage|, e: R|MyExt|): R|kotlin/Unit| {
R|<local>/m|.R|SubstitutionOverride</MyMessage.ext: R|T|>|<R|kotlin/String|>(R|<local>/e|)
R|<local>/m|.R|/extF|<R|MyMessage|, R|kotlin/String|>(R|<local>/e|)
}