我在scala编译器中遇到以下错误。我在吉拉找不到这个问题。因此,我决定先问清楚,如果这是一个已知的问题:懒惰val的scala编译器错误
我开始用以下两种方法:
def getName: String = getString match {
case None => return ""
case Some(str) => return str
}
def getString: Option[String] = Some("abc")
然后,我改变了第一种方法
lazy val getName: String = getString match {
case None => return ""
case Some(str) => return str
}
不幸的是,我忘了删除返回语句。在这种情况下,Scala编译器应为邮件“的方法定义之外的回报”停下来,但它确实是:
[ant:scalac] error: uncaught exception during compilation: java.lang.NullPointerException
[ant:scalac] java.lang.NullPointerException
[ant:scalac] at scala.reflect.internal.Trees$class.Select(Trees.scala:1066)
[ant:scalac] at scala.reflect.internal.SymbolTable.Select(SymbolTable.scala:13)
它看起来像一个错误。不是吗?
你使用哪个Scala版本?你能否提供一个可编辑的例子来产生错误? – sschaef 2013-04-09 11:02:30
我的Scala版本是2.10.1。这里的例子是[链接](https://github.com/macjankowski/scalatests.git) – rarry 2013-04-09 11:46:14
好的,这是一个错误。只需在https://issues.scala-lang.org/secure/Dashboard.jspa – sschaef 2013-04-09 12:41:37