动态特征 NoSuchFieldError @2.9.0RC4

发布于 2024-11-06 05:47:03 字数 503 浏览 1 评论 0原文

以下内容是错误还是故意的?

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

Is the following a bug or on purpose?

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

帥小哥 2024-11-13 05:47:03

这可能是错误的另一个实例 #4560

That's probably another instance of bug #4560

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文