K2: add more accurate & more automatic control of diagnostic suppression

#KT-51363 Fixed
This commit is contained in:
Mikhail Glukhikh
2022-07-20 16:46:23 +02:00
committed by Space
parent 179b267d9f
commit 9add6f3d55
21 changed files with 194 additions and 101 deletions
@@ -1,20 +1,20 @@
const val x = "123"
<!CONST_VAL_WITH_GETTER!>@Suppress("CONST_VAL_WITH_GETTER")
get() = field<!>
@Suppress("CONST_VAL_WITH_GETTER")
get() = field
val y = "789"
const val z = @Suppress("CONST_VAL_WITH_NON_CONST_INITIALIZER") <!CONST_VAL_WITH_NON_CONST_INITIALIZER!>y<!>
const val z = @Suppress("CONST_VAL_WITH_NON_CONST_INITIALIZER") y
@Target(AnnotationTarget.TYPE)
annotation class Ann
fun foo(): @Suppress("REPEATED_ANNOTATION") @Ann <!REPEATED_ANNOTATION!>@Ann<!> Int = 42
fun foo(): @Suppress("REPEATED_ANNOTATION") @Ann @Ann Int = 42
typealias Alias<T> = <!TYPEALIAS_SHOULD_EXPAND_TO_CLASS!>@Suppress("TYPEALIAS_SHOULD_EXPAND_TO_CLASS") T<!>
typealias Alias<T> = @Suppress("TYPEALIAS_SHOULD_EXPAND_TO_CLASS") T
interface A
interface B : <!SUPERTYPE_INITIALIZED_IN_INTERFACE!>@Suppress("SUPERTYPE_INITIALIZED_IN_INTERFACE") A<!>()
interface B : @Suppress("SUPERTYPE_INITIALIZED_IN_INTERFACE") A()
data class D @Suppress("DATA_CLASS_VARARG_PARAMETER") constructor(<!DATA_CLASS_VARARG_PARAMETER!>vararg val x: String<!>)
data class D @Suppress("DATA_CLASS_VARARG_PARAMETER") constructor(vararg val x: String)