[FIR] Add inline checker for bodies of inline functions

This checker doesn't support `@PublishedAPI` yet, so some BB tests for it
 were muted. #KT-46270
This commit is contained in:
Dmitriy Novozhilov
2021-04-23 10:15:36 +03:00
committed by TeamCityServer
parent 7e052c1eb1
commit 32c3f85679
95 changed files with 804 additions and 543 deletions
@@ -21,7 +21,7 @@ inline fun test(crossinline c: () -> Unit) {
}
}
val l = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
suspend fun calculate() = "OK"
@@ -25,7 +25,7 @@ inline fun test(crossinline c: suspend () -> Unit) {
}
}
val l: suspend () -> Unit = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
suspend fun calculate() = "OK"
@@ -21,7 +21,7 @@ inline fun test(c: () -> Unit) {
}
}
val l = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
fun builder(c: suspend () -> Unit) {
@@ -25,7 +25,7 @@ inline fun test(c: suspend () -> Unit) {
}
}
val l: suspend () -> Unit = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
fun builder(c: suspend () -> Unit) {}
@@ -20,7 +20,7 @@ suspend inline fun test(crossinline c: () -> Unit) {
}
}
val l = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
fun builder(c: suspend () -> Unit) {
@@ -24,7 +24,7 @@ suspend inline fun test(crossinline c: suspend () -> Unit) {
}
}
val l: suspend () -> Unit = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
fun builder(c: suspend () -> Unit) {}
@@ -20,7 +20,7 @@ suspend inline fun test(c: () -> Unit) {
}
}
val l = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
suspend fun calculate() = "OK"
@@ -24,7 +24,7 @@ suspend inline fun test(c: suspend () -> Unit) {
}
}
val l: suspend () -> Unit = { c() }
c.startCoroutine(EmptyContinuation)
c.<!USAGE_IS_NOT_INLINABLE!>startCoroutine<!>(EmptyContinuation)
}
fun builder(c: suspend () -> Unit) {