Added test for KT-6454 Obsolete class-files for lambdas aren't removed from output when 'inline' annotation is added to function.

The bug is reproducible only for non-incremental compilation mode, which
will be deprecated soon.

 #KT-6454 can't reproduce

Original commit: 7924568355
This commit is contained in:
Evgeny Gerashchenko
2014-12-15 19:46:57 +03:00
parent 3a3e5a547e
commit 5eba550aef
5 changed files with 36 additions and 0 deletions
@@ -171,6 +171,12 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest {
doTest(fileName);
}
@TestMetadata("functionBecameInline")
public void testFunctionBecameInline() throws Exception {
String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/functionBecameInline/");
doTest(fileName);
}
@TestMetadata("independentClasses")
public void testIndependentClasses() throws Exception {
String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/independentClasses/");
@@ -0,0 +1,15 @@
Cleaning output files:
out/production/module/Y.class
End of files
Compiling files:
src/fun.kt
End of files
Cleaning output files:
out/production/module/X$main$1.class
out/production/module/X.class
out/production/module/Y.class
End of files
Compiling files:
src/fun.kt
src/usage.kt
End of files
@@ -0,0 +1,5 @@
class Y {
fun foo(f: () -> Unit) {
f()
}
}
@@ -0,0 +1,5 @@
class Y {
inline fun foo(f: () -> Unit) {
f()
}
}
@@ -0,0 +1,5 @@
class X {
fun main() {
Y().foo {}
}
}