Change deprecation rules for annotations in brackets

Also adjust quickfix for deprecated syntax
This commit is contained in:
Denis Zharkov
2015-05-15 13:47:14 +03:00
parent e4f54b5d2e
commit 89337ff51e
12 changed files with 45 additions and 27 deletions
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
annotation class Ann(val x: Int = 6)
@Ann(1) @Ann(2) @Ann(3) @private class A [Ann] constructor() {
@Ann(1) @Ann(2) @Ann(3) @private class A @Ann constructor() {
@Ann(x = 5) fun foo() {
1 + @Ann(1) 1 * @Ann(<!TYPE_MISMATCH!>""<!>) 6
@@ -1,5 +1,6 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
[file: Ann]
<!DEPRECATED_ANNOTATION_SYNTAX!>[file: Ann]<!>
@file:[Ann]
annotation class Ann(val arg: Int = 1)
fun bar(block: () -> Int) = block()
@@ -8,7 +9,7 @@ data class Q(val x: Int, val y: Int)
fun bar2(): Array<Q> = null!!
<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann Ann]<!> class A [Ann] constructor(<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann]<!> val prop: Int) {
<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann Ann]<!> class A <!DEPRECATED_ANNOTATION_SYNTAX!>[Ann]<!> constructor(<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann]<!> val prop: Int) {
<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann]<!> val x = 1
<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann]<!> fun foo(<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann]<!> x: Int) {
<!DEPRECATED_ANNOTATION_SYNTAX!>[Ann]<!> class B
@@ -4,7 +4,7 @@ open class Obsolete {
}
deprecated("Class")
open class Obsolete2 [deprecated("Constructor")] constructor() {
open class Obsolete2 deprecated("Constructor") constructor() {
fun use() {}
}
@@ -32,7 +32,7 @@ var vardef: Int = 1
set
<!INAPPLICABLE_ANNOTATION!>@platformName("C")<!>
class C [<!INAPPLICABLE_ANNOTATION!>platformName("primary")<!>] constructor() {
class C <!INAPPLICABLE_ANNOTATION!>platformName("primary")<!> constructor() {
<!INAPPLICABLE_ANNOTATION!>platformName("ctr")<!> constructor(x: Int): this() {}
<!INAPPLICABLE_ANNOTATION!>@platformName("a")<!>
fun foo() {}
@@ -6,4 +6,4 @@ class A {
}
}
class C <!PLATFORM_STATIC_ILLEGAL_USAGE!>[platformStatic] constructor()<!>
class C <!PLATFORM_STATIC_ILLEGAL_USAGE!>platformStatic constructor()<!>
@@ -7,4 +7,4 @@ class A {
<!INAPPLICABLE_ANNOTATION!>native constructor(<!UNUSED_PARAMETER!>x<!>: Int)
<!>}
class C <!INAPPLICABLE_ANNOTATION!>[native] constructor()<!>
class C <!INAPPLICABLE_ANNOTATION!>native constructor()<!>