[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:
committed by
Space Team
parent
cf655fd5ad
commit
f9c6af4d2a
Vendored
+1
-1
@@ -6,7 +6,7 @@ FILE: localClassAccessesContainingClass.kt
|
||||
|
||||
public final fun foo(): R|kotlin/Unit| {
|
||||
local final class Local : R|kotlin/Any| {
|
||||
public constructor(): R|Outer.Local| {
|
||||
public constructor(): R|<local>/Local| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -1,11 +1,11 @@
|
||||
FILE: localConstructor.kt
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
local final class Local : R|kotlin/Any| {
|
||||
public constructor(): R|Local| {
|
||||
public constructor(): R|<local>/Local| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
lval l: R|Local| = R|<local>/Local.Local|()
|
||||
lval l: R|<local>/Local| = R|<local>/Local.Local|()
|
||||
}
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ FILE: localInnerClass.kt
|
||||
}
|
||||
|
||||
local final inner class Derived : R|Foo| {
|
||||
public <anonymous>.constructor(x: R|kotlin/Int|): R|<anonymous>.Derived| {
|
||||
public <anonymous>.constructor(x: R|kotlin/Int|): R|<local>/<anonymous>.Derived| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -29,7 +29,7 @@ FILE: localObjects.kt
|
||||
|
||||
R|<local>/b|.R|/Foo.foo|()
|
||||
local final object B : R|kotlin/Any| {
|
||||
private constructor(): R|B| {
|
||||
private constructor(): R|<local>/B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ FILE: localObjects.kt
|
||||
|
||||
}
|
||||
|
||||
Q|B|.R|<local>/foo|()
|
||||
Q|<local>/B|.R|<local>/foo|()
|
||||
}
|
||||
public final val bb: <ERROR TYPE REF: Unresolved name: foo> = <Unresolved name: B>#.<Unresolved name: foo>#()
|
||||
public get(): <ERROR TYPE REF: Unresolved name: foo>
|
||||
|
||||
+6
-6
@@ -10,7 +10,7 @@ FILE: localScopes.kt
|
||||
}
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
local open class BaseLocal : R|Bar| {
|
||||
public constructor(): R|BaseLocal| {
|
||||
public constructor(): R|<local>/BaseLocal| {
|
||||
super<R|Bar|>()
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ FILE: localScopes.kt
|
||||
|
||||
}
|
||||
|
||||
lval base: R|BaseLocal| = R|<local>/BaseLocal.BaseLocal|()
|
||||
lval base: R|<local>/BaseLocal| = R|<local>/BaseLocal.BaseLocal|()
|
||||
R|<local>/base|.R|<local>/baz|()
|
||||
R|<local>/base|.R|/Bar.foo|()
|
||||
lval anonymous: R|<anonymous>| = object : R|Bar| {
|
||||
@@ -34,9 +34,9 @@ FILE: localScopes.kt
|
||||
|
||||
R|<local>/anonymous|.R|/<anonymous>.baz|()
|
||||
R|<local>/anonymous|.R|/Bar.foo|()
|
||||
local final class DerivedLocal : R|BaseLocal| {
|
||||
public constructor(): R|DerivedLocal| {
|
||||
super<R|BaseLocal|>()
|
||||
local final class DerivedLocal : R|<local>/BaseLocal| {
|
||||
public constructor(): R|<local>/DerivedLocal| {
|
||||
super<R|<local>/BaseLocal|>()
|
||||
}
|
||||
|
||||
public final fun gau(): R|kotlin/Unit| {
|
||||
@@ -44,7 +44,7 @@ FILE: localScopes.kt
|
||||
|
||||
}
|
||||
|
||||
lval derived: R|DerivedLocal| = R|<local>/DerivedLocal.DerivedLocal|()
|
||||
lval derived: R|<local>/DerivedLocal| = R|<local>/DerivedLocal.DerivedLocal|()
|
||||
R|<local>/derived|.R|<local>/gau|()
|
||||
R|<local>/derived|.R|<local>/baz|()
|
||||
R|<local>/derived|.R|/Bar.foo|()
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ FILE: localTypes.kt
|
||||
public final fun foo(): R|kotlin/Unit| {
|
||||
lval x: R|kotlin/Int| = Int(1)
|
||||
local final class Bar : R|Foo| {
|
||||
public constructor(): R|Bar| {
|
||||
public constructor(): R|<local>/Bar| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
|
||||
+5
-5
@@ -64,24 +64,24 @@ FILE: first.kt
|
||||
}
|
||||
public final fun withLocals(): R|kotlin/Unit| {
|
||||
local final class Local : R|kotlin/Any| {
|
||||
public constructor(): R|Local| {
|
||||
public constructor(): R|<local>/Local| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
private final fun bar(): R|kotlin/Unit|
|
||||
|
||||
public final fun baz(): R|kotlin/Unit| {
|
||||
this@R|/Local|.R|<local>/bar|()
|
||||
this@R|/Local|.R|<local>/Local.Inner.Inner|()
|
||||
this@R|<local>/Local|.R|<local>/bar|()
|
||||
this@R|<local>/Local|.R|<local>/Local.Inner.Inner|()
|
||||
}
|
||||
|
||||
local final inner class Inner : R|kotlin/Any| {
|
||||
public Local.constructor(): R|Local.Inner| {
|
||||
public <local>/Local.constructor(): R|<local>/Local.Inner| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final fun foo(): R|kotlin/Unit| {
|
||||
this@R|/Local|.R|<local>/bar|()
|
||||
this@R|<local>/Local|.R|<local>/bar|()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user