[LL FIR] avoid body resolve during getOrBuildFir for super types

This also covers a case with annotations on a super type entry

^KT-61789 Fixed
This commit is contained in:
Dmitrii Gridin
2023-10-10 16:02:04 +02:00
committed by Space Team
parent 515e05cd94
commit 90102ad8b7
14 changed files with 97 additions and 86 deletions
@@ -18,16 +18,16 @@ FILE: [ResolvedTo(IMPORTS)] superCallAnnotationScript.kts
}
public open [ResolvedTo(STATUS)] class A : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor(): R|A| {
public? open [ResolvedTo(SUPER_TYPES)] class A : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=A] constructor(): R|A| {
LAZY_super<R|kotlin/Any|>
}
}
public final [ResolvedTo(BODY_RESOLVE)] class B : R|@R|Anno|() A| {
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=B] constructor(): R|B| {
super<R|@R|Anno|() A|>()
public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] class B : R|@R|Anno|() A| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=B] constructor(): R|B| {
LAZY_super<@R|Anno|[Types]() A>
}
}
}