3

我们的代码正在使用以下消息杀死 Scala 编译器:

[error] how can getCommonSuperclass() do its job if different class symbols
        get the same bytecode-level internal name: scala/Tuple2$mcJD$sp

为了弄清楚,我试图理解Tuple2$mcJD$sp应该是什么。它是为 生成的类(Long, Double)吗?这是在某处记录的吗?谢谢!


到目前为止我发现的一些线索:

  • 我认为类型缩写与Class.getName中记录的缩写相匹配。
  • 该名称在SpecializeTypes.specializedName中生成。根据代码,格式为m<abbreviated method specialization types>c<abbreviated class specialization types>$sp.

也许它被认为是编译器内部的东西,并且没有在任何地方记录。

4

0 回答 0