Fixed propagation for non-abstract methods inherited from traits.

This commit is contained in:
Evgeny Gerashchenko
2013-04-11 20:47:10 +04:00
parent 068b4a4628
commit f713b03abc
10 changed files with 116 additions and 4 deletions
@@ -0,0 +1,14 @@
package test
trait A {
fun foo() {}
fun bar() {}
}
open class B : A {
}
class C : B() {
override fun bar() {}
}
@@ -0,0 +1,18 @@
package test
internal trait A {
internal open fun bar() : jet.Unit
internal open fun foo() : jet.Unit
}
internal open class B : test.A {
/*primary*/ public constructor B()
internal open override /*1*/ /*fake_override*/ fun bar() : jet.Unit
internal open override /*1*/ /*fake_override*/ fun foo() : jet.Unit
}
internal final class C : test.B {
/*primary*/ public constructor C()
internal open override /*1*/ fun bar() : jet.Unit
internal open override /*1*/ /*fake_override*/ fun foo() : jet.Unit
}