Refine dirty files computation in case of Java source changes

#KT-17621 In Progress
This commit is contained in:
Denis Zharkov
2017-11-30 15:24:52 +03:00
parent 26393d738f
commit ae6421476d
66 changed files with 634 additions and 140 deletions
@@ -0,0 +1,3 @@
open class BaseClass {
fun foo() {}
}
@@ -0,0 +1,3 @@
open class BaseClass {
fun foo(): String = "OK"
}
@@ -0,0 +1,2 @@
public class DerivedClass1 extends BaseClass {
}
@@ -0,0 +1,2 @@
class DerivedClass2 : DerivedClass1() {
}
@@ -0,0 +1,33 @@
================ Step #1 =================
Cleaning output files:
out/production/module/BaseClass.class
End of files
Compiling files:
src/BaseClass.kt
End of files
Marked as dirty by Kotlin:
src/usage1.kt
src/usage2.kt
src/usage3.kt
Exit code: ADDITIONAL_PASS_REQUIRED
------------------------------------------
Cleaning output files:
out/production/module/DerivedClass1.class
out/production/module/DerivedClass2.class
out/production/module/META-INF/module.kotlin_module
out/production/module/Usage1Kt.class
out/production/module/Usage2Kt.class
out/production/module/Usage3Kt.class
End of files
Compiling files:
src/DerivedClass2.kt
src/usage1.kt
src/usage2.kt
src/usage3.kt
End of files
Exit code: OK
------------------------------------------
Compiling files:
src/DerivedClass1.java
End of files
@@ -0,0 +1,3 @@
fun main4() {
DerivedClass2().hashCode()
}
@@ -0,0 +1,3 @@
fun main1() {
BaseClass().foo()
}
@@ -0,0 +1,3 @@
fun main2() {
DerivedClass1().foo()
}
@@ -0,0 +1,3 @@
fun main3() {
DerivedClass2().foo()
}