diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.descriptors.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.descriptors.pretty.txt deleted file mode 100644 index ea05a60d057..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.descriptors.pretty.txt +++ /dev/null @@ -1,3 +0,0 @@ -@GetAnnotation -@ExplicitGetAnnotation -get() \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.descriptors.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.descriptors.txt deleted file mode 100644 index fbcba9b4cb7..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.descriptors.txt +++ /dev/null @@ -1,28 +0,0 @@ -KtPropertyGetterSymbol: - annotationsList: [ - GetAnnotation() - psi: KtAnnotationEntry - ExplicitGetAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - hasBody: true - hasStableParameterNames: true - isDefault: false - isExtension: false - isInline: false - isOverride: false - modality: FINAL - origin: SOURCE - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: ACCESSOR - typeParameters: [] - valueParameters: [] - visibility: Public - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.pretty.txt index 82fec599d6b..ea05a60d057 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.pretty.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.pretty.txt @@ -1,3 +1,3 @@ -@ExplicitGetAnnotation @GetAnnotation +@ExplicitGetAnnotation get() \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.txt index aa354eb68f1..fbcba9b4cb7 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithAnnotations.txt @@ -1,9 +1,9 @@ KtPropertyGetterSymbol: annotationsList: [ - ExplicitGetAnnotation() - psi: KtAnnotationEntry GetAnnotation() psi: KtAnnotationEntry + ExplicitGetAnnotation() + psi: KtAnnotationEntry ] callableIdIfNonLocal: null contextReceivers: [] diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.descriptors.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.descriptors.pretty.txt deleted file mode 100644 index ea05a60d057..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.descriptors.pretty.txt +++ /dev/null @@ -1,3 +0,0 @@ -@GetAnnotation -@ExplicitGetAnnotation -get() \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.descriptors.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.descriptors.txt deleted file mode 100644 index bfac53b0fad..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.descriptors.txt +++ /dev/null @@ -1,43 +0,0 @@ -KtPropertyGetterSymbol: - annotationsList: [ - GetAnnotation() - psi: KtAnnotationEntry - ExplicitGetAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - hasBody: true - hasStableParameterNames: true - isDefault: false - isExtension: false - isInline: false - isOverride: false - modality: FINAL - origin: SOURCE - receiverParameter: KtReceiverParameterSymbol: - annotationsList: [ - ReceiverAnnotation() - psi: KtAnnotationEntry - ] - origin: SOURCE - owningCallableSymbol: KtKotlinPropertySymbol(/x) - type: KtUsualClassType: - annotationsList: [ - ReceiverTypeAnnotation() - psi: KtAnnotationEntry - ] - ownTypeArguments: [] - type: @R|ReceiverTypeAnnotation|() kotlin/Long - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: ACCESSOR - typeParameters: [] - valueParameters: [] - visibility: Public - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.pretty.txt index 82fec599d6b..ea05a60d057 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.pretty.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.pretty.txt @@ -1,3 +1,3 @@ -@ExplicitGetAnnotation @GetAnnotation +@ExplicitGetAnnotation get() \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.txt index 0c14f7d325a..bfac53b0fad 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/getterWithReceiverAndAnnotations.txt @@ -1,9 +1,9 @@ KtPropertyGetterSymbol: annotationsList: [ - ExplicitGetAnnotation() - psi: KtAnnotationEntry GetAnnotation() psi: KtAnnotationEntry + ExplicitGetAnnotation() + psi: KtAnnotationEntry ] callableIdIfNonLocal: null contextReceivers: [] diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.descriptors.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.descriptors.pretty.txt deleted file mode 100644 index 6eff8943ddd..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.descriptors.pretty.txt +++ /dev/null @@ -1,8 +0,0 @@ -@PropertyAnnotation -var x: kotlin.Int - @GetAnnotation - @ExplicitGetAnnotation - get() - @SetAnnotation - @ExplicitSetAnnotation - set(@ExplicitSetparamAnnotation @SetparamAnnotation value: kotlin.Int) \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.descriptors.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.descriptors.txt deleted file mode 100644 index 5f0f6b627ca..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.descriptors.txt +++ /dev/null @@ -1,167 +0,0 @@ -KtKotlinPropertySymbol: - annotationsList: [ - PropertyAnnotation() - psi: KtAnnotationEntry - ] - backingFieldSymbol: KtBackingFieldSymbol: - annotationsList: [ - FieldAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - isExtension: false - name: field - origin: PROPERTY_BACKING_FIELD - owningProperty: KtKotlinPropertySymbol(/x) - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: LOCAL - typeParameters: [] - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - callableIdIfNonLocal: /x - contextReceivers: [] - getter: KtPropertyGetterSymbol: - annotationsList: [ - GetAnnotation() - psi: KtAnnotationEntry - ExplicitGetAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - hasBody: true - hasStableParameterNames: true - isDefault: false - isExtension: false - isInline: false - isOverride: false - modality: FINAL - origin: SOURCE - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: ACCESSOR - typeParameters: [] - valueParameters: [] - visibility: Public - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - hasBackingField: true - hasGetter: true - hasSetter: true - initializer: KtConstantInitializerValue(0) - isConst: false - isDelegatedProperty: false - isExtension: false - isFromPrimaryConstructor: false - isLateInit: false - isOverride: false - isStatic: false - isVal: false - modality: FINAL - name: x - origin: SOURCE - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - setter: KtPropertySetterSymbol: - annotationsList: [ - SetAnnotation() - psi: KtAnnotationEntry - ExplicitSetAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - hasBody: true - hasStableParameterNames: true - isDefault: false - isExtension: false - isInline: false - isOverride: false - modality: FINAL - origin: SOURCE - parameter: KtValueParameterSymbol: - annotationsList: [ - ExplicitSetparamAnnotation() - psi: KtAnnotationEntry - SetparamAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - generatedPrimaryConstructorProperty: null - hasDefaultValue: false - isCrossinline: false - isExtension: false - isImplicitLambdaParameter: false - isNoinline: false - isVararg: false - name: value - origin: SOURCE - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: LOCAL - typeParameters: [] - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Unit - symbolKind: ACCESSOR - typeParameters: [] - valueParameters: [ - KtValueParameterSymbol: - annotationsList: [ - ExplicitSetparamAnnotation() - psi: KtAnnotationEntry - SetparamAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - generatedPrimaryConstructorProperty: null - hasDefaultValue: false - isCrossinline: false - isExtension: false - isImplicitLambdaParameter: false - isNoinline: false - isVararg: false - name: value - origin: SOURCE - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: LOCAL - typeParameters: [] - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - ] - visibility: Public - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - symbolKind: TOP_LEVEL - typeParameters: [] - visibility: Public - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - getterDeprecationStatus: null - javaGetterName: getX - javaSetterName: setX - setterDeprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.pretty.txt index 9085428ebd5..6eff8943ddd 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.pretty.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.pretty.txt @@ -1,8 +1,8 @@ @PropertyAnnotation var x: kotlin.Int - @ExplicitGetAnnotation @GetAnnotation + @ExplicitGetAnnotation get() - @ExplicitSetAnnotation @SetAnnotation + @ExplicitSetAnnotation set(@ExplicitSetparamAnnotation @SetparamAnnotation value: kotlin.Int) \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.txt index 7fe4b7afb25..5f0f6b627ca 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/propertyWithAnnotationsAndAccessors.txt @@ -27,10 +27,10 @@ KtKotlinPropertySymbol: contextReceivers: [] getter: KtPropertyGetterSymbol: annotationsList: [ - ExplicitGetAnnotation() - psi: KtAnnotationEntry GetAnnotation() psi: KtAnnotationEntry + ExplicitGetAnnotation() + psi: KtAnnotationEntry ] callableIdIfNonLocal: null contextReceivers: [] @@ -75,10 +75,10 @@ KtKotlinPropertySymbol: type: kotlin/Int setter: KtPropertySetterSymbol: annotationsList: [ - ExplicitSetAnnotation() - psi: KtAnnotationEntry SetAnnotation() psi: KtAnnotationEntry + ExplicitSetAnnotation() + psi: KtAnnotationEntry ] callableIdIfNonLocal: null contextReceivers: [] diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.descriptors.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.descriptors.pretty.txt deleted file mode 100644 index 9d7b0601eda..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.descriptors.pretty.txt +++ /dev/null @@ -1,3 +0,0 @@ -@SetAnnotation -@ExplicitSetAnnotation -set(@ExplicitSetparamAnnotation @SetparamAnnotation value: kotlin.Int) \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.descriptors.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.descriptors.txt deleted file mode 100644 index 2f160ce8a24..00000000000 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.descriptors.txt +++ /dev/null @@ -1,83 +0,0 @@ -KtPropertySetterSymbol: - annotationsList: [ - SetAnnotation() - psi: KtAnnotationEntry - ExplicitSetAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - hasBody: true - hasStableParameterNames: true - isDefault: false - isExtension: false - isInline: false - isOverride: false - modality: FINAL - origin: SOURCE - parameter: KtValueParameterSymbol: - annotationsList: [ - ExplicitSetparamAnnotation() - psi: KtAnnotationEntry - SetparamAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - generatedPrimaryConstructorProperty: null - hasDefaultValue: false - isCrossinline: false - isExtension: false - isImplicitLambdaParameter: false - isNoinline: false - isVararg: false - name: value - origin: SOURCE - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: LOCAL - typeParameters: [] - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Unit - symbolKind: ACCESSOR - typeParameters: [] - valueParameters: [ - KtValueParameterSymbol: - annotationsList: [ - ExplicitSetparamAnnotation() - psi: KtAnnotationEntry - SetparamAnnotation() - psi: KtAnnotationEntry - ] - callableIdIfNonLocal: null - contextReceivers: [] - generatedPrimaryConstructorProperty: null - hasDefaultValue: false - isCrossinline: false - isExtension: false - isImplicitLambdaParameter: false - isNoinline: false - isVararg: false - name: value - origin: SOURCE - receiverParameter: null - returnType: KtUsualClassType: - annotationsList: [] - ownTypeArguments: [] - type: kotlin/Int - symbolKind: LOCAL - typeParameters: [] - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null - ] - visibility: Public - getContainingModule: KtSourceModule "Sources of main" - deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.pretty.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.pretty.txt index 0cb44fcfad7..9d7b0601eda 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.pretty.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.pretty.txt @@ -1,3 +1,3 @@ -@ExplicitSetAnnotation @SetAnnotation +@ExplicitSetAnnotation set(@ExplicitSetparamAnnotation @SetparamAnnotation value: kotlin.Int) \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.txt b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.txt index 8e5f299a87b..2f160ce8a24 100644 --- a/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.txt +++ b/analysis/analysis-api/testData/symbols/singleSymbolByPsi/setterWithAnnotations.txt @@ -1,9 +1,9 @@ KtPropertySetterSymbol: annotationsList: [ - ExplicitSetAnnotation() - psi: KtAnnotationEntry SetAnnotation() psi: KtAnnotationEntry + ExplicitSetAnnotation() + psi: KtAnnotationEntry ] callableIdIfNonLocal: null contextReceivers: [] diff --git a/compiler/fir/raw-fir/light-tree2fir/src/org/jetbrains/kotlin/fir/lightTree/converter/DeclarationsConverter.kt b/compiler/fir/raw-fir/light-tree2fir/src/org/jetbrains/kotlin/fir/lightTree/converter/DeclarationsConverter.kt index b226f77a273..eb18f10bddc 100644 --- a/compiler/fir/raw-fir/light-tree2fir/src/org/jetbrains/kotlin/fir/lightTree/converter/DeclarationsConverter.kt +++ b/compiler/fir/raw-fir/light-tree2fir/src/org/jetbrains/kotlin/fir/lightTree/converter/DeclarationsConverter.kt @@ -1457,8 +1457,8 @@ class DeclarationsConverter( this.isGetter = isGetter this.status = status context.firFunctionTargets += target - annotations += modifiers.annotations annotations += accessorAdditionalAnnotations + annotations += modifiers.annotations if (!isGetter) { valueParameters += firValueParameters diff --git a/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt b/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt index cb759192797..466b0d246d7 100644 --- a/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt +++ b/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt @@ -453,8 +453,8 @@ open class RawFirBuilder( } this.isGetter = isGetter this.status = status - extractAnnotationsTo(this) annotations += accessorAnnotationsFromProperty + extractAnnotationsTo(this) this@RawFirBuilder.context.firFunctionTargets += accessorTarget symbol = FirPropertyAccessorSymbol() extractValueParametersTo( diff --git a/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.kt b/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.kt index 52a24390102..2d304f574f9 100644 --- a/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.kt +++ b/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.kt @@ -4,9 +4,6 @@ // FULL_JDK // JVM_TARGET: 1.8 -// IGNORE_BACKEND_K2: JVM_IR -// FIR status: KT-57219 K2: incorrect relative order of normal and use-site-targeted annotations on property getter in the resulting bytecode - @Repeatable annotation class A(val v: String) @@ -21,5 +18,10 @@ val ef: Int @A("e") @A("f") get() = 0 @get:A("g") -val ghi: Int +val gh: Int @A("h") get() = 0 + +@set:A("i") +var ij: Int + get() = 0 + @A("j") set(value) {} diff --git a/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.txt b/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.txt index 03af18b9a13..a08c1bfe057 100644 --- a/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.txt +++ b/compiler/testData/codegen/bytecodeListing/annotations/repeatable/propertyGetterUseSiteTarget.txt @@ -25,6 +25,8 @@ public final class PropertyGetterUseSiteTargetKt { public final static @A$Container(value=[A(v="a"), A(v="b")]) method getAb(): int public final static @A$Container(value=[A(v="c"), A(v="d")]) method getCd(): int public final static @A$Container(value=[A(v="e"), A(v="f")]) method getEf(): int - public final static @A$Container(value=[A(v="g"), A(v="h")]) method getGhi(): int + public final static @A$Container(value=[A(v="g"), A(v="h")]) method getGh(): int + public final static method getIj(): int + public final static @A$Container(value=[A(v="i"), A(v="j")]) method setIj(p0: int): void public inner class A$Container } diff --git a/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638.fir.kt b/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638.fir.kt index b061387304d..a8cf70bbba7 100644 --- a/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638.fir.kt +++ b/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638.fir.kt @@ -4,19 +4,19 @@ // Ann is not repeatable annotation class Ann(val x: Int) -@get:Ann(10) +@get:Ann(10) val a: String - @Ann(20) get() = "foo" + @Ann(20) get() = "foo" -@set:Ann(10) +@set:Ann(10) var b: String = "" - @Ann(20) set(value) { field = value } + @Ann(20) set(value) { field = value } @setparam:Ann(10) var c = " " set(@Ann(20) x) {} -@get:Ann(10) +@get:Ann(10) @get:Ann(20) val d: String - @Ann(30) @Ann(40) get() = "foo" + @Ann(30) @Ann(40) get() = "foo" diff --git a/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638_after.fir.kt b/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638_after.fir.kt new file mode 100644 index 00000000000..cf916f4f5da --- /dev/null +++ b/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638_after.fir.kt @@ -0,0 +1,22 @@ +// !DIAGNOSTICS: -UNUSED_PARAMETER +// !LANGUAGE: +ProhibitRepeatedUseSiteTargetAnnotations + +// Ann is not repeatable +annotation class Ann(val x: Int) + +@get:Ann(10) +val a: String + @Ann(20) get() = "foo" + +@set:Ann(10) +var b: String = "" + @Ann(20) set(value) { field = value } + +@setparam:Ann(10) +var c = " " + set(@Ann(20) x) {} + +@get:Ann(10) +@get:Ann(20) +val d: String + @Ann(30) @Ann(40) get() = "foo" diff --git a/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638_after.kt b/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638_after.kt index 8c71c1e0554..db821b5d811 100644 --- a/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638_after.kt +++ b/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/kt26638_after.kt @@ -1,4 +1,3 @@ -// FIR_IDENTICAL // !DIAGNOSTICS: -UNUSED_PARAMETER // !LANGUAGE: +ProhibitRepeatedUseSiteTargetAnnotations