Files
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

27 lines
772 B
Plaintext
Vendored

FILE: localInnerClass.kt
public abstract interface Foo : R|kotlin/Any| {
}
public final fun bar(): R|kotlin/Unit| {
object : R|Foo| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public final fun foo(): R|Foo| {
^foo this@R|/<anonymous>|.R|<local>/<anonymous>.Derived.Derived|(Int(42))
}
local final inner class Derived : R|Foo| {
public <anonymous>.constructor(x: R|kotlin/Int|): R|<local>/<anonymous>.Derived| {
super<R|kotlin/Any|>()
}
public final val x: R|kotlin/Int| = R|<local>/x|
public get(): R|kotlin/Int|
}
}
}