2011-05-11 78 views
0

以下是一個錯誤還是故意的?動態特徵NoSuchFieldError @ 2.9.0RC4

trait Dyn { 
    val D1 = new Dynamic { 
    def applyDynamic(name: String)(args: Any*) = "Hi" 
    } 
    object D2 extends Dynamic { 
    def applyDynamic(name: String)(args: Any*) = "Hey" 
    } 
} 
trait T { self: Dyn => 
    def foo1 = D1.X 
    def foo2 = D2.X 
} 
object T extends T with Dyn 
object Dyn extends Dyn 

T.D1.X // works 
Dyn.D1.X // works 
T.foo1 // doesn't work: java.lang.NoSuchFieldError: reflPoly$Cache1 

T.D2.X // works 
Dyn.D2.X // works 
T.foo2 // works 
+0

它看起來像一個錯誤的另一個實例,你應該問階郵件列表。 – 2011-05-11 10:22:53

+0

@Kim:說完就完成了。 – 2011-05-11 10:54:07

+1

odersky在3分鐘前修復了它[24922](https://lampsvn.epfl.ch/trac/scala/changeset/24922) – 2011-05-11 11:13:53

回答