summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala
diff options
context:
space:
mode:
authorSean McDirmid <sean.mcdirmid@gmail.com>2007-09-17 16:36:10 +0000
committerSean McDirmid <sean.mcdirmid@gmail.com>2007-09-17 16:36:10 +0000
commita205b6b06e705711308c9ad3abac74ba66b6266f (patch)
tree49aa189b4917b20d76c2da02cbf9475af5a49662 /src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala
parent3f9b82c88d74c1b03daf5131b50c172213f40a63 (diff)
downloadscala-a205b6b06e705711308c9ad3abac74ba66b6266f.tar.gz
scala-a205b6b06e705711308c9ad3abac74ba66b6266f.tar.bz2
scala-a205b6b06e705711308c9ad3abac74ba66b6266f.zip
Massive check-in for IDE.
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala b/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala
index aa5a2909e1..7323529d94 100644
--- a/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala
@@ -84,7 +84,7 @@ abstract class SuperAccessors extends transform.Transform with transform.TypingT
}
}
- override def transform(tree: Tree): Tree = tree match {
+ override def transform(tree: Tree): Tree = try { tree match {
case ClassDef(_, _, _, _) =>
checkCompanionNameClashes(tree.symbol)
val decls = tree.symbol.info.decls
@@ -181,6 +181,7 @@ abstract class SuperAccessors extends transform.Transform with transform.TypingT
super.transform(tree)
case Apply(fn, args) =>
+ assert(fn.tpe != null)
copy.Apply(tree, transform(fn), transformArgs(args, fn.tpe.paramTypes))
case Function(vparams, body) =>
withInvalidOwner {
@@ -188,6 +189,12 @@ abstract class SuperAccessors extends transform.Transform with transform.TypingT
}
case _ =>
super.transform(tree)
+ }} catch {
+ case ex : AssertionError =>
+ if (tree.symbol != null && tree.symbol != NoSymbol)
+ Console.println("TRANSFORM: " + tree.symbol.sourceFile)
+ Console.println("TREE: " + tree)
+ throw ex
}
override def atOwner[A](owner: Symbol)(trans: => A): A = {