2796d21ec6
This fixes an issue if type of some implicit receiver was changed because of changed smartcast in outer scope ^KT-51228 Fixed
40 lines
1.1 KiB
Plaintext
Vendored
40 lines
1.1 KiB
Plaintext
Vendored
FILE: smartcastOnImplicitReceiverOfCallableReference.kt
|
|
public abstract interface A : R|kotlin/Any| {
|
|
public abstract fun foo(): R|kotlin/Unit|
|
|
|
|
}
|
|
public final fun R|kotlin/Any|.test_1(): R|kotlin/Unit| {
|
|
when (this@R|/test_1|) {
|
|
($subj$ is R|A|) -> {
|
|
this@R|/test_1|.R|/A.foo|()
|
|
::R|/A.foo|
|
|
}
|
|
else -> {
|
|
throw R|java/lang/Exception.Exception|()
|
|
}
|
|
}
|
|
|
|
}
|
|
public final fun R|kotlin/Any|.test_2(): R|kotlin/Unit| {
|
|
when (this@R|/test_2|) {
|
|
($subj$ is R|A|) -> {
|
|
this@R|/test_2|.R|/A.foo|()
|
|
fun <anonymous>(): R|kotlin/Unit| <inline=Unknown> {
|
|
this@R|/test_2|.R|/A.foo|()
|
|
}
|
|
|
|
}
|
|
else -> {
|
|
}
|
|
}
|
|
|
|
}
|
|
public final fun R|kotlin/Any|.test_3(): R|kotlin/Unit| {
|
|
when () {
|
|
(this@R|/test_3| is R|A|) -> {
|
|
lval f: R|kotlin/reflect/KFunction0<kotlin/Unit>| = ::R|/A.foo|
|
|
}
|
|
}
|
|
|
|
}
|