Introduce FirFunctionReturnTypeMismatchChecker
This commit is contained in:
@@ -1,21 +1,21 @@
|
||||
// !DIAGNOSTICS: -UNUSED_EXPRESSION -UNREACHABLE_CODE -UNUSED_PARAMETER -RETURN_NOT_ALLOWED
|
||||
|
||||
fun test1() = run {
|
||||
return "OK"
|
||||
return <!RETURN_TYPE_MISMATCH!>"OK"<!>
|
||||
}
|
||||
|
||||
fun test2() = run {
|
||||
fun local(): String {
|
||||
return ""
|
||||
}
|
||||
return ""
|
||||
return <!RETURN_TYPE_MISMATCH!>""<!>
|
||||
}
|
||||
|
||||
inline fun <T, R> Iterable<T>.map(transform: (T) -> R): List<R> = null!!
|
||||
fun test3(a: List<String>, b: List<Int>) = a.map {
|
||||
if (it.length == 3) return null
|
||||
if (it.length == 4) return ""
|
||||
if (it.length == 4) return 5
|
||||
if (it.length == 3) return <!RETURN_TYPE_MISMATCH!>null<!>
|
||||
if (it.length == 4) return <!RETURN_TYPE_MISMATCH!>""<!>
|
||||
if (it.length == 4) return <!RETURN_TYPE_MISMATCH!>5<!>
|
||||
if (it.length == 4) return b
|
||||
1
|
||||
}
|
||||
@@ -24,14 +24,14 @@ fun test4() = run {
|
||||
fun test5() {
|
||||
return
|
||||
|
||||
return@test4
|
||||
<!RETURN_TYPE_MISMATCH!>return@test4<!>
|
||||
|
||||
return return@test4
|
||||
return <!RETURN_TYPE_MISMATCH!>return@test4<!>
|
||||
|
||||
return fun() { return; return@test4 "" }
|
||||
return <!RETURN_TYPE_MISMATCH!>fun() { return; return@test4 <!RETURN_TYPE_MISMATCH!>""<!> }<!>
|
||||
}
|
||||
|
||||
return
|
||||
<!RETURN_TYPE_MISMATCH!>return<!>
|
||||
3
|
||||
}
|
||||
|
||||
@@ -43,5 +43,5 @@ val foo: Int
|
||||
}
|
||||
|
||||
fun test(): Int = run {
|
||||
return ""
|
||||
return <!RETURN_TYPE_MISMATCH!>""<!>
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user