FIR checker: introduce FunctionChecker alias

and use it to add support diagnostic FUNCTION_DECLARATION_WITH_NO_NAME
This commit is contained in:
Jinseong Jeon
2021-01-15 23:21:24 -08:00
committed by Mikhail Glukhikh
parent 40bec30393
commit de592f4f67
17 changed files with 66 additions and 52 deletions
@@ -3,18 +3,18 @@ annotation class a
interface A
interface B
fun () {}
fun A.() {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun A.()<!> {}
@a fun () {}
fun @a A.() {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>@a fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun @a A.()<!> {}
class Outer {
fun () {}
fun B.() {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun B.()<!> {}
@a fun () {}
fun @a A.() {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>@a fun ()<!> {}
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun @a A.()<!> {}
}
fun outerFun() {
@@ -1,9 +1,9 @@
// !DIAGNOSTICS: -DUPLICATE_CLASS_NAMES
fun () {
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {
}
fun Outer.() {
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun Outer.()<!> {
}
@@ -30,7 +30,7 @@ annotation class<!SYNTAX!><!> {
}
class Outer {
fun () {
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {
}
@@ -1,18 +0,0 @@
// SKIP_JAVAC
// FILE: p/Nameless.java
package p;
public class Nameless {
void () {}
int ;
}
// FILE: k.kt
import p.*
class K : Nameless() {
fun () {}
val<!SYNTAX!><!> : Int = 1
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// SKIP_JAVAC
// FILE: p/Nameless.java
@@ -1,17 +0,0 @@
// !DIAGNOSTICS: -REDECLARATION -DUPLICATE_CLASS_NAMES
class C {
fun () {
}
val<!SYNTAX!><!> : Int = 1
class<!SYNTAX!><!> {}
enum class<!SYNTAX!><!> {}
}
class C1<<!SYNTAX!>in<!>> {}
class C2(val<!SYNTAX!><!>) {}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -REDECLARATION -DUPLICATE_CLASS_NAMES
class C {
@@ -2,7 +2,7 @@
package<!SYNTAX!><!>
fun () {
<!FUNCTION_DECLARATION_WITH_NO_NAME!>fun ()<!> {
}