e6b5cb5216
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
27 lines
997 B
Plaintext
Vendored
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|)
|
|
}
|