diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java index 368b4d4b5da..5615e3818ea 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java @@ -1098,6 +1098,12 @@ public class FirOldFrontendDiagnosticsTestGenerated extends AbstractFirDiagnosti runTest("compiler/testData/diagnostics/tests/annotations/AnnotatedLoop.kt"); } + @Test + @TestMetadata("AnnotatedNullableTypes.kt") + public void testAnnotatedNullableTypes() throws Exception { + runTest("compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.kt"); + } + @Test @TestMetadata("AnnotatedResultType.kt") public void testAnnotatedResultType() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java index 932a845ebed..6df47289d8f 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java @@ -1098,6 +1098,12 @@ public class FirOldFrontendDiagnosticsWithLightTreeTestGenerated extends Abstrac runTest("compiler/testData/diagnostics/tests/annotations/AnnotatedLoop.kt"); } + @Test + @TestMetadata("AnnotatedNullableTypes.kt") + public void testAnnotatedNullableTypes() throws Exception { + runTest("compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.kt"); + } + @Test @TestMetadata("AnnotatedResultType.kt") public void testAnnotatedResultType() throws Exception { diff --git a/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.fir.kt b/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.fir.kt new file mode 100644 index 00000000000..61d329fa0bf --- /dev/null +++ b/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.fir.kt @@ -0,0 +1,10 @@ +annotation class Ann + +val a: @Ann String? = "" +val b: (@Ann String)? = "" // false negative in K1, OK in K2 + +@Target(AnnotationTarget.TYPE) +annotation class TypeAnn + +val c: @TypeAnn String? = "" +val d: (@TypeAnn String)? = "" diff --git a/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.kt b/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.kt new file mode 100644 index 00000000000..d42f4c42552 --- /dev/null +++ b/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.kt @@ -0,0 +1,10 @@ +annotation class Ann + +val a: @Ann String? = "" +val b: (@Ann String)? = "" // false negative in K1, OK in K2 + +@Target(AnnotationTarget.TYPE) +annotation class TypeAnn + +val c: @TypeAnn String? = "" +val d: (@TypeAnn String)? = "" diff --git a/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.txt b/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.txt new file mode 100644 index 00000000000..134e7a061f7 --- /dev/null +++ b/compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.txt @@ -0,0 +1,20 @@ +package + +public val a: @Ann kotlin.String? = "" +public val b: @Ann kotlin.String? = "" +public val c: @TypeAnn kotlin.String? = "" +public val d: @TypeAnn kotlin.String? = "" + +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 +} + +@kotlin.annotation.Target(allowedTargets = {AnnotationTarget.TYPE}) public final annotation class TypeAnn : kotlin.Annotation { + public constructor TypeAnn() + 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/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java index d9a780547ce..bf16bc1297b 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java @@ -1098,6 +1098,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/annotations/AnnotatedLoop.kt"); } + @Test + @TestMetadata("AnnotatedNullableTypes.kt") + public void testAnnotatedNullableTypes() throws Exception { + runTest("compiler/testData/diagnostics/tests/annotations/AnnotatedNullableTypes.kt"); + } + @Test @TestMetadata("AnnotatedResultType.kt") public void testAnnotatedResultType() throws Exception {