[FIR] add missing transformation of backing field during annotation arguments phase

^KT-56551
This commit is contained in:
Dmitrii Gridin
2023-10-03 16:07:25 +02:00
committed by Space Team
parent 889c210576
commit 61063a19b6
3 changed files with 16 additions and 8 deletions
@@ -217,8 +217,8 @@ FILE: [ResolvedTo(IMPORTS)] propertyWithImplicitTypeAndFieldAnnotations.kt
public [ResolvedTo(STATUS)] get(): <implicit>
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val setterParameterProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@Anno[Unresolved](LAZY_EXPRESSION) public? final? const [ResolvedTo(RAW_FIR)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@R|myPack/Anno|[Types](propertyProperty#) field:@FIELD:R|myPack/Anno|[Types](fieldProperty#) public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] var variableToResolve: <implicit> = LAZY_EXPRESSION
@R|myPack/Anno|[Types](getterProperty#) public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] get(): <implicit> { LAZY_BLOCK }
@R|myPack/Anno|[Types](setterProperty#) public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] set([ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] @R|myPack/Anno|[Types](setterParameterProperty#) value: <implicit>): R|kotlin/Unit| { LAZY_BLOCK }
@@ -242,8 +242,8 @@ FILE: [ResolvedTo(IMPORTS)] propertyWithImplicitTypeAndFieldAnnotations.kt
public [ResolvedTo(STATUS)] get(): <implicit>
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val setterParameterProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@Anno[Unresolved](LAZY_EXPRESSION) public? final? const [ResolvedTo(RAW_FIR)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@R|myPack/Anno|[Types](propertyProperty#) field:@FIELD:R|myPack/Anno|[Types](fieldProperty#) public final [ResolvedTo(CONTRACTS)] var variableToResolve: <implicit> = <strcat>(IntegerLiteral(42))
@R|myPack/Anno|[Types](getterProperty#) public [ResolvedTo(CONTRACTS)] get(): <implicit> {
^ field#.plus#(String(str))
@@ -314,8 +314,8 @@ FILE: [ResolvedTo(IMPORTS)] propertyWithImplicitTypeAndFieldAnnotationsScript.kt
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val setterParameterProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@Anno[Unresolved](LAZY_EXPRESSION) public? final? const [ResolvedTo(RAW_FIR)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@R|myPack/Anno|[Types](propertyProperty#) field:@FIELD:R|myPack/Anno|[Types](fieldProperty#) public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] var variableToResolve: <implicit> = LAZY_EXPRESSION
@R|myPack/Anno|[Types](getterProperty#) public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] get(): <implicit> { LAZY_BLOCK }
@@ -350,8 +350,8 @@ FILE: [ResolvedTo(IMPORTS)] propertyWithImplicitTypeAndFieldAnnotationsScript.kt
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val setterParameterProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@Anno[Unresolved](LAZY_EXPRESSION) public? final? const [ResolvedTo(RAW_FIR)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
@R|myPack/Anno|[Types](LAZY_EXPRESSION) public final const [ResolvedTo(STATUS)] val fieldProperty: <implicit> = LAZY_EXPRESSION
public [ResolvedTo(STATUS)] get(): <implicit>
@R|myPack/Anno|[Types](propertyProperty#) field:@FIELD:R|myPack/Anno|[Types](fieldProperty#) public final [ResolvedTo(CONTRACTS)] var variableToResolve: <implicit> = <strcat>(IntegerLiteral(42))
@R|myPack/Anno|[Types](getterProperty#) public [ResolvedTo(CONTRACTS)] get(): <implicit> {
@@ -520,3 +520,4 @@ FILE: [ResolvedTo(BODY_RESOLVE)] propertyWithImplicitTypeAndFieldAnnotationsScri
@R|myPack/Anno|[Types](number = R|myPack/setterProperty|) public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] @R|myPack/Anno|[Types](number = R|myPack/setterParameterProperty|) value: R|kotlin/String|): R|kotlin/Unit| {
^ Q|kotlin/Unit|
}
@@ -129,9 +129,16 @@ private class FirDeclarationsResolveTransformerForArgumentAnnotations(
.transformGetter(transformer, data)
.transformSetter(transformer, data)
.transformTypeParameters(transformer, data)
.transformBackingField(transformer, data)
return property
}
override fun transformBackingField(backingField: FirBackingField, data: ResolutionMode): FirBackingField {
backingField.transformAnnotations(transformer, data)
return backingField
}
override fun transformPropertyAccessor(
propertyAccessor: FirPropertyAccessor,
data: ResolutionMode