Recompile subtypes when class member is changed

This commit is contained in:
Alexey Tsvetkov
2016-01-22 15:47:35 +03:00
parent 4296b7f882
commit a474165a8f
25 changed files with 153 additions and 7 deletions
@@ -0,0 +1,3 @@
interface A {
fun f(c: C<Any>)
}
@@ -0,0 +1,3 @@
open class B {
fun f(c: C<Any>) {}
}
@@ -0,0 +1,3 @@
open class B {
fun f(c: C<Int>) {}
}
@@ -0,0 +1,3 @@
open class B {
fun f(c: C<Any>) {}
}
@@ -0,0 +1 @@
open class BA : B(), A
@@ -0,0 +1 @@
class C<out T>
@@ -0,0 +1,23 @@
Cleaning output files:
out/production/module/B.class
End of files
Compiling files:
src/B.kt
End of files
Cleaning output files:
out/production/module/BA.class
End of files
Compiling files:
src/BA.kt
End of files
COMPILATION FAILED
Class 'BA' must be declared abstract or implement abstract member public abstract fun f(c: C<kotlin.Any>): kotlin.Unit defined in A
Cleaning output files:
out/production/module/B.class
End of files
Compiling files:
src/B.kt
src/BA.kt
End of files