You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(This seems a pretty basic problem, sorry if it is a duplicate report.)
~/code/scala ./build/quick/bin/scala
Welcome to Scala version 2.10.0-20120422-061223-8c95273b70 (JavaHotSpot(TM) 64-BitServerVM, Java1.6.0_29).
Type in expressions to have them evaluated.
Type:help for more information.
scala> reify { 1match { case0=>0 } }
<console>:8:error: not found: value reify
reify { 1match { case0=>0 } }
^
scala>importreflect.mirror._importreflect.mirror._
scala> reify { 1match { case0=>0 } }
ReplGlobal.abort: symbol value x does not exist in $line5.$read$$iw$$iw$$iw$$iw$$anonfun$1.apply$mcI$sp
error: symbol value x does not exist in $anonfun$1.apply$mcI$sp
error:whilecompiling: <console>
current phase: icode
library version: version 2.10.0-20120422-061223-8c95273b70
compiler version: version 2.10.0-20120422-061223-8c95273b70
reconstructed args:
uncaught exception during compilation: scala.reflect.internal.FatalError
scala.reflect.internal.FatalError:whilecompiling: <console>
current phase: icode
library version: version 2.10.0-20120422-061223-8c95273b70
compiler version: version 2.10.0-20120422-061223-8c95273b70
reconstructed args:
symbol value x does not exist in $line5.$read$$iw$$iw$$iw$$iw$$anonfun$1.apply$mcI$sp
at scala.reflect.internal.SymbolTable.abort(SymbolTable.scala:45)
at scala.tools.nsc.Global.abort(Global.scala:202)
at scala.tools.nsc.interpreter.IMain$$anon$1.scala$tools$nsc$interpreter$ReplGlobal$$super$abort(IMain.scala:289)
at scala.tools.nsc.interpreter.ReplGlobal$class.abort(ReplGlobal.scala:21)
at scala.tools.nsc.interpreter.IMain$$anon$1.abort(IMain.scala:289)
at scala.tools.nsc.backend.icode.GenICode$ICodePhase.liftedTree2$1(GenICode.scala:998)
at scala.tools.nsc.backend.icode.GenICode$ICodePhase.scala$tools$nsc$backend$icode$GenICode$ICodePhase$$genLoad(GenICode.scala:992)
at scala.tools.nsc.backend.icode.GenICode$ICodePhase.gen(GenICode.scala:116)
at scala.tools.nsc.backend.icode.GenICode$ICodePhase$$anonfun$gen$1.apply(GenICode.scala:72)
at scala.tools.nsc.backend.icode.GenICode$ICodePhase$$anonfun$gen$1.apply(GenICode.scala:72)
at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59)
at scala.collection.immutable.List.foreach(List.scala:77)
Under the old regime:
~/code/scala ./build/quick/bin/scala -XoldpatmatWelcome to Scala version 2.10.0-20120422-061223-8c95273b70 (JavaHotSpot(TM) 64-BitServerVM, Java1.6.0_29).
Type in expressions to have them evaluated.
Type:help for more information.
scala>importreflect.mirror._importreflect.mirror._
scala> reify { 1match { case0=>0 } }
res0: reflect.mirror.Expr[Int] =Expr[Int](1match {
case0=>0
})
The text was updated successfully, but these errors were encountered:
Doesn't crash anymore, the reified tree corresponds to the desugared Match.
Jason, what do you think, good enough? (I guess so, because #5272 has been FIXED).
C:\scala>build\quick\bin\scala
Welcome to Scala version 2.10.0-20120502-222338-24be606216 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_29).
Type in expressions to have them evaluated.
Type :help for more information.
scala> import reflect.mirror._
import reflect.mirror._
scala> reify { 1 match { case 0 => 0 } }
res1: reflect.mirror.Expr[Int] =
Expr[Int]({
case <synthetic> val x1 = 1;
case4(){
if (0.$eq$eq(x1))
{
val x2 = x1;
matchEnd3(0)
}
else
case5()
};
case5(){
matchEnd3(throw new <type ?>(x1))
};
matchEnd3(x){
x
}
})
@retronym said (edited on May 3, 2012 8:06:32 PM UTC):
I'll leave the judgement of fixed-ness to Eugene, but it is certainly an improvement over the crash.
(This seems a pretty basic problem, sorry if it is a duplicate report.)
Under the old regime:
The text was updated successfully, but these errors were encountered: