Files
kotlin-fork/compiler/fir/analysis-tests/testData/resolveWithStdlib/initialization/fromLocalMembers.fir.txt
T
Nikolay Lunyak f9c6af4d2a [FIR] Properly assign <local> packages to symbols
This prevents `FirConflictsExpressionChecker.kt`
from missing conflicting local functions. It used
to due to inconsistencies in assigning `<local>`,
and this commit makes it a bit more
straightforward.

The change in KtClassTypeQualifierRenderer
prevents `FirOverrideImplementTest.testLocalClass`
from failing in `intellij`. It didn't fail for
callables, because `KtCallableSignatureRenderer`
doesn't try to render packages.

^KT-59186 Fixed
2023-08-18 13:31:04 +00:00

59 lines
1.5 KiB
Plaintext
Vendored

FILE: fromLocalMembers.kt
public final fun test1(): R|kotlin/Unit| {
lval x: R|kotlin/Int|
local final fun func(): R|kotlin/Unit| {
R|<local>/x| = Int(0)
}
R|kotlin/io/println|(R|<local>/x|)
}
public final fun test2(): R|kotlin/Unit| {
lval x: R|kotlin/Int|
lval y: R|kotlin/Int|
lval z: R|kotlin/Int|
object : R|kotlin/Any| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
init {
R|<local>/x| = Int(0)
}
public final fun localFunc(): R|kotlin/Unit| {
R|<local>/y| = Int(0)
}
public final val prop: R|kotlin/Int|
public get(): R|kotlin/Int| {
R|<local>/z| = Int(0)
^ Int(2)
}
}
R|kotlin/io/println|(R|<local>/x|)
R|kotlin/io/println|(R|<local>/x|)
}
public final fun test3(): R|kotlin/Unit| {
lval x: R|kotlin/Int|
lval y: R|kotlin/Int|
local final class A : R|kotlin/Any| {
public constructor(): R|<local>/A| {
super<R|kotlin/Any|>()
}
init {
R|<local>/x| = Int(0)
}
public final fun localFunc(): R|kotlin/Unit| {
R|<local>/y| = Int(0)
}
}
R|kotlin/io/println|(R|<local>/x|)
R|kotlin/io/println|(R|<local>/x|)
}