Don't report the same diagnsotics several times

This commit is contained in:
Victor Petukhov
2021-05-26 12:58:48 +03:00
parent e942052eb6
commit 4a767c597e
62 changed files with 202 additions and 166 deletions
@@ -1,3 +1,5 @@
// !WITH_NEW_INFERENCE
import kotlin.reflect.KClass
open class A
@@ -12,7 +14,7 @@ class MyClass1
@Ann1(arrayOf(Any::class))
class MyClass1a
@Ann1(<!TYPE_MISMATCH, TYPE_MISMATCH!>arrayOf(<!TYPE_MISMATCH!>B1::class<!>)<!>)
@Ann1(<!TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH{OI}, TYPE_MISMATCH{NI}!>arrayOf(<!TYPE_MISMATCH{NI}!>B1::class<!>)<!>)
class MyClass2
annotation class Ann2(val arg: Array<KClass<in B1>>)
@@ -23,5 +25,5 @@ class MyClass3
@Ann2(arrayOf(B1::class))
class MyClass4
@Ann2(<!TYPE_MISMATCH, TYPE_MISMATCH!>arrayOf(<!TYPE_MISMATCH!>B2::class<!>)<!>)
@Ann2(<!TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH{OI}, TYPE_MISMATCH{NI}!>arrayOf(<!TYPE_MISMATCH{NI}!>B2::class<!>)<!>)
class MyClass5
@@ -1,3 +1,4 @@
// !WITH_NEW_INFERENCE
import kotlin.reflect.KClass
@@ -10,7 +11,7 @@ annotation class Ann1(val arg: Array<KClass<out A>>)
@Ann1(arrayOf(A::class))
class MyClass1
@Ann1(<!TYPE_MISMATCH, TYPE_MISMATCH!>arrayOf(<!TYPE_MISMATCH!>Any::class<!>)<!>)
@Ann1(<!TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH{OI}, TYPE_MISMATCH{NI}!>arrayOf(<!TYPE_MISMATCH{NI}!>Any::class<!>)<!>)
class MyClass1a
@Ann1(arrayOf(B1::class))
@@ -18,11 +19,11 @@ class MyClass2
annotation class Ann2(val arg: Array<KClass<out B1>>)
@Ann2(<!TYPE_MISMATCH, TYPE_MISMATCH!>arrayOf(<!TYPE_MISMATCH!>A::class<!>)<!>)
@Ann2(<!TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH{OI}, TYPE_MISMATCH{NI}!>arrayOf(<!TYPE_MISMATCH{NI}!>A::class<!>)<!>)
class MyClass3
@Ann2(arrayOf(B1::class))
class MyClass4
@Ann2(<!TYPE_MISMATCH, TYPE_MISMATCH!>arrayOf(<!TYPE_MISMATCH!>B2::class<!>)<!>)
@Ann2(<!TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH{OI}, TYPE_MISMATCH{NI}!>arrayOf(<!TYPE_MISMATCH{NI}!>B2::class<!>)<!>)
class MyClass5