Files
Dmitrii Gridin 5183019cb8 [LL FIR] resolve class before constructor
This is required to have stable resolution order to avoid concurrent
modifications and correct resolution context.
This also fixes KT-63700 as a super call expands only during body
resolution in the case of secondary constructor

^KT-63042
^KT-63700 Fixed
2023-11-23 15:55:07 +00:00

25 lines
1.2 KiB
Plaintext
Vendored

KT element: KtAnnotationEntry
FIR element: FirAnnotationCallImpl
FIR source kind: KtRealSourceElementKind
FIR element rendered:
@R|kotlin/jvm/JvmField|[Types]()
FIR FILE:
FILE: [ResolvedTo(IMPORTS)] jvmFieldAnnotationOnConstructorProperty.kt
public final [ResolvedTo(ANNOTATION_ARGUMENTS)] class MyClass : R|A| {
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=MyClass] constructor([ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=/MyClass.addCommaWarning] addCommaWarning: R|kotlin/Boolean| = LAZY_EXPRESSION): R|MyClass| {
LAZY_super<R|A|>
}
field:@R|kotlin/jvm/JvmField|[Types]() public final [ResolvedTo(ANNOTATION_ARGUMENTS)] [IsFromPrimaryConstructor=true] var addCommaWarning: R|kotlin/Boolean| = R|<local>/addCommaWarning|
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=MyClass] get(): R|kotlin/Boolean|
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=MyClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] value: R|kotlin/Boolean|): R|kotlin/Unit|
}
public open [ResolvedTo(STATUS)] class A : R|kotlin/Any| {
public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor(): R|A| {
LAZY_super<R|kotlin/Any|>
}
}