[SLC] fix visibility for lateinit properties from companion

^KTIJ-23519 Fixed
This commit is contained in:
Dmitrii Gridin
2022-12-01 13:34:31 +01:00
committed by Space Team
parent 7bfa900ce6
commit e2082fb0d7
6 changed files with 170 additions and 1 deletions
@@ -76,6 +76,7 @@ abstract class SymbolLightClassForNamedClassLike : SymbolLightClassForClassLike<
private val KtPropertySymbol.isConstOrJvmField: Boolean get() = isConst || hasJvmFieldAnnotation()
private val KtPropertySymbol.isConst: Boolean get() = (this as? KtKotlinPropertySymbol)?.isConst == true
private val KtPropertySymbol.isLateInit: Boolean get() = (this as? KtKotlinPropertySymbol)?.isLateInit == true
context(KtAnalysisSession)
protected fun addFieldsFromCompanionIfNeeded(
@@ -98,7 +99,7 @@ abstract class SymbolLightClassForNamedClassLike : SymbolLightClassForClassLike<
lightMemberOrigin = null,
isTopLevel = false,
forceStatic = true,
takePropertyVisibility = it.isConstOrJvmField,
takePropertyVisibility = it.isConstOrJvmField || it.isLateInit,
)
}
}
@@ -186,6 +186,12 @@ public class SymbolLightClassesLoadingForLibraryTestGenerated extends AbstractSy
runTest("compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.kt");
}
@Test
@TestMetadata("LateinitProperties.kt")
public void testLateinitProperties() throws Exception {
runTest("compiler/testData/asJava/ultraLightClasses/LateinitProperties.kt");
}
@Test
@TestMetadata("lateinitProperty.kt")
public void testLateinitProperty() throws Exception {
@@ -186,6 +186,12 @@ public class SymbolLightClassesLoadingForSourceTestGenerated extends AbstractSym
runTest("compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.kt");
}
@Test
@TestMetadata("LateinitProperties.kt")
public void testLateinitProperties() throws Exception {
runTest("compiler/testData/asJava/ultraLightClasses/LateinitProperties.kt");
}
@Test
@TestMetadata("lateinitProperty.kt")
public void testLateinitProperty() throws Exception {