Introduce FirFunctionReturnTypeMismatchChecker

This commit is contained in:
vldf
2021-04-03 22:58:19 +03:00
committed by Mikhail Glukhikh
parent 24f1f1221e
commit 57d2eb5da2
80 changed files with 501 additions and 238 deletions
@@ -5,7 +5,7 @@
// TESTCASE NUMBER: 1
// UNEXPECTED BEHAVIOUR
// ISSUES : KT-35545
fun case1(a: Boolean) = run { println("d"); return true }
fun case1(a: Boolean) = run { println("d"); return <!RETURN_TYPE_MISMATCH!>true<!> }
// TESTCASE NUMBER: 2
val case2
@@ -43,13 +43,13 @@ class Case8 {
}
// TESTCASE NUMBER: 9
fun case_9(): Any = null
fun case_9(): Any = <!RETURN_TYPE_MISMATCH!>null<!>
// TESTCASE NUMBER: 10
fun case_10(x: Int, y: Boolean): Any = if (y) x else null
fun case_10(x: Int, y: Boolean): Any = <!RETURN_TYPE_MISMATCH!>if (y) x else null<!>
// TESTCASE NUMBER: 11
fun case_11(x: Int, y: Boolean): Any = if (y) x else null
fun case_11(x: Int, y: Boolean): Any = <!RETURN_TYPE_MISMATCH!>if (y) x else null<!>
// TESTCASE NUMBER: 12
class Case12 {
@@ -17,5 +17,5 @@ fun case_1(x: Number?): Long? {
* ISSUES: KT-22997
*/
fun case_2(x: Number?): Long? {
if (x == null || x is Long) return x else return 0L
if (x == null || x is Long) return <!RETURN_TYPE_MISMATCH!>x<!> else return 0L
}
@@ -17,7 +17,7 @@ class Case1<T> {
x = getT()
}
<!DEBUG_INFO_EXPRESSION_TYPE("T?")!>x<!>
return x
return <!RETURN_TYPE_MISMATCH!>x<!>
}
}