Aladdin - Scala Bugtracking
[#1165] project: compiler priority: low category: bug
submitter assigned to status date submitted
Sean Martin fixed 2007-06-04 12:19:04.0
subject _* cast crash
code
object Test {
  def main(args : Array[String]) : Unit = {
    args : _*
    ()
  }
}
what happened
exception when traversing _*
exception when traversing (args) : _*
exception when traversing {
  (args) : _*;
  ()
}
exception when traversing def main(args: Array[java.lang.String]): Unit = {
  (args) : _*;
  ()
}
exception when traversing java.lang.Object with ScalaObject
  def this(): object test.Test = {
    Test.super.this();
    ()
  };
  def main(args: Array[java.lang.String]): Unit = {
    (args) : _*;
    ()
  }
}
exception when traversing final class Test extends java.lang.Object with ScalaObject
  def this(): object test.Test = {
    Test.super.this();
    ()
  };
  def main(args: Array[java.lang.String]): Unit = {
    (args) : _*;
    ()
  }
}
exception when traversing package test {
  final class Test extends java.lang.Object with ScalaObject
    def this(): object test.Test = {
      Test.super.this();
      ()
    };
    def main(args: Array[java.lang.String]): Unit = {
      (args) : _*;
      ()
    }
  }
}
java.lang.AssertionError: assertion failed
	at scala.Predef$.assert(Predef.scala:85)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$17.apply(UnCurry.scala:512)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$17.apply(UnCurry.scala:465)
	at scala.tools.nsc.symtab.SymbolTable.atPhase(SymbolTable.scala:82)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.postTransform(UnCurry.scala:465)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:103)
	at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1267)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:451)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:103)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$35.apply(Trees.scala:1319)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$35.apply(Trees.scala:1317)
	at scala.List$.loop$0(List.scala:243)
	at scala.List$.mapConserve(List.scala:260)
	at scala.tools.nsc.ast.Trees$Transformer.transformStats(Trees.scala:1317)
	at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1233)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:451)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:103)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$25.apply(Trees.scala:1212)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$25.apply(Trees.scala:1211)
	at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1325)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
	at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1210)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.scala$tools$nsc$transform$UnCurry$UnCurryTransformer$$s\
uper$transform(UnCurry.scala:373)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$5.apply(UnCurry.scala:373)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$5.apply(UnCurry.scala:359)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withNeedLift$0(UnCurry.scala:343)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:358)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:103)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$35.apply(Trees.scala:1319)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$35.apply(Trees.scala:1317)
	at scala.List$.loop$0(List.scala:243)
	at scala.List$.mapConserve(List.scala:260)
	at scala.List$.loop$0(List.scala:247)
	at scala.List$.mapConserve(List.scala:260)
	at scala.tools.nsc.ast.Trees$Transformer.transformStats(Trees.scala:1317)
	at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1231)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.scala$tools$nsc$transform$TypingTransformers$\
TypingTransformer$$super$transform(TypingTransformers.scala:44)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$0.apply(TypingTransformers.scala:44)\

	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$0.apply(TypingTransformers.scala:44)\

	at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1325)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:44)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.scala$tools$nsc$transform$UnCurry$UnCurryTransformer$$s\
uper$transform(UnCurry.scala:373)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$16.apply(UnCurry.scala:448)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer$$anonfun$16.apply(UnCurry.scala:448)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.withInConstructorFlag$0(UnCurry.scala:351)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:448)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:103)
	at scala.tools.nsc.ast.Trees$Transformer.transformTemplate(Trees.scala:1303)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$22.apply(Trees.scala:1199)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$22.apply(Trees.scala:1199)
	at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1325)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
	at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1198)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:451)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:103)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$35.apply(Trees.scala:1319)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$35.apply(Trees.scala:1317)
	at scala.List$.loop$0(List.scala:243)
	at scala.List$.mapConserve(List.scala:260)
	at scala.tools.nsc.ast.Trees$Transformer.transformStats(Trees.scala:1317)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$21.apply(Trees.scala:1195)
	at scala.tools.nsc.ast.Trees$Transformer$$anonfun$21.apply(Trees.scala:1195)
	at scala.tools.nsc.ast.Trees$Transformer.atOwner(Trees.scala:1325)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:33)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:27)
	at scala.tools.nsc.ast.Trees$Transformer.transform(Trees.scala:1194)
	at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:46)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.mainTransform(UnCurry.scala:451)
	at scala.tools.nsc.transform.UnCurry$UnCurryTransformer.transform(UnCurry.scala:103)
	at scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:1320)
	at scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:30)
	at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:241)
	at scala.tools.nsc.Global$GlobalPhase$$anonfun$2.apply(Global.scala:230)
	at scala.tools.nsc.Global$GlobalPhase$$anonfun$2.apply(Global.scala:230)
	at scala.Iterator$class.foreach(Iterator.scala:369)
	at scala.collection.mutable.ListBuffer$$anon$0.foreach(ListBuffer.scala:245)
	at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:230)
	at scala.tools.nsc.Global$Run.compileSources(Global.scala:498)
	at scala.tools.nsc.Global$Run.compile(Global.scala:572)
	at ch.epfl.lamp.sdt.build.ScalaCompilerManager$ScalaCompiler.compile(ScalaCompilerManager.java:267)
	at ch.epfl.lamp.sdt.build.ScalaProjectBuilder.build(ScalaProjectBuilder.java:153)
	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:624)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:166)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:197)
	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:246)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:249)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:302)
	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:334)
	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:137)
	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:235)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
what expected
[back to overview]
Changes of this bug report
Martin  edited on  2007-07-14 20:02:25.0