9

从 2.8.1 迁移到 2.9.1 发现有趣的事情。试图在控制台中写这个:

>>import collection.immutable.Set.Set4
>>new Set4[Int](1,2,3,4)

它给:

java.lang.Error: Unexpected New
    at scala.tools.nsc.symtab.SymbolTable.abort(SymbolTable.scala:34)
    at scala.tools.nsc.backend.icode.GenICode$ICodePhase.scala$tools$nsc$bac
..........................
That entry seems to have slain the compiler.  Shall I replayscala:660)
your session? I can re-run each line except the last one.reach(ListBuffer.scala:
[y/n]?

我正在使用 Scala 版本 2.9.1.final(Java HotSpot(TM) Client VM,Java 1.6.0_26)。
Set3 和 Set2 类也会发生同样的事情。
这些是已知问题吗?
或者,也许,我做错了什么?
在 scala 2.8.1 控制台中它可以工作,并返回:

res0: collection.immutable.Set.Set4[Int] = Set(1,2,3,4)

我必须将这些报告为错误吗?

4

1 回答 1

7

Yes. This is a compiler bug, go ahead and report it.

于 2011-09-15T13:24:36.290 回答