diff --git a/compiler/fir/analysis-tests/testData/resolve/properties/kotlinOverridesJavaComplex.txt b/compiler/fir/analysis-tests/testData/resolve/properties/kotlinOverridesJavaComplex.txt index 2f3d3dbf770..08d7447a131 100644 --- a/compiler/fir/analysis-tests/testData/resolve/properties/kotlinOverridesJavaComplex.txt +++ b/compiler/fir/analysis-tests/testData/resolve/properties/kotlinOverridesJavaComplex.txt @@ -23,7 +23,7 @@ FILE: Test.kt } public final fun test(): R|kotlin/String| { - ^test this@R|/LightClassWrapper|.R|/Light.typeParameters|.R|/single|() + ^test this@R|/LightClassWrapper|.R|/LightClassWrapper.typeParameters|.R|/single|() } } @@ -47,7 +47,7 @@ FILE: Test.kt public final fun test(other: R|kotlin/Any?|): R|kotlin/Unit| { when () { (R|/other| is R|LightField<*>|) -> { - R|/other|.R|/LightMember.name| + R|/other|.R|/LightField.name| } } diff --git a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/FirRenderer.kt b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/FirRenderer.kt index 38cf9ff1d09..5f0ad60132c 100644 --- a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/FirRenderer.kt +++ b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/FirRenderer.kt @@ -955,8 +955,8 @@ class FirRenderer(builder: StringBuilder, private val mode: RenderMode = RenderM if (isFakeOverride) { print("FakeOverride<") } - print(symbol.render()) + print(symbol.unwrapIntersectionOverrides().render()) if (resolvedNamedReference is FirResolvedCallableReference) { if (resolvedNamedReference.inferredTypeArguments.isNotEmpty()) { @@ -984,6 +984,11 @@ class FirRenderer(builder: StringBuilder, private val mode: RenderMode = RenderM print("|") } + private fun AbstractFirBasedSymbol<*>.unwrapIntersectionOverrides(): AbstractFirBasedSymbol<*> { + if (this is FirCallableSymbol<*> && isIntersectionOverride) return overriddenSymbol!!.unwrapIntersectionOverrides() + return this + } + override fun visitResolvedCallableReference(resolvedCallableReference: FirResolvedCallableReference) { visitResolvedNamedReference(resolvedCallableReference) }