FIR: introduce VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION check

Besides adding VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION,
we remove here NO_TYPE_FOR_TYPE_PARAMETER since it doesn't exist in FE1.0.
The name also doesn't make much sense.
From the usage it looks like it should have been
VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION instead.
This commit is contained in:
Tianyu Geng
2021-03-12 15:54:38 -08:00
committed by Mikhail Glukhikh
parent f4b840467f
commit 94de193993
14 changed files with 58 additions and 34 deletions
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_ANONYMOUS_PARAMETER -UNUSED_VARIABLE
fun test(a) {
fun test(<!VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION!>a<!>, <!VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION!>b<!>, <!VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION!>c<!>) {
}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_ANONYMOUS_PARAMETER -UNUSED_VARIABLE
fun test(<!VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION!>a<!>) {
fun test(<!VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION!>a<!>, <!VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION!>b<!>, <!VALUE_PARAMETER_WITH_NO_TYPE_ANNOTATION!>c<!>) {
}
@@ -3,7 +3,7 @@ package
public val bar: (???) -> kotlin.Unit
public val la: (???) -> kotlin.Unit
public val las: (kotlin.Int) -> kotlin.Unit
public fun test(/*0*/ a: [ERROR : Type annotation was missing for parameter a]): kotlin.Unit
public fun test(/*0*/ a: [ERROR : Type annotation was missing for parameter a], /*1*/ b: [ERROR : Type annotation was missing for parameter b], /*2*/ c: [ERROR : Type annotation was missing for parameter c]): kotlin.Unit
public final class A {
public constructor A(/*0*/ a: [ERROR : Type annotation was missing for parameter a])