diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/FirLightClassForSymbol.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/FirLightClassForSymbol.kt index 1ad57a47da5..a3f355f6a28 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/FirLightClassForSymbol.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/FirLightClassForSymbol.kt @@ -170,9 +170,11 @@ internal class FirLightClassForSymbol( for (propertySymbol in propertySymbols) { val isJvmField = propertySymbol.hasJvmFieldAnnotation() val isJvmStatic = propertySymbol.hasJvmStaticAnnotation() + val isLateInit = (propertySymbol as? KtKotlinPropertySymbol)?.isLateInit == true - val forceStatic = isObject && (propertySymbol is KtKotlinPropertySymbol && propertySymbol.isConst || isJvmStatic || isJvmField) - val takePropertyVisibility = !isCompanionObject && (isJvmField || forceStatic) + val forceStatic = + isObject && (propertySymbol is KtKotlinPropertySymbol && propertySymbol.isConst || isJvmStatic || isJvmField) + val takePropertyVisibility = !isCompanionObject && (isLateInit || isJvmField || forceStatic) createField( declaration = propertySymbol, diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.kt b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.kt index 5d4ba5eff8c..29447a2ed14 100644 --- a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.kt +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.kt @@ -36,4 +36,6 @@ class Class { private val privateN: String? = { "" }() lateinit var lateInitVar: String -} \ No newline at end of file +} + +// FIR_COMPARISON