[FIR] Initialize public visibility for class-like declarations at FIR building phase if no modifier is presented
Java resolving subsystem requires calculated visibility for correct disambiguation of supertypes. But visibility remains `Unknown` for Kotlin class-like declarations during supertypes resolving because `STATUS` resolve phase is performed after `SUPER_TYPES` phase. To fix the problem, the visibility should be initialized to public at the FIR building phase if no modifier is presented. ^KT-64127 Fixed
This commit is contained in:
committed by
Space Team
parent
ee8d42532b
commit
69b9bfc3e0
Vendored
+6
-6
@@ -1,26 +1,26 @@
|
||||
FILE: expectClassesAndFunctions.kt
|
||||
public? final? expect class A : R|kotlin/Any| {
|
||||
public final? expect class A : R|kotlin/Any| {
|
||||
}
|
||||
public? open class B : R|kotlin/Any| {
|
||||
public open class B : R|kotlin/Any| {
|
||||
public? [ContainingClassKey=B] constructor(): R|B| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
public? open class C : R|kotlin/Any| {
|
||||
public open class C : R|kotlin/Any| {
|
||||
public? [ContainingClassKey=C] constructor(): R|C| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
public? final? expect class D : B {
|
||||
public final? expect class D : B {
|
||||
public? expect [ContainingClassKey=D] error_constructor(): R|D|
|
||||
|
||||
}
|
||||
public? final? expect class E : B, C {
|
||||
public final? expect class E : B, C {
|
||||
public? expect [ContainingClassKey=E] error_constructor(): R|E|
|
||||
|
||||
}
|
||||
public? final? expect fun f(): R|kotlin/Unit|
|
||||
public? final? expect annotation class G : R|kotlin/Annotation| {
|
||||
public final? expect annotation class G : R|kotlin/Annotation| {
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user