From a5a8f6736b59a2a7aca9a9222ea117c32b6e4f48 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 28 Sep 2023 14:01:26 +0200 Subject: [PATCH] Raw FIR: set source for setter parameter access in delegated properties Related to KT-59864 --- .../src/org/jetbrains/kotlin/fir/builder/ConversionUtils.kt | 1 + .../ir/sourceRanges/declarations/delegatedProperties.fir.txt | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler/fir/raw-fir/raw-fir.common/src/org/jetbrains/kotlin/fir/builder/ConversionUtils.kt b/compiler/fir/raw-fir/raw-fir.common/src/org/jetbrains/kotlin/fir/builder/ConversionUtils.kt index bf5148b5e66..d7cc6e3d9c3 100644 --- a/compiler/fir/raw-fir/raw-fir.common/src/org/jetbrains/kotlin/fir/builder/ConversionUtils.kt +++ b/compiler/fir/raw-fir/raw-fir.common/src/org/jetbrains/kotlin/fir/builder/ConversionUtils.kt @@ -528,6 +528,7 @@ fun FirPropertyBuilder.generateAccessorsByDelegate( arguments += thisRef() arguments += propertyRef() arguments += buildPropertyAccessExpression { + source = fakeSource calleeReference = buildResolvedNamedReference { source = fakeSource name = SpecialNames.IMPLICIT_SET_PARAMETER diff --git a/compiler/testData/ir/sourceRanges/declarations/delegatedProperties.fir.txt b/compiler/testData/ir/sourceRanges/declarations/delegatedProperties.fir.txt index 1493d69d91c..baeefaec819 100644 --- a/compiler/testData/ir/sourceRanges/declarations/delegatedProperties.fir.txt +++ b/compiler/testData/ir/sourceRanges/declarations/delegatedProperties.fir.txt @@ -59,7 +59,7 @@ @10:34..12:5 GET_VAR ': .MyClass declared in .MyClass.' type=.MyClass origin=null @10:34..12:5 GET_VAR ': .MyClass declared in .MyClass.' type=.MyClass origin=null @10:34..12:5 PROPERTY_REFERENCE 'public final observableProp: kotlin.String [delegated,var]' field=null getter='public final fun (): kotlin.String declared in .MyClass' setter='public final fun (: kotlin.String): kotlin.Unit declared in .MyClass' type=kotlin.reflect.KMutableProperty1<.MyClass, kotlin.String> origin=PROPERTY_REFERENCE_FOR_DELEGATE - @10:34..-1:-1 GET_VAR ': kotlin.String declared in .MyClass.' type=kotlin.String origin=null + @10:34..12:5 GET_VAR ': kotlin.String declared in .MyClass.' type=kotlin.String origin=null @-1:-1..-1 FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] @-1:-1..-1 VALUE_PARAMETER name: type:kotlin.Any @-1:-1..-1 VALUE_PARAMETER name:other index:0 type:kotlin.Any?