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,18 @@
package test
internal open class Impl : test.Trait {
public constructor Impl()
internal open override /*1*/ /*fake_override*/ fun bar() : jet.String
internal open override /*1*/ /*fake_override*/ fun foo() : jet.String
}
public open class Subclass : test.Impl {
public constructor Subclass()
java.lang.Override() public open override /*1*/ fun bar() : jet.String
internal open override /*1*/ /*fake_override*/ fun foo() : jet.String
}
internal trait Trait {
internal open fun bar() : jet.String
internal open fun foo() : jet.String
}
@@ -0,0 +1,8 @@
package test;
public class Subclass extends Impl {
@Override
public String bar() {
return "bar bar";
}
}
@@ -0,0 +1,10 @@
package test
trait Trait {
fun foo(): String = "foo"
fun bar(): String = "bar"
}
open class Impl : Trait {
}