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
$ cat mb_spire_9_sp.scala
packageminiboxing.tests.compiletraitOrdering[@specialized(Int) A] {
defeqv(x: Array[A], y: Array[A]):Boolean=false
}
traitArrayVectorOrder[@specialized(Int) A] extendsOrdering[A] {
overridedefeqv(x: Array[A], y: Array[A]):Boolean=super.eqv(x, y)
}
objectvectorOrder {
implicitdefarrayOrder[@specialized(Int) A]() =newArrayVectorOrder[A] { }
}
$ ../../scala-trunk/build/quick/bin/scalac mb_spire_9_sp.scala traitwhilecompiling: mb_spire_9_sp.scala
during phase: mixin
library version: version 2.10.3-20130625-164027-d22e8d282c
compiler version: version 2.10.3-20130627-153946-54cb6af7db
reconstructed args:
last tree to typer: TypeTree(classArray)
symbol: classArray in packagescala (flags:final)
symbol definition: finalclassArray[T>:?<:?] extendsObjecttpe: Array[Int]
symbol owners: classArray->packagescala
context owners: anonymous classanon$1->packagecompile==Enclosing template or block ==Template( // val <local $anon>: <notype>, tree.tpe=miniboxing.tests.compile.anon$1"java.lang.Object", "miniboxing.tests.compile.ArrayVectorOrder$mcI$sp"// parentsValDef(
private"_"
<tpt>
<empty>
)
// 3 statementsDefDef( // override def super=v(x: Object,y: Object): Boolean
<method> override <bridge> <superaccessor> <specialized> <triedcooking> <notprotected>
"super$eqv"
[]
// 1 parameter listValDef( // x: Object
<param> <triedcooking>
"x"
<tpt> // tree.tpe=Object
<empty>
)
ValDef( // y: Object
<param> <triedcooking>
"y"
<tpt> // tree.tpe=Object
<empty>
)
<tpt> // tree.tpe=BooleanApply( // override def super=v(x: Array[Int],y: Array[Int]): Boolean in trait ArrayVectorOrder$mcI$sp, tree.tpe=Boolean
vectorOrder$$anon$1.this."super$eqv"// override def super=v(x: Array[Int],y: Array[Int]): Boolean in trait ArrayVectorOrder$mcI$sp, tree.tpe=(x: Array[Int], y: Array[Int])Boolean// 2 argumentsApply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=Array[Int]TypeApply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=()Array[Int]"x"."$asInstanceOf"// final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=[T0 >: ? <: ?]()T0
<tpt> // tree.tpe=Array[Int]
)
Nil
)
Apply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=Array[Int]TypeApply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=()Array[Int]"y"."$asInstanceOf"// final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=[T0 >: ? <: ?]()T0
<tpt> // tree.tpe=Array[Int]
)
Nil
)
)
)
DefDef( // override def eqv(x: Object,y: Object): Boolean
<method> override <bridge> <specialized>
"eqv"
[]
// 1 parameter listValDef( // x: Object
<param> <triedcooking>
"x"
<tpt> // tree.tpe=Object
<empty>
)
ValDef( // y: Object
<param> <triedcooking>
"y"
<tpt> // tree.tpe=Object
<empty>
)
<tpt> // tree.tpe=BooleanApply( // override def eqv(x: Array[Int],y: Array[Int]): Boolean in trait ArrayVectorOrder$mcI$sp, tree.tpe=Boolean
vectorOrder$$anon$1.this."eqv"// override def eqv(x: Array[Int],y: Array[Int]): Boolean in trait ArrayVectorOrder$mcI$sp, tree.tpe=(x: Array[Int], y: Array[Int])Boolean// 2 argumentsApply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=Array[Int]TypeApply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=()Array[Int]"x"."$asInstanceOf"// final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=[T0 >: ? <: ?]()T0
<tpt> // tree.tpe=Array[Int]
)
Nil
)
Apply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=Array[Int]TypeApply( // final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=()Array[Int]"y"."$asInstanceOf"// final def $asInstanceOf[T0 >: ? <: ?](): T0 in class Object, tree.tpe=[T0 >: ? <: ?]()T0
<tpt> // tree.tpe=Array[Int]
)
Nil
)
)
)
DefDef( // def <init>(): miniboxing.tests.compile.anon$1
<method> <triedcooking>
"<init>"
[]
List(Nil)
<tpt> // tree.tpe=miniboxing.tests.compile.anon$1Block( // tree.tpe=Unit// 5 statementsApply( // def <init>(): Object in class Object, tree.tpe=Object
vectorOrder$$anon$1.super."<init>"// def <init>(): Object in class Object, tree.tpe=()ObjectNil
)
Apply( // def $init$(): Unit in object Ordering$class, tree.tpe=Unit
vectorOrder$$anon$1.this.$asInstanceOf[miniboxing.tests.compile.Ordering$class]()."$init$"// def $init$(): Unit in object Ordering$class, tree.tpe=()UnitNil
)
Apply( // def $init$(): Unit in object ArrayVectorOrder$class, tree.tpe=Unit
vectorOrder$$anon$1.this.$asInstanceOf[miniboxing.tests.compile.ArrayVectorOrder$class]()."$init$"// def $init$(): Unit in object ArrayVectorOrder$class, tree.tpe=()UnitNil
)
Apply( // def $init$(): Unit in object Ordering$mcI$sp$class, tree.tpe=Unit
vectorOrder$$anon$1.this.$asInstanceOf[miniboxing.tests.compile.Ordering$mcI$sp$class]()."$init$"// def $init$(): Unit in object Ordering$mcI$sp$class, tree.tpe=()UnitNil
)
Apply( // def $init$(): Unit in object ArrayVectorOrder$mcI$sp$class, tree.tpe=Unit
vectorOrder$$anon$1.this.$asInstanceOf[miniboxing.tests.compile.ArrayVectorOrder$mcI$sp$class]()."$init$"// def $init$(): Unit in object ArrayVectorOrder$mcI$sp$class, tree.tpe=()UnitNil
)
()
)
)
)
==Expandedtypeof tree ==TypeRef(
TypeSymbol(finalclassArray[T>:?<:?] extendsObject)
args =List(TypeRef(TypeSymbol(finalabstractclassIntextends )))
)
unhandled exception while transforming mb_spire_9_sp.scala
error: uncaught exception during compilation: java.lang.UnsupportedOperationException
error: java.lang.UnsupportedOperationException: tail of empty list
at scala.collection.immutable.Nil$.tail(List.scala:339)
at scala.collection.immutable.Nil$.tail(List.scala:334)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$rebindSuper$1.apply(Mixin.scala:131)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$rebindSuper$1.apply(Mixin.scala:124)
at scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:207)
at scala.reflect.internal.SymbolTable.afterPhase(SymbolTable.scala:216)
at scala.tools.nsc.Global.afterPickler(Global.scala:1104)
at scala.tools.nsc.transform.Mixin.scala$tools$nsc$transform$Mixin$$rebindSuper(Mixin.scala:124)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$mixinTraitMembers$1$1.apply(Mixin.scala:349)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$mixinTraitMembers$1$1.apply(Mixin.scala:302)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.reflect.internal.Scopes$Scope.foreach(Scopes.scala:315)
at scala.tools.nsc.transform.Mixin.scala$tools$nsc$transform$Mixin$$mixinTraitMembers$1(Mixin.scala:302)
at scala.tools.nsc.transform.Mixin$$anonfun$addMixedinMembers$3.apply(Mixin.scala:377)
at scala.tools.nsc.transform.Mixin$$anonfun$addMixedinMembers$3.apply(Mixin.scala:373)
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
at scala.tools.nsc.transform.Mixin.addMixedinMembers(Mixin.scala:373)
at scala.tools.nsc.transform.Mixin$MixinTransformer.preTransform(Mixin.scala:540)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:1268)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:481)
at scala.reflect.api.Trees$Transformer.transformTemplate(Trees.scala:2904)
at scala.reflect.internal.Trees$$anonfun$itransform$4.apply(Trees.scala:1280)
at scala.reflect.internal.Trees$$anonfun$itransform$4.apply(Trees.scala:1279)
at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2936)
at scala.reflect.internal.Trees$class.itransform(Trees.scala:1278)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2897)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:1268)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:481)
at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2927)
at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2925)
at scala.collection.immutable.List.loop$1(List.scala:170)
at scala.collection.immutable.List.mapConserve(List.scala:186)
at scala.reflect.api.Trees$Transformer.transformStats(Trees.scala:2925)
at scala.reflect.internal.Trees$$anonfun$itransform$7.apply(Trees.scala:1298)
at scala.reflect.internal.Trees$$anonfun$itransform$7.apply(Trees.scala:1298)
at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2936)
at scala.reflect.internal.Trees$class.itransform(Trees.scala:1297)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2897)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:1268)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:481)
at scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:227)
at scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:30)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:464)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:431)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:431)
at scala.collection.Iterator$class.foreach(Iterator.scala:727)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:431)
at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1583)
at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1557)
at scala.tools.nsc.Global$Run.compileSources(Global.scala:1553)
at scala.tools.nsc.Global$Run.compile(Global.scala:1662)
at scala.tools.nsc.Driver.doCompile(Driver.scala:33)
at scala.tools.nsc.Main$.doCompile(Main.scala:79)
at scala.tools.nsc.Driver.process(Driver.scala:54)
at scala.tools.nsc.Driver.main(Driver.scala:67)
at scala.tools.nsc.Main.main(Main.scala)
Exception in thread "main" java.lang.UnsupportedOperationException: tail of empty list
at scala.collection.immutable.Nil$.tail(List.scala:339)
at scala.collection.immutable.Nil$.tail(List.scala:334)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$rebindSuper$1.apply(Mixin.scala:131)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$rebindSuper$1.apply(Mixin.scala:124)
at scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:207)
at scala.reflect.internal.SymbolTable.afterPhase(SymbolTable.scala:216)
at scala.tools.nsc.Global.afterPickler(Global.scala:1104)
at scala.tools.nsc.transform.Mixin.scala$tools$nsc$transform$Mixin$$rebindSuper(Mixin.scala:124)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$mixinTraitMembers$1$1.apply(Mixin.scala:349)
at scala.tools.nsc.transform.Mixin$$anonfun$scala$tools$nsc$transform$Mixin$$mixinTraitMembers$1$1.apply(Mixin.scala:302)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.reflect.internal.Scopes$Scope.foreach(Scopes.scala:315)
at scala.tools.nsc.transform.Mixin.scala$tools$nsc$transform$Mixin$$mixinTraitMembers$1(Mixin.scala:302)
at scala.tools.nsc.transform.Mixin$$anonfun$addMixedinMembers$3.apply(Mixin.scala:377)
at scala.tools.nsc.transform.Mixin$$anonfun$addMixedinMembers$3.apply(Mixin.scala:373)
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
at scala.tools.nsc.transform.Mixin.addMixedinMembers(Mixin.scala:373)
at scala.tools.nsc.transform.Mixin$MixinTransformer.preTransform(Mixin.scala:540)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:1268)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:481)
at scala.reflect.api.Trees$Transformer.transformTemplate(Trees.scala:2904)
at scala.reflect.internal.Trees$$anonfun$itransform$4.apply(Trees.scala:1280)
at scala.reflect.internal.Trees$$anonfun$itransform$4.apply(Trees.scala:1279)
at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2936)
at scala.reflect.internal.Trees$class.itransform(Trees.scala:1278)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2897)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:1268)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:481)
at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2927)
at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2925)
at scala.collection.immutable.List.loop$1(List.scala:170)
at scala.collection.immutable.List.mapConserve(List.scala:186)
at scala.reflect.api.Trees$Transformer.transformStats(Trees.scala:2925)
at scala.reflect.internal.Trees$$anonfun$itransform$7.apply(Trees.scala:1298)
at scala.reflect.internal.Trees$$anonfun$itransform$7.apply(Trees.scala:1298)
at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2936)
at scala.reflect.internal.Trees$class.itransform(Trees.scala:1297)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:13)
at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2897)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:1268)
at scala.tools.nsc.transform.Mixin$MixinTransformer.transform(Mixin.scala:481)
at scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:227)
at scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:30)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:464)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:431)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:431)
at scala.collection.Iterator$class.foreach(Iterator.scala:727)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:431)
at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1583)
at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1557)
at scala.tools.nsc.Global$Run.compileSources(Global.scala:1553)
at scala.tools.nsc.Global$Run.compile(Global.scala:1662)
at scala.tools.nsc.Driver.doCompile(Driver.scala:33)
at scala.tools.nsc.Main$.doCompile(Main.scala:79)
at scala.tools.nsc.Driver.process(Driver.scala:54)
at scala.tools.nsc.Driver.main(Driver.scala:67)
at scala.tools.nsc.Main.main(Main.scala)
The text was updated successfully, but these errors were encountered:
The text was updated successfully, but these errors were encountered: