KT-2987 java.lang.AbstractMethodError/java.lang.NoSuchMethodError for delegated class by parameterized parent

#KT-2987 Fixed
This commit is contained in:
Sergey Mashkov
2012-10-24 18:29:31 +04:00
committed by Alexander Udalov
parent c843d23416
commit edb8797fa6
4 changed files with 61 additions and 17 deletions
@@ -0,0 +1,31 @@
trait A<T> {
var zzzValue : T
fun zzz() : T
}
class Base<T> : A<T?> {
override var zzzValue : T? = null
override fun zzz() : T? = zzzValue
}
class X : A<String?> by Base<String?>()
fun box() : String {
(Base<String?>() as A<String?>).zzz()
if (X().zzz() != null) {
return "Fail"
}
val x = X()
x.zzzValue = "aa"
if (x.zzzValue != "aa") {
return "Fail 2";
}
if (x.zzz() != "aa") {
return "Fail 3";
}
return "OK"
}