Aladdin - Scala Bugtracking
[#633] project: compiler priority: low category: bug
submitter assigned to status date submitted
Nikolay Martin fixed 2006-06-20 14:09:11.0
subject [contrib #159] Missing types misdiagnosed
code
object Test
{
        def t(a : ListBuffer[String]) = {
                Console.println(a.length)
        }

        def main(argv : Array[String]) = t(null)
}
what happened
Compiler prints an incorrect error and then crashes:

test.scala:4 error: recursive value a needs type
                Console.println(a.length)
                                ^
Exception in thread "main" java.lang.Error: assertion failed
        at scala.Predef$.assert(Predef.scala:171)
        at scala.tools.nsc.typechecker.Typers$Typer.scala$tools$nsc$typechecker$Typers$Typer$$inferView(Typers.s\
cala:61)
        at scala.tools.nsc.typechecker.Typers$Typer.inferView(Typers.scala:76)
        at scala.tools.nsc.typechecker.Typers$Typer.adaptToMember(Typers.scala:507)
        at scala.tools.nsc.typechecker.Typers$Typer.tryTypedApply$0(Typers.scala:1169)
        at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:1576)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1693)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1719)
        at scala.tools.nsc.typechecker.Typers$Typer.computeType(Typers.scala:1750)
        at scala.tools.nsc.typechecker.Namers$Namer.methodSig(Namers.scala:409)
        at scala.tools.nsc.typechecker.Namers$Namer.liftedTry0$0(Namers.scala:477)
        at scala.tools.nsc.typechecker.Namers$Namer.scala$tools$nsc$typechecker$Namers$Namer$$typeSig(Namers.sca\
la:463)
        at scala.tools.nsc.typechecker.Namers$Namer$$anon$0.complete(Namers.scala:312)
        at scala.tools.nsc.symtab.Symbols$Symbol.info(Symbols.scala:346)
        at scala.tools.nsc.symtab.Symbols$Symbol.initialize(Symbols.scala:423)
        at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:1331)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1693)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1719)
        at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$46.apply(Typers.scala:995)
        at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$46.apply(Typers.scala:985)
        at scala.List$.loop$0(List.scala:232)
        at scala.List$.mapConserve(List.scala:249)
        at scala.List$.loop$0(List.scala:236)
        at scala.List$.mapConserve(List.scala:249)
        at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:985)
        at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:709)
        at scala.tools.nsc.typechecker.Typers$Typer.typedModuleDef(Typers.scala:651)
        at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:1343)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1693)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1719)
        at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$46.apply(Typers.scala:995)
        at scala.tools.nsc.typechecker.Typers$Typer$$anonfun$46.apply(Typers.scala:985)
        at scala.List$.loop$0(List.scala:232)
        at scala.List$.mapConserve(List.scala:249)
        at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:985)
        at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:1336)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1693)
        at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:1719)
        at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$1.apply(Analyzer.scala:38)
        at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:216)
        at scala.tools.nsc.Global$GlobalPhase$$anonfun$1.apply(Global.scala:205)
        at scala.tools.nsc.Global$GlobalPhase$$anonfun$1.apply(Global.scala:205)
        at scala.Iterator$class.foreach(Iterator.scala:304)
        at scala.collection.mutable.ListBuffer$$anon$0.foreach(ListBuffer.scala:216)
        at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:205)
        at scala.tools.nsc.Global$Run.compileSources(Global.scala:467)
        at scala.tools.nsc.Global$Run.compile(Global.scala:527)
        at scala.tools.nsc.Main$.process(Main.scala:76)
        at scala.tools.nsc.Main$.main(Main.scala:98)
        at scala.tools.nsc.Main.main(Main.scala)
what expected
error: not found: type ListBuffer
[back to overview]
Changes of this bug report
Nikolay  edited on  2006-06-20 14:09:49.0
Martin  edited on  2006-06-27 17:34:22.0