Skip to content

Scala Library Crasher 6 #43

@VladUreche

Description

@VladUreche
sun@sun-laptop:/mnt/data-local/Work/Workspace/dev/miniboxing-plugin/sandbox(wip)$ cat mb_library_6.scala
package miniboxing.tests.compile.library6
import miniboxing.plugin.minispec

package A {
  trait Iterator[@minispec +A]
}

package B {
  trait Iterator[@minispec +A]
}

class Iterator[@minispec +A] extends A.Iterator[A] with B.Iterator[A]
sun@sun-laptop:/mnt/data-local/Work/Workspace/dev/miniboxing-plugin/sandbox(wip)$ ../mb-scalac mb_library_6.scala
Picked up _JAVA_OPTIONS: -Xms2g -Xmx2g -Xss4m -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=256m -XX:+UseParallelGC -XX:PermSize=256m -XX:+TieredCompilation -XX:+UseNUMA
TREE:
class Iterator_J[Asp >: Nothing <: Any] extends Object with miniboxing.tests.compile.library6.A.Iterator_J[Asp] with miniboxing.tests.compile.library6.B.Iterator_J[Asp] with miniboxing.tests.compile.library6.Iterator[Asp]
error: 
     while compiling: mb_library_6.scala
        during phase: minibox
     library version: version 2.10.3-20130708-163611-504b5f3b15
    compiler version: version 2.10.3-20130708-163611-504b5f3b15
  reconstructed args: -bootclasspath /home/sun/workspace/dev/miniboxing-plugin//components/runtime/target/scala-2.10/miniboxing-runtime_2.10-0.1-SNAPSHOT.jar:/home/sun/workspace/dev/miniboxing-plugin//components/plugin/target/scala-2.10/miniboxing-plugin_2.10-0.1-SNAPSHOT.jar -Xplugin:/home/sun/workspace/dev/miniboxing-plugin//components/plugin/target/scala-2.10/miniboxing-plugin_2.10-0.1-SNAPSHOT.jar

  last tree to typer: TypeTree(trait Iterator)
              symbol: trait Iterator in package library6 (flags: abstract <trait>)
   symbol definition: abstract trait Iterator[+A] extends Iterator[A] with Iterator[A]
                 tpe: miniboxing.tests.compile.library6.Iterator[Asp]
       symbol owners: trait Iterator -> package library6
      context owners: class Iterator_J -> package library6

== Enclosing template or block ==

Template( // val <local Iterator_J>: <notype> in class Iterator_J
  "java.lang.Object", "miniboxing.tests.compile.library6.A.Iterator_J", "miniboxing.tests.compile.library6.B.Iterator_J", "miniboxing.tests.compile.library6.Iterator" // parents
  ValDef(
    private
    "_"
    <tpt>
    <empty>
  )
  {}
)

== Expanded type of tree ==

TypeRef(
  TypeSymbol(
    abstract trait Iterator[+A] extends Iterator[A] with Iterator[A]
  )
  args = List(TypeParamTypeRef(TypeParam(+Asp)))
)

uncaught exception during compilation: scala.reflect.internal.Types$TypeError
error: scala.reflect.internal.Types$TypeError: method Iterator_A_TypeTag is defined twice
  conflicting symbols both originated in file '/mnt/data-local/Work/Workspace/dev/miniboxing-plugin/sandbox/mb_library_6.scala'
    at scala.tools.nsc.typechecker.Contexts$Context.issueCommon(Contexts.scala:399)
    at scala.tools.nsc.typechecker.Contexts$Context.issue(Contexts.scala:403)
    at scala.tools.nsc.typechecker.ContextErrors$ErrorUtils$.issueTypeError(ContextErrors.scala:103)
    at scala.tools.nsc.typechecker.ContextErrors$ErrorUtils$.issueSymbolTypeError(ContextErrors.scala:91)
    at scala.tools.nsc.typechecker.ContextErrors$TyperContextErrors$TyperErrorGen$.DefDefinedTwiceError(ContextErrors.scala:676)
    at scala.tools.nsc.typechecker.Typers$Typer.checkNoDoubleDefs$1(Typers.scala:2966)
    at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3032)
    at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1918)
    at scala.tools.nsc.typechecker.Typers$Typer.typedClassDef(Typers.scala:1758)
    at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5544)
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5603)
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5665)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2$$anonfun$1.apply(MiniboxTreeTransformation.scala:98)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2$$anonfun$1.apply(MiniboxTreeTransformation.scala:98)
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
    at scala.collection.immutable.List.foreach(List.scala:318)
    at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
    at scala.collection.AbstractTraversable.map(Traversable.scala:105)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2.apply(MiniboxTreeTransformation.scala:98)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2.apply(MiniboxTreeTransformation.scala:96)
    at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2936)
    at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:34)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer.miniboxTransform(MiniboxTreeTransformation.scala:96)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer.transform(MiniboxTreeTransformation.scala:80)
    at miniboxing.plugin.Minibox$Component$$anon$1$$anonfun$1.apply(Minibox.scala:103)
    at miniboxing.plugin.Minibox$Component$$anon$1$$anonfun$1.apply(Minibox.scala:103)
    at scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:207)
    at scala.reflect.internal.SymbolTable.afterPhase(SymbolTable.scala:216)
    at miniboxing.plugin.MiniboxComponent$class.afterMinibox(Minibox.scala:28)
    at miniboxing.plugin.Minibox$Component$$anon$1.transform(Minibox.scala:103)
    at miniboxing.plugin.Minibox$Component$$anon$1.transform(Minibox.scala:96)
    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" scala.reflect.internal.Types$TypeError: method Iterator_A_TypeTag is defined twice
  conflicting symbols both originated in file '/mnt/data-local/Work/Workspace/dev/miniboxing-plugin/sandbox/mb_library_6.scala'
    at scala.tools.nsc.typechecker.Contexts$Context.issueCommon(Contexts.scala:399)
    at scala.tools.nsc.typechecker.Contexts$Context.issue(Contexts.scala:403)
    at scala.tools.nsc.typechecker.ContextErrors$ErrorUtils$.issueTypeError(ContextErrors.scala:103)
    at scala.tools.nsc.typechecker.ContextErrors$ErrorUtils$.issueSymbolTypeError(ContextErrors.scala:91)
    at scala.tools.nsc.typechecker.ContextErrors$TyperContextErrors$TyperErrorGen$.DefDefinedTwiceError(ContextErrors.scala:676)
    at scala.tools.nsc.typechecker.Typers$Typer.checkNoDoubleDefs$1(Typers.scala:2966)
    at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3032)
    at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:1918)
    at scala.tools.nsc.typechecker.Typers$Typer.typedClassDef(Typers.scala:1758)
    at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5544)
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5603)
    at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:5665)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2$$anonfun$1.apply(MiniboxTreeTransformation.scala:98)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2$$anonfun$1.apply(MiniboxTreeTransformation.scala:98)
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
    at scala.collection.immutable.List.foreach(List.scala:318)
    at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
    at scala.collection.AbstractTraversable.map(Traversable.scala:105)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2.apply(MiniboxTreeTransformation.scala:98)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer$$anonfun$miniboxTransform$2.apply(MiniboxTreeTransformation.scala:96)
    at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2936)
    at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:34)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer.miniboxTransform(MiniboxTreeTransformation.scala:96)
    at miniboxing.plugin.MiniboxTreeTransformation$MiniboxTreeTransformer.transform(MiniboxTreeTransformation.scala:80)
    at miniboxing.plugin.Minibox$Component$$anon$1$$anonfun$1.apply(Minibox.scala:103)
    at miniboxing.plugin.Minibox$Component$$anon$1$$anonfun$1.apply(Minibox.scala:103)
    at scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:207)
    at scala.reflect.internal.SymbolTable.afterPhase(SymbolTable.scala:216)
    at miniboxing.plugin.MiniboxComponent$class.afterMinibox(Minibox.scala:28)
    at miniboxing.plugin.Minibox$Component$$anon$1.transform(Minibox.scala:103)
    at miniboxing.plugin.Minibox$Component$$anon$1.transform(Minibox.scala:96)
    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)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions