diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/fields/SymbolLightFieldForProperty.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/fields/SymbolLightFieldForProperty.kt index 0b6eb371708..8cc50d56a99 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/fields/SymbolLightFieldForProperty.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/fields/SymbolLightFieldForProperty.kt @@ -66,10 +66,15 @@ internal class SymbolLightFieldForProperty private constructor( (kotlinOrigin as? KtProperty)?.delegateExpression?.getKtType() else propertySymbol.returnType + // See [KotlinTypeMapper#writeFieldSignature] + val typeMappingMode = if (propertySymbol.isVal) + KtTypeMappingMode.RETURN_TYPE + else + KtTypeMappingMode.VALUE_PARAMETER ktType?.asPsiType( this@SymbolLightFieldForProperty, allowErrorTypes = true, - KtTypeMappingMode.RETURN_TYPE + typeMappingMode, ) } ?: nonExistentType() } diff --git a/compiler/testData/asJava/lightClasses/lightClassByPsi/generics.fir.java b/compiler/testData/asJava/lightClasses/lightClassByPsi/generics.fir.java index dd9e1a195cd..6ceea95f88f 100644 --- a/compiler/testData/asJava/lightClasses/lightClassByPsi/generics.fir.java +++ b/compiler/testData/asJava/lightClasses/lightClassByPsi/generics.fir.java @@ -1,12 +1,12 @@ public abstract class C /* C*/ { @org.jetbrains.annotations.NotNull() - private java.util.List constructorParam; + private java.util.List constructorParam; @org.jetbrains.annotations.Nullable() private java.util.HashSet sHashSetProp; @org.jetbrains.annotations.Nullable() - private java.util.List csListProp; + private java.util.List csListProp; @org.jetbrains.annotations.Nullable() private java.util.List sListProp;