JS: report inline suspend functions to IC

* Also inline suspend lambda'a
* Also use correct JsName's in exported suspend inline fun's
* Also use less unused imports

Original commit: 59009430e5
This commit is contained in:
Anton Bannykh
2018-11-01 20:23:45 +03:00
parent 2fedf572f9
commit a783bf14cb
6 changed files with 49 additions and 0 deletions
@@ -870,6 +870,11 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest {
runTest("jps-plugin/testData/incremental/pureKotlin/inlinePropertyOnTopLevel/");
}
@TestMetadata("inlineSuspendFunctionChanged")
public void testInlineSuspendFunctionChanged() throws Exception {
runTest("jps-plugin/testData/incremental/pureKotlin/inlineSuspendFunctionChanged/");
}
@TestMetadata("inlineTwoFunctionsOneChanged")
public void testInlineTwoFunctionsOneChanged() throws Exception {
runTest("jps-plugin/testData/incremental/pureKotlin/inlineTwoFunctionsOneChanged/");
@@ -0,0 +1,22 @@
================ Step #1 =================
Cleaning output files:
out/production/module/META-INF/module.kotlin_module
out/production/module/inline/InlineKt.class
End of files
Compiling files:
src/inline.kt
End of files
Marked as dirty by Kotlin:
src/useInline.kt
Exit code: ADDITIONAL_PASS_REQUIRED
------------------------------------------
Cleaning output files:
out/production/module/META-INF/module.kotlin_module
out/production/module/inline/UseInlineKt.class
End of files
Compiling files:
src/useInline.kt
End of files
Exit code: OK
------------------------------------------
@@ -0,0 +1,5 @@
package inline
fun dontUseF() {
println("Don't use f")
}
@@ -0,0 +1,6 @@
package inline
inline suspend fun f(body: () -> Unit) {
println("i'm inline suspend function")
body()
}
@@ -0,0 +1,6 @@
package inline
inline suspend fun f(body: () -> Unit) {
body()
println("i'm inline suspend function")
}
@@ -0,0 +1,5 @@
package inline
suspend fun useF() {
f { println("useF") }
}