From 6c7a9046630fa040c70d1470f314da8250e222af Mon Sep 17 00:00:00 2001 From: Mads Ager Date: Fri, 23 Aug 2019 08:29:12 +0200 Subject: [PATCH] Psi2Ir: Mark accessors with no bodies as default accessors. They are currently marked as defined even when they get a default implementation. That makes it hard to figure out if the accessor should be removed when introducing a backing field in the JVM_IR backend. --- .../psi2ir/generators/FunctionGenerator.kt | 2 +- .../annotationsOnLateinitAccessors.kt | 31 +++++++++++++++++++ .../annotationsOnNonExistentAccessors.kt | 10 ------ .../annotationsTargetingLateinitAccessors.kt | 14 +++++++++ .../annotationsTargetingLateinitAccessors.txt | 24 ++++++++++++++ ...annotationsTargetingNonExistentAccessor.kt | 6 ---- ...nnotationsTargetingNonExistentAccessor.txt | 2 -- .../declarations/classLevelProperties.txt | 4 +-- .../declarations/packageLevelProperties.txt | 4 +-- .../irText/expressions/propertyReferences.txt | 4 +-- .../declarations/classProperties.txt | 4 +-- .../declarations/topLevelProperties.txt | 4 +-- .../DiagnosticsTestWithStdLibGenerated.java | 5 +++ ...ticsTestWithStdLibUsingJavacGenerated.java | 5 +++ .../codegen/BlackBoxCodegenTestGenerated.java | 5 +++ .../LightAnalysisModeTestGenerated.java | 5 +++ .../ir/IrBlackBoxCodegenTestGenerated.java | 5 +++ 17 files changed, 105 insertions(+), 29 deletions(-) create mode 100644 compiler/testData/codegen/box/annotations/annotationsOnLateinitAccessors.kt create mode 100644 compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.kt create mode 100644 compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.txt diff --git a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt index 41d77f0f62b..fb88cc16a6b 100644 --- a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt +++ b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt @@ -112,7 +112,7 @@ class FunctionGenerator(declarationGenerator: DeclarationGenerator) : Declaratio declareSimpleFunctionInner( descriptor, ktAccessor ?: ktProperty, - if (ktAccessor != null) IrDeclarationOrigin.DEFINED else IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR + if (ktAccessor != null && ktAccessor.hasBody()) IrDeclarationOrigin.DEFINED else IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR ).buildWithScope { irAccessor -> declarationGenerator.generateScopedTypeParameterDeclarations(irAccessor, descriptor.correspondingProperty.typeParameters) irAccessor.returnType = irAccessor.descriptor.returnType!!.toIrType() diff --git a/compiler/testData/codegen/box/annotations/annotationsOnLateinitAccessors.kt b/compiler/testData/codegen/box/annotations/annotationsOnLateinitAccessors.kt new file mode 100644 index 00000000000..0a5c77471ed --- /dev/null +++ b/compiler/testData/codegen/box/annotations/annotationsOnLateinitAccessors.kt @@ -0,0 +1,31 @@ +// WITH_REFLECT +// IGNORE_BACKEND: JVM_IR +// TARGET_BACKEND: JVM + +// Please make sure that this test is consistent with the diagnostic test "annotationsTargetingLateinitAccessor.kt" + +import kotlin.reflect.KAnnotatedElement + +annotation class Ann + +fun check(element: KAnnotatedElement, annotationExists: Boolean) { + require(element.annotations.isNotEmpty() == annotationExists) { "Fail: $element" } +} + +class LateinitProperties { + @get:Ann + lateinit var x0: String + + @get:Ann + private lateinit var x1: String + + fun test() { + check(::x0.getter, annotationExists = true) + check(::x1.getter, annotationExists = false) + } +} + +fun box(): String { + LateinitProperties().test() + return "OK" +} \ No newline at end of file diff --git a/compiler/testData/codegen/box/annotations/annotationsOnNonExistentAccessors.kt b/compiler/testData/codegen/box/annotations/annotationsOnNonExistentAccessors.kt index f024830891c..cbe3b8512f8 100644 --- a/compiler/testData/codegen/box/annotations/annotationsOnNonExistentAccessors.kt +++ b/compiler/testData/codegen/box/annotations/annotationsOnNonExistentAccessors.kt @@ -1,5 +1,4 @@ // WITH_REFLECT -// IGNORE_BACKEND: JVM_IR // TARGET_BACKEND: JVM // Please make sure that this test is consistent with the diagnostic test "annotationsTargetingNonExistentAccessor.kt" @@ -98,12 +97,6 @@ private class EffetivelyPrivate private constructor( } class Statics { - @get:Ann - lateinit var y0: String - - @get:Ann - private lateinit var y1: String - companion object { @JvmField @get:Ann @@ -128,9 +121,6 @@ class Statics { } fun test() { - check(::y0.getter, annotationExists = true) - check(::y1.getter, annotationExists = false) - check(::x0.getter, annotationExists = false) check(::x1.getter, annotationExists = false) diff --git a/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.kt b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.kt new file mode 100644 index 00000000000..096cfbb640c --- /dev/null +++ b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.kt @@ -0,0 +1,14 @@ +// Please make sure that this test is consistent with the blackbox test "annotationsOnLateinitAccessors.kt" + +import kotlin.reflect.KProperty + +annotation class Ann +annotation class AnnRepeat + +class LateinitProperties { + @get:Ann + lateinit var y0: String + + @get:Ann + private lateinit var y1: String +} diff --git a/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.txt b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.txt new file mode 100644 index 00000000000..fc29de35291 --- /dev/null +++ b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.txt @@ -0,0 +1,24 @@ +package + +public final annotation class Ann : kotlin.Annotation { + public constructor Ann() + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String +} + +public final annotation class AnnRepeat : kotlin.Annotation { + public constructor AnnRepeat() + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String +} + +public final class LateinitProperties { + public constructor LateinitProperties() + @get:Ann public final lateinit var y0: kotlin.String + @get:Ann private final lateinit var y1: kotlin.String + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String +} diff --git a/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.kt b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.kt index 828c9be321b..a5e0a6c85af 100644 --- a/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.kt +++ b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.kt @@ -62,12 +62,6 @@ class PrivateToThis { } class Statics { - @get:Ann - lateinit var y0: String - - @get:Ann - private lateinit var y1: String - companion object { @JvmField @get:Ann diff --git a/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.txt b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.txt index 917b9b20c7f..16a5a228cf7 100644 --- a/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.txt +++ b/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.txt @@ -86,8 +86,6 @@ public final class PrivateToThis { public final class Statics { public constructor Statics() - @get:Ann public final lateinit var y0: kotlin.String - @get:Ann private final lateinit var y1: kotlin.String public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String diff --git a/compiler/testData/ir/irText/declarations/classLevelProperties.txt b/compiler/testData/ir/irText/declarations/classLevelProperties.txt index 505ada4f796..072f1dba940 100644 --- a/compiler/testData/ir/irText/declarations/classLevelProperties.txt +++ b/compiler/testData/ir/irText/declarations/classLevelProperties.txt @@ -72,7 +72,7 @@ FILE fqName: fileName:/classLevelProperties.kt RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .C' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test5 type:kotlin.Int visibility:public' type=kotlin.Int origin=null receiver: GET_VAR ': .C declared in .C.' type=.C origin=null - FUN name: visibility:private modality:FINAL <> ($this:.C, :kotlin.Int) returnType:kotlin.Unit + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:private modality:FINAL <> ($this:.C, :kotlin.Int) returnType:kotlin.Unit correspondingProperty: PROPERTY name:test5 visibility:public modality:FINAL [var] $this: VALUE_PARAMETER name: type:.C VALUE_PARAMETER name: index:0 type:kotlin.Int @@ -84,7 +84,7 @@ FILE fqName: fileName:/classLevelProperties.kt FIELD PROPERTY_BACKING_FIELD name:test6 type:kotlin.Int visibility:public [final] EXPRESSION_BODY CONST Int type=kotlin.Int value=1 - FUN name: visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Int + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Int correspondingProperty: PROPERTY name:test6 visibility:public modality:FINAL [val] $this: VALUE_PARAMETER name: type:.C BLOCK_BODY diff --git a/compiler/testData/ir/irText/declarations/packageLevelProperties.txt b/compiler/testData/ir/irText/declarations/packageLevelProperties.txt index 9c982d7d5e8..dd6e4ad8634 100644 --- a/compiler/testData/ir/irText/declarations/packageLevelProperties.txt +++ b/compiler/testData/ir/irText/declarations/packageLevelProperties.txt @@ -53,7 +53,7 @@ FILE fqName: fileName:/packageLevelProperties.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in ' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test5 type:kotlin.Int visibility:public [static]' type=kotlin.Int origin=null - FUN name: visibility:private modality:FINAL <> (:kotlin.Int) returnType:kotlin.Unit + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:private modality:FINAL <> (:kotlin.Int) returnType:kotlin.Unit correspondingProperty: PROPERTY name:test5 visibility:public modality:FINAL [var] VALUE_PARAMETER name: index:0 type:kotlin.Int BLOCK_BODY @@ -63,7 +63,7 @@ FILE fqName: fileName:/packageLevelProperties.kt FIELD PROPERTY_BACKING_FIELD name:test6 type:kotlin.Int visibility:public [final,static] EXPRESSION_BODY CONST Int type=kotlin.Int value=1 - FUN name: visibility:public modality:FINAL <> () returnType:kotlin.Int + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:kotlin.Int correspondingProperty: PROPERTY name:test6 visibility:public modality:FINAL [val] BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in ' diff --git a/compiler/testData/ir/irText/expressions/propertyReferences.txt b/compiler/testData/ir/irText/expressions/propertyReferences.txt index a570f487074..f4847508b6e 100644 --- a/compiler/testData/ir/irText/expressions/propertyReferences.txt +++ b/compiler/testData/ir/irText/expressions/propertyReferences.txt @@ -48,7 +48,7 @@ FILE fqName: fileName:/propertyReferences.kt RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .C' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:varWithPrivateSet type:kotlin.Int visibility:public' type=kotlin.Int origin=null receiver: GET_VAR ': .C declared in .C.' type=.C origin=null - FUN name: visibility:private modality:FINAL <> ($this:.C, :kotlin.Int) returnType:kotlin.Unit + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:private modality:FINAL <> ($this:.C, :kotlin.Int) returnType:kotlin.Unit correspondingProperty: PROPERTY name:varWithPrivateSet visibility:public modality:FINAL [var] $this: VALUE_PARAMETER name: type:.C VALUE_PARAMETER name: index:0 type:kotlin.Int @@ -67,7 +67,7 @@ FILE fqName: fileName:/propertyReferences.kt RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .C' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:varWithProtectedSet type:kotlin.Int visibility:public' type=kotlin.Int origin=null receiver: GET_VAR ': .C declared in .C.' type=.C origin=null - FUN name: visibility:protected modality:FINAL <> ($this:.C, :kotlin.Int) returnType:kotlin.Unit + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:protected modality:FINAL <> ($this:.C, :kotlin.Int) returnType:kotlin.Unit correspondingProperty: PROPERTY name:varWithProtectedSet visibility:public modality:FINAL [var] $this: VALUE_PARAMETER name: type:.C VALUE_PARAMETER name: index:0 type:kotlin.Int diff --git a/compiler/testData/ir/sourceRanges/declarations/classProperties.txt b/compiler/testData/ir/sourceRanges/declarations/classProperties.txt index 8a8550b1241..ed7d86118c7 100644 --- a/compiler/testData/ir/sourceRanges/declarations/classProperties.txt +++ b/compiler/testData/ir/sourceRanges/declarations/classProperties.txt @@ -96,7 +96,7 @@ @47:4..31 RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in test.Test' @47:4..31 GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test9 type:kotlin.Int visibility:public' type=kotlin.Int origin=null @47:4..31 GET_VAR ': test.Test declared in test.Test.' type=test.Test origin=null - @47:28..31 FUN name: visibility:private modality:FINAL <> ($this:test.Test, :kotlin.Int) returnType:kotlin.Unit + @47:28..31 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:private modality:FINAL <> ($this:test.Test, :kotlin.Int) returnType:kotlin.Unit @47:20..31 VALUE_PARAMETER name: type:test.Test @47:28..31 VALUE_PARAMETER name: index:0 type:kotlin.Int @47:28..31 BLOCK_BODY @@ -113,7 +113,7 @@ @50:4..51:19 RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in test.Test' @50:4..51:19 GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test10 type:kotlin.Int visibility:public' type=kotlin.Int origin=null @50:4..51:19 GET_VAR ': test.Test declared in test.Test.' type=test.Test origin=null - @51:16..19 FUN name: visibility:private modality:FINAL <> ($this:test.Test, :kotlin.Int) returnType:kotlin.Unit + @51:16..19 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:private modality:FINAL <> ($this:test.Test, :kotlin.Int) returnType:kotlin.Unit @51:8..19 VALUE_PARAMETER name: type:test.Test @51:16..19 VALUE_PARAMETER name: index:0 type:kotlin.Int @51:16..19 BLOCK_BODY diff --git a/compiler/testData/ir/sourceRanges/declarations/topLevelProperties.txt b/compiler/testData/ir/sourceRanges/declarations/topLevelProperties.txt index 8b77a68705f..b1e871683bd 100644 --- a/compiler/testData/ir/sourceRanges/declarations/topLevelProperties.txt +++ b/compiler/testData/ir/sourceRanges/declarations/topLevelProperties.txt @@ -72,7 +72,7 @@ @46:0..27 BLOCK_BODY @46:0..27 RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in test' @46:0..27 GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test9 type:kotlin.Int visibility:public [static]' type=kotlin.Int origin=null - @46:24..27 FUN name: visibility:private modality:FINAL <> (:kotlin.Int) returnType:kotlin.Unit + @46:24..27 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:private modality:FINAL <> (:kotlin.Int) returnType:kotlin.Unit @46:24..27 VALUE_PARAMETER name: index:0 type:kotlin.Int @46:24..27 BLOCK_BODY @46:24..27 SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test9 type:kotlin.Int visibility:public [static]' type=kotlin.Unit origin=null @@ -85,7 +85,7 @@ @49:0..50:15 BLOCK_BODY @49:0..50:15 RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in test' @49:0..50:15 GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test10 type:kotlin.Int visibility:public [static]' type=kotlin.Int origin=null - @50:12..15 FUN name: visibility:private modality:FINAL <> (:kotlin.Int) returnType:kotlin.Unit + @50:12..15 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:private modality:FINAL <> (:kotlin.Int) returnType:kotlin.Unit @50:12..15 VALUE_PARAMETER name: index:0 type:kotlin.Int @50:12..15 BLOCK_BODY @50:12..15 SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test10 type:kotlin.Int visibility:public [static]' type=kotlin.Unit origin=null diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java index aab7de620c2..e9aab98cdbf 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java @@ -166,6 +166,11 @@ public class DiagnosticsTestWithStdLibGenerated extends AbstractDiagnosticsTestW KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/testsWithStdLib/annotations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.ANY, true); } + @TestMetadata("annotationsTargetingLateinitAccessors.kt") + public void testAnnotationsTargetingLateinitAccessors() throws Exception { + runTest("compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.kt"); + } + @TestMetadata("annotationsTargetingNonExistentAccessor.kt") public void testAnnotationsTargetingNonExistentAccessor() throws Exception { runTest("compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java index 0bc867591f4..0fe601adfba 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java @@ -166,6 +166,11 @@ public class DiagnosticsTestWithStdLibUsingJavacGenerated extends AbstractDiagno KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/testsWithStdLib/annotations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.ANY, true); } + @TestMetadata("annotationsTargetingLateinitAccessors.kt") + public void testAnnotationsTargetingLateinitAccessors() throws Exception { + runTest("compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingLateinitAccessors.kt"); + } + @TestMetadata("annotationsTargetingNonExistentAccessor.kt") public void testAnnotationsTargetingNonExistentAccessor() throws Exception { runTest("compiler/testData/diagnostics/testsWithStdLib/annotations/annotationsTargetingNonExistentAccessor.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java index c05eee78096..916ea9ee7b3 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java @@ -71,6 +71,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/annotations/annotationsOnDefault.kt"); } + @TestMetadata("annotationsOnLateinitAccessors.kt") + public void testAnnotationsOnLateinitAccessors() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotationsOnLateinitAccessors.kt"); + } + @TestMetadata("annotationsOnNonExistentAccessors.kt") public void testAnnotationsOnNonExistentAccessors() throws Exception { runTest("compiler/testData/codegen/box/annotations/annotationsOnNonExistentAccessors.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 0435d77824f..55dc39dd4ae 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -76,6 +76,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/annotations/annotationsOnDefault.kt"); } + @TestMetadata("annotationsOnLateinitAccessors.kt") + public void testAnnotationsOnLateinitAccessors() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotationsOnLateinitAccessors.kt"); + } + @TestMetadata("annotationsOnNonExistentAccessors.kt") public void testAnnotationsOnNonExistentAccessors() throws Exception { runTest("compiler/testData/codegen/box/annotations/annotationsOnNonExistentAccessors.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java index b302821adb5..dd2d996136e 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java @@ -71,6 +71,11 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/annotations/annotationsOnDefault.kt"); } + @TestMetadata("annotationsOnLateinitAccessors.kt") + public void testAnnotationsOnLateinitAccessors() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotationsOnLateinitAccessors.kt"); + } + @TestMetadata("annotationsOnNonExistentAccessors.kt") public void testAnnotationsOnNonExistentAccessors() throws Exception { runTest("compiler/testData/codegen/box/annotations/annotationsOnNonExistentAccessors.kt");