Attempt to fix #5230. Review by burmako.

git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@26085 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
This commit is contained in:
odersky 2011-11-29 12:06:30 +00:00
parent e223616e4b
commit 78a78d9942
1 changed files with 4 additions and 2 deletions

View File

@ -472,8 +472,10 @@ abstract class LiftCode extends Transform with TypingTransformers {
reifyFree(tree)
case Ident(_) if !(boundSyms contains tree.symbol) =>
reifyFree(tree)
case TypeTree() if (tree.tpe != null) =>
mirrorCall("TypeTree", reifyType(tree.tpe))
case tt: TypeTree if (tt.tpe != null) =>
if (!(boundSyms exists (tt.tpe contains _))) mirrorCall("TypeTree", reifyType(tt.tpe))
else if (tt.original != null) reify(tt.original)
else TypeTree()
case _ =>
if (tree.isDef)
boundSyms += tree.symbol