[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
This commit is contained in:
Nikolay Lunyak
2023-08-09 15:18:03 +03:00
committed by Space Team
parent cf655fd5ad
commit f9c6af4d2a
107 changed files with 733 additions and 891 deletions
@@ -1,19 +1,19 @@
FILE: localAnnotationClass.kt
public final fun foo(): R|kotlin/Unit| {
local final annotation class Ann : R|kotlin/Annotation| {
public constructor(): R|Ann| {
public constructor(): R|<local>/Ann| {
super<R|kotlin/Any|>()
}
}
@R|Ann|() local final class Local : R|kotlin/Any| {
public constructor(): R|Local| {
@R|<local>/Ann|() local final class Local : R|kotlin/Any| {
public constructor(): R|<local>/Local| {
super<R|kotlin/Any|>()
}
local final annotation class Nested : R|kotlin/Annotation| {
public constructor(): R|Local.Nested| {
public constructor(): R|<local>/Local.Nested| {
super<R|kotlin/Any|>()
}
@@ -27,12 +27,12 @@ FILE: localEntitytNotAllowed.kt
}
local final object D : R|kotlin/Any| {
private constructor(): R|A.<anonymous>.D| {
private constructor(): R|<local>/<anonymous>.D| {
super<R|kotlin/Any|>()
}
local final object G : R|kotlin/Any| {
private constructor(): R|A.<anonymous>.D.G| {
private constructor(): R|<local>/<anonymous>.D.G| {
super<R|kotlin/Any|>()
}
@@ -52,12 +52,12 @@ FILE: localEntitytNotAllowed.kt
public final fun b(): R|kotlin/Unit| {
local final object E : R|kotlin/Any| {
private constructor(): R|A.E| {
private constructor(): R|<local>/E| {
super<R|kotlin/Any|>()
}
local final object F : R|kotlin/Any| {
private constructor(): R|A.E.F| {
private constructor(): R|<local>/E.F| {
super<R|kotlin/Any|>()
}
@@ -101,7 +101,7 @@ FILE: sealedSupertype.kt
}
public final fun test(): R|kotlin/Unit| {
local final class L : R|P| {
public constructor(): R|L| {
public constructor(): R|<local>/L| {
super<R|P|>()
}
@@ -101,7 +101,7 @@ FILE: sealedSupertype.ll.kt
}
public final fun test(): R|kotlin/Unit| {
local final class L : R|P| {
public constructor(): R|L| {
public constructor(): R|<local>/L| {
super<R|P|>()
}
@@ -27,7 +27,7 @@ FILE: typeParametersInObject.kt
}
public final fun test(): R|kotlin/Unit| {
local final object M<H> : R|kotlin/Any| {
private constructor<H>(): R|M<H>| {
private constructor<H>(): R|<local>/M<H>| {
super<R|kotlin/Any|>()
}