From 7f20b831596dc754d2335587a62d08267781e523 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Tue, 25 May 2021 15:46:24 +0300 Subject: [PATCH] [FIR] Use proper moduleData in synthetic properties scope --- .../JavaAnnotationSyntheticPropertiesScope.kt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaAnnotationSyntheticPropertiesScope.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaAnnotationSyntheticPropertiesScope.kt index 20e3a2135de..9413d463d90 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaAnnotationSyntheticPropertiesScope.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaAnnotationSyntheticPropertiesScope.kt @@ -5,11 +5,14 @@ package org.jetbrains.kotlin.fir.java.scopes +import org.jetbrains.kotlin.descriptors.Modality import org.jetbrains.kotlin.fir.FirSession +import org.jetbrains.kotlin.fir.copy import org.jetbrains.kotlin.fir.declarations.FirSimpleFunction import org.jetbrains.kotlin.fir.declarations.synthetic.FirSyntheticProperty import org.jetbrains.kotlin.fir.declarations.synthetic.FirSyntheticPropertyAccessor import org.jetbrains.kotlin.fir.moduleData +import org.jetbrains.kotlin.fir.nullableModuleData import org.jetbrains.kotlin.fir.resolve.substitution.ConeSubstitutor import org.jetbrains.kotlin.fir.scopes.FirTypeScope import org.jetbrains.kotlin.fir.scopes.ProcessorAction @@ -44,7 +47,15 @@ class JavaAnnotationSyntheticPropertiesScope( val callableId = CallableId(classId, name) FirAccessorSymbol(callableId, callableId).also { val accessor = FirSyntheticPropertyAccessor(function, isGetter = true) - FirSyntheticProperty(session.moduleData, name, isVar = false, it, function.status, function.resolvePhase, accessor) + FirSyntheticProperty( + session.nullableModuleData ?: function.moduleData, + name, + isVar = false, + it, + function.status.copy(newModality = Modality.FINAL), + function.resolvePhase, + accessor + ) } } processor(symbol)