[FIR] Forbid all use-site targets of FirTypeRef annotations
This commit is contained in:
committed by
Space Team
parent
93ba0c3e70
commit
1378d730d6
+2
-2
@@ -6,6 +6,6 @@ fun test1(<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@<!INAPPLICABLE_FILE_T
|
||||
<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@<!INAPPLICABLE_FILE_TARGET!>file<!> <!SYNTAX!>@<!>Suppress("")<!>
|
||||
fun test2() {}
|
||||
|
||||
class OnType(x: @file<!SYNTAX!><!> Suppress("") Int)
|
||||
class OnType(x: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@file<!SYNTAX!><!> Suppress("")<!> Int)
|
||||
|
||||
fun @file : Suppress("") Int.test3() {}
|
||||
fun <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@file : Suppress("")<!> Int.test3() {}
|
||||
|
||||
+2
-2
@@ -6,6 +6,6 @@ fun test1(<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@<!INAPPLICABLE_FILE_T
|
||||
<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@<!INAPPLICABLE_FILE_TARGET!>file<!> <!SYNTAX!>@<!>Suppress("")<!>
|
||||
fun test2() {}
|
||||
|
||||
class OnType(x: @file<!SYNTAX!><!> Suppress("") Int)
|
||||
class OnType(x: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@file<!SYNTAX!><!> Suppress("")<!> Int)
|
||||
|
||||
fun @file : Suppress("") Int.test3() {}
|
||||
fun <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@file : Suppress("")<!> Int.test3() {}
|
||||
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// !LANGUAGE: -ProhibitUseSiteTargetAnnotationsOnSuperTypes
|
||||
|
||||
interface Foo
|
||||
|
||||
@Target(AnnotationTarget.TYPE)
|
||||
annotation class Ann
|
||||
|
||||
class E : <!ANNOTATION_ON_SUPERCLASS_WARNING, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@field:Ann<!> <!ANNOTATION_ON_SUPERCLASS_WARNING, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@get:Ann<!> <!ANNOTATION_ON_SUPERCLASS_WARNING, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@set:Ann<!> <!ANNOTATION_ON_SUPERCLASS_WARNING, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@setparam:Ann<!> Foo
|
||||
|
||||
interface G : @Ann Foo
|
||||
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: -ProhibitUseSiteTargetAnnotationsOnSuperTypes
|
||||
|
||||
interface Foo
|
||||
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// !LANGUAGE: +ProhibitUseSiteTargetAnnotationsOnSuperTypes
|
||||
|
||||
interface Foo
|
||||
|
||||
@Target(AnnotationTarget.TYPE)
|
||||
annotation class Ann
|
||||
|
||||
class E : <!ANNOTATION_ON_SUPERCLASS_ERROR, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@field:Ann<!> <!ANNOTATION_ON_SUPERCLASS_ERROR, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@get:Ann<!> <!ANNOTATION_ON_SUPERCLASS_ERROR, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@set:Ann<!> <!ANNOTATION_ON_SUPERCLASS_ERROR, WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@setparam:Ann<!> Foo
|
||||
|
||||
interface G : @Ann Foo
|
||||
-1
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +ProhibitUseSiteTargetAnnotationsOnSuperTypes
|
||||
|
||||
interface Foo
|
||||
|
||||
-13
@@ -1,13 +0,0 @@
|
||||
// !LANGUAGE: +RestrictionOfWrongAnnotationsWithUseSiteTargetsOnTypes
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
fun test1(i: @setparam:Suppress Int) {}
|
||||
fun test2(i: @param:Suppress Int) {}
|
||||
fun test3(i: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@receiver:Suppress<!> Int) {}
|
||||
|
||||
fun test4(): @setparam:Suppress Int = TODO()
|
||||
fun test5(i: (@setparam:Suppress Int) -> Unit) {}
|
||||
|
||||
fun ((@setparam:Suppress Int) -> Unit).test6() {}
|
||||
|
||||
fun test7(): ((@setparam:Suppress Int) -> Unit) = TODO()
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +RestrictionOfWrongAnnotationsWithUseSiteTargetsOnTypes
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
|
||||
-13
@@ -1,13 +0,0 @@
|
||||
// !LANGUAGE: +RestrictionOfWrongAnnotationsWithUseSiteTargetsOnTypes
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
fun test1(i: @setparam:Suppress Int) {}
|
||||
fun test2(i: @param:Suppress Int) {}
|
||||
fun test3(i: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@receiver:Suppress<!> Int) {}
|
||||
|
||||
fun test4(): @setparam:Suppress Int = TODO()
|
||||
fun test5(i: (@setparam:Suppress Int) -> Unit) {}
|
||||
|
||||
fun ((@setparam:Suppress Int) -> Unit).test6() {}
|
||||
|
||||
fun test7(): ((@setparam:Suppress Int) -> Unit) = TODO()
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +RestrictionOfWrongAnnotationsWithUseSiteTargetsOnTypes
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
|
||||
+6
-6
@@ -1,13 +1,13 @@
|
||||
// !LANGUAGE: -RestrictionOfWrongAnnotationsWithUseSiteTargetsOnTypes
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
fun test1(i: @setparam:Suppress Int) {}
|
||||
fun test2(i: @param:Suppress Int) {}
|
||||
fun test1(i: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@setparam:Suppress<!> Int) {}
|
||||
fun test2(i: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@param:Suppress<!> Int) {}
|
||||
fun test3(i: <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@receiver:Suppress<!> Int) {}
|
||||
|
||||
fun test4(): @setparam:Suppress Int = TODO()
|
||||
fun test5(i: (@setparam:Suppress Int) -> Unit) {}
|
||||
fun test4(): <!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@setparam:Suppress<!> Int = TODO()
|
||||
fun test5(i: (<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@setparam:Suppress<!> Int) -> Unit) {}
|
||||
|
||||
fun ((@setparam:Suppress Int) -> Unit).test6() {}
|
||||
fun ((<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@setparam:Suppress<!> Int) -> Unit).test6() {}
|
||||
|
||||
fun test7(): ((@setparam:Suppress Int) -> Unit) = TODO()
|
||||
fun test7(): ((<!WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET!>@setparam:Suppress<!> Int) -> Unit) = TODO()
|
||||
|
||||
Reference in New Issue
Block a user