diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirCallCompletionResultsWriterTransformer.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirCallCompletionResultsWriterTransformer.kt index f1d4ede334e..c6ae1f159bc 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirCallCompletionResultsWriterTransformer.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirCallCompletionResultsWriterTransformer.kt @@ -633,6 +633,7 @@ class FirCallCompletionResultsWriterTransformer( buildErrorNamedReference { source = this@toResolvedReference.source diagnostic = this@toResolvedReference.diagnostic + candidateSymbol = this@toResolvedReference.candidateSymbol } } else { buildResolvedNamedReference { diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/builder/FirErrorNamedReferenceBuilder.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/builder/FirErrorNamedReferenceBuilder.kt index 0b0df91dac8..87dae2541e1 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/builder/FirErrorNamedReferenceBuilder.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/builder/FirErrorNamedReferenceBuilder.kt @@ -23,11 +23,13 @@ import org.jetbrains.kotlin.name.Name @FirBuilderDsl class FirErrorNamedReferenceBuilder { var source: FirSourceElement? = null + var candidateSymbol: AbstractFirBasedSymbol<*>? = null lateinit var diagnostic: ConeDiagnostic fun build(): FirErrorNamedReference { return FirErrorNamedReferenceImpl( source, + candidateSymbol, diagnostic, ) } diff --git a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/impl/FirErrorNamedReferenceImpl.kt b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/impl/FirErrorNamedReferenceImpl.kt index 77669cb1829..9d513fb9f7c 100644 --- a/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/impl/FirErrorNamedReferenceImpl.kt +++ b/compiler/fir/tree/gen/org/jetbrains/kotlin/fir/references/impl/FirErrorNamedReferenceImpl.kt @@ -19,10 +19,10 @@ import org.jetbrains.kotlin.fir.visitors.* internal class FirErrorNamedReferenceImpl( override val source: FirSourceElement?, + override val candidateSymbol: AbstractFirBasedSymbol<*>?, override val diagnostic: ConeDiagnostic, ) : FirErrorNamedReference() { override val name: Name = Name.special("<${diagnostic.reason}>") - override val candidateSymbol: AbstractFirBasedSymbol<*>? get() = null override fun acceptChildren(visitor: FirVisitor, data: D) {} 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 3d189b571e4..d65b634654f 100644 --- a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/FirRenderer.kt +++ b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/FirRenderer.kt @@ -969,10 +969,8 @@ class FirRenderer(builder: StringBuilder, private val mode: RenderMode = RenderM override fun visitNamedReference(namedReference: FirNamedReference) { val symbol = namedReference.candidateSymbol when { - symbol != null -> { - print("R?C|${symbol.render()}|") - } namedReference is FirErrorNamedReference -> print("<${namedReference.diagnostic.reason}>#") + symbol != null -> print("R?C|${symbol.render()}|") else -> print("${namedReference.name}#") } } diff --git a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt index c705a4ce8af..ddede3e0d74 100644 --- a/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt +++ b/compiler/fir/tree/tree-generator/src/org/jetbrains/kotlin/fir/tree/generator/ImplementationConfigurator.kt @@ -423,7 +423,6 @@ object ImplementationConfigurator : AbstractFirTreeImplementationConfigurator() impl(errorNamedReference) { default("name", "Name.special(\"<\${diagnostic.reason}>\")") - defaultNull("candidateSymbol", withGetter = true) } impl(typeProjection, "FirTypePlaceholderProjection") {