Introduce FirInitializerTypeMismatchChecker

This commit is contained in:
vldf
2021-03-01 19:29:59 +03:00
committed by Mikhail Glukhikh
parent 7ed35e5c2b
commit 24f1f1221e
114 changed files with 647 additions and 285 deletions
@@ -9,7 +9,7 @@ fun testReturnType(foo: String) {
val bas: () -> String = fun () = foo
val bag: () -> Int = fun () = foo
val bag: () -> Int = <!INITIALIZER_TYPE_MISMATCH!>fun () = foo<!>
}
fun testParamType() {
@@ -18,7 +18,7 @@ fun testParamType() {
bar.checkType { _<(String) -> Unit>() }
val bas: (String) -> Unit = fun (param: String) {}
val bag: (Int) -> Unit = fun (param: String) {}
val bag: (Int) -> Unit = <!INITIALIZER_TYPE_MISMATCH!>fun (param: String) {}<!>
}
fun testReceiverType() {
@@ -28,5 +28,5 @@ fun testReceiverType() {
val bas: String.() -> Unit = fun String.() {}
val bag: Int.() -> Unit = fun String.() {}
val bag: Int.() -> Unit = <!INITIALIZER_TYPE_MISMATCH!>fun String.() {}<!>
}
@@ -17,4 +17,4 @@ fun test2(a: () -> List<Int>) {
val a: (Int) -> Unit = fun(x) { checkSubtype<Int>(x) }
val b: (Int) -> Unit = fun(x: String) {}
val b: (Int) -> Unit = <!INITIALIZER_TYPE_MISMATCH!>fun(x: String) {}<!>
@@ -6,13 +6,13 @@ val a = fun (x) = x
val b: (Int) -> Int = fun (x) = x + 3
val c: (Int, String) -> Int = fun (x) = 3
val c: (Int, String) -> Int = <!INITIALIZER_TYPE_MISMATCH!>fun (x) = 3<!>
val d: (Int, String) -> Int = fun (x) = 3
val d: (Int, String) -> Int = <!INITIALIZER_TYPE_MISMATCH!>fun (x) = 3<!>
val e: (Int, String) -> Int = fun (x: String) = 3
val e: (Int, String) -> Int = <!INITIALIZER_TYPE_MISMATCH!>fun (x: String) = 3<!>
val f: (Int) -> Int = fun (x: String) = 3
val f: (Int) -> Int = <!INITIALIZER_TYPE_MISMATCH!>fun (x: String) = 3<!>
fun test1(a: (Int) -> Unit) {
test1(fun (x) { checkSubtype<Int>(x)})