[FIR] Report missing TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM for local functions

^KT-59376
^KT-55221 Fixed
This commit is contained in:
Ivan Kochurkin
2023-07-12 15:29:55 +02:00
committed by Space Team
parent d9736ec88c
commit dac8688a29
16 changed files with 41 additions and 34 deletions
@@ -2,7 +2,7 @@
fun foo() {
fun fact(n: Int) = {
if (n > 0) {
fact(n - 1) <!UNRESOLVED_REFERENCE!>*<!> n
<!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>fact(n - 1)<!> <!UNRESOLVED_REFERENCE!>*<!> n
}
else {
1
@@ -1,3 +1,3 @@
fun foo() {
fun bar() = (fun() = bar())
fun bar() = (fun() = <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>bar()<!>)
}
@@ -1,5 +1,5 @@
fun foo() {
fun bar() = {
bar()
<!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM, TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>bar()<!>
}
}
}
@@ -1,8 +1,8 @@
fun foo() {
fun bar1() = bar1()
fun bar1() = <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>bar1()<!>
fun bar2() = 1 <!OVERLOAD_RESOLUTION_AMBIGUITY!>+<!> bar2()
fun bar3() = id(bar3())
fun bar2() = 1 <!OVERLOAD_RESOLUTION_AMBIGUITY!>+<!> <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>bar2()<!>
fun bar3() = id(<!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>bar3()<!>)
}
fun <T> id(x: T) = x