~/scala/bin/socos -d libtest/ C.scala
C.scala:1: constructor scala.Map of type ()scala.Map cannot be applied to [A,B,GBTree[A,B]]
class GBTree[A, B] with Map[A, B, GBTree[A,B]] {
^
C.scala:3: illegal cyclic reference involving constructor GBTree.Node
case class Node[A,B](key:A,value:B,smaller:Node[A,B],bigger:Node[A,B])
^
C.scala:3: GBTree.this.Node does not take type parameters
case class Node[A,B](key:A,value:B,smaller:Node[A,B],bigger:Node[A,B])
^
Exception in thread "main" java.lang.AssertionError: type A
at scalac.symtab.Symbol.info(Symbol.java:560)
at scalac.symtab.Symbol.initialize(Symbol.java:530)
at scalac.typechecker.Analyzer.checkNonCyclic(Analyzer.java:415)
at scalac.typechecker.Analyzer.transform(Analyzer.java:1682)
at scalac.ast.Transformer.transform(Transformer.java:263)
at scalac.ast.Transformer.transform(Transformer.java:277)
at scalac.typechecker.Analyzer.transform(Analyzer.java:1662)
at scalac.typechecker.Analyzer.transform(Analyzer.java:1600)
at scalac.typechecker.Analyzer.transformStatSeq(Analyzer.java:1419)
at scalac.typechecker.Analyzer.transformTemplate(Analyzer.java:1472)
at scalac.typechecker.Analyzer.transform(Analyzer.java:1664)
at scalac.typechecker.Analyzer.transform(Analyzer.java:1600)
at scalac.typechecker.Analyzer.transformStatSeq(Analyzer.java:1419)
at scalac.typechecker.Analyzer.apply(Analyzer.java:114)
at scalac.ast.Transformer.apply(Transformer.java:66)
at scalac.ast.Transformer.apply(Transformer.java:62)
at scalac.typechecker.Analyzer.apply(Analyzer.java:58)
at scalac.typechecker.AnalyzerPhase.apply(AnalyzerPhase.java:118)
at scalac.Global.compile(Global.java:274)
at scalac.Global.compile(Global.java:250)
at scalac.Main.main(Main.java:32)
|