diff --git a/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/ExperimentalIncrementalJpsTestGenerated.java b/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/ExperimentalIncrementalJpsTestGenerated.java index c88cb6cc955..4daade82888 100644 --- a/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/ExperimentalIncrementalJpsTestGenerated.java +++ b/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/ExperimentalIncrementalJpsTestGenerated.java @@ -1124,6 +1124,12 @@ public class ExperimentalIncrementalJpsTestGenerated extends AbstractExperimenta doTest(fileName); } + @TestMetadata("coroutine") + public void testCoroutine() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/inlineFunCallSite/coroutine/"); + doTest(fileName); + } + @TestMetadata("function") public void testFunction() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/inlineFunCallSite/function/"); diff --git a/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java b/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java index 23aba42cd33..bcc80c08637 100644 --- a/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java +++ b/jps/jps-plugin/jps-tests/test/org/jetbrains/kotlin/jps/build/IncrementalJpsTestGenerated.java @@ -1124,6 +1124,12 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest { doTest(fileName); } + @TestMetadata("coroutine") + public void testCoroutine() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/inlineFunCallSite/coroutine/"); + doTest(fileName); + } + @TestMetadata("function") public void testFunction() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/inlineFunCallSite/function/"); diff --git a/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/build.log b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/build.log new file mode 100644 index 00000000000..c8c6fee67d7 --- /dev/null +++ b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/build.log @@ -0,0 +1,24 @@ +================ 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/usage.kt +Exit code: ADDITIONAL_PASS_REQUIRED +------------------------------------------ +Cleaning output files: + out/production/module/META-INF/module.kotlin_module + out/production/module/usage/Controller.class + out/production/module/usage/UsageKt$bar$1.class + out/production/module/usage/UsageKt.class +End of files +Compiling files: + src/usage.kt +End of files +Exit code: OK +------------------------------------------ diff --git a/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/inline.kt b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/inline.kt new file mode 100644 index 00000000000..9c46b1383d6 --- /dev/null +++ b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/inline.kt @@ -0,0 +1,5 @@ +package inline + +inline fun f(x: Int): Int { + return x - 1 +} diff --git a/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/inline.kt.new b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/inline.kt.new new file mode 100644 index 00000000000..7c3b34f3b5d --- /dev/null +++ b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/inline.kt.new @@ -0,0 +1,5 @@ +package inline + +inline fun f(x: Int): Int { + return x + 1 +} diff --git a/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/usage.kt b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/usage.kt new file mode 100644 index 00000000000..ed10ee21c2d --- /dev/null +++ b/jps/jps-plugin/testData/incremental/inlineFunCallSite/coroutine/usage.kt @@ -0,0 +1,18 @@ +package usage + +fun async(coroutine x: Controller.() -> Continuation) { + x(Controller()).resume(Unit) +} + +class Controller { + suspend fun step(param: Int, next: Continuation) { + next.resume(param + 1) + } +} + +fun bar() { + async { + val result = step(1) + inline.f(result) + } +}