| FILE: questionableSmartCast.kt | |
| public abstract interface A : R|kotlin/Any| { | |
| } | |
| public abstract interface B : R|kotlin/Any| { | |
| } | |
| public final fun foo(x: R|A|): R|kotlin/Unit| { | |
| } | |
| public final fun foo(x: R|B|): R|kotlin/Unit| { | |
| } | |
| public open class C : R|A|, R|B| { | |
| public constructor(): R|C| { | |
| super<R|kotlin/Any|>() | |
| } | |
| } | |
| public final fun main(a: R|A|): R|kotlin/Unit| { | |
| R|/foo|(R|<local>/a|) | |
| lval anonymousA: R|A| = object : R|C| { | |
| private constructor(): R|<anonymous>| { | |
| super<R|C|>() | |
| } | |
| } | |
| R|/foo|(R|<local>/anonymousA|) | |
| } |