summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@epfl.ch>2011-12-16 09:46:42 +0100
committerAdriaan Moors <adriaanm@gmail.com>2011-12-24 17:37:22 +0100
commitc977904aa9066f7f0a888bd3658ba42c60fca47b (patch)
treecf086966a50241c22899123479dca4a98390d490
parentd4182c7f1473c8c831644da1a473e829345ce5a4 (diff)
downloadscala-c977904aa9066f7f0a888bd3658ba42c60fca47b.tar.gz
scala-c977904aa9066f7f0a888bd3658ba42c60fca47b.tar.bz2
scala-c977904aa9066f7f0a888bd3658ba42c60fca47b.zip
[vpm] lambdalift becomes less NSDNHO-prone
made lambdalift complaint more useful
-rw-r--r--src/compiler/scala/tools/nsc/transform/LambdaLift.scala1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/LambdaLift.scala b/src/compiler/scala/tools/nsc/transform/LambdaLift.scala
index 443a6140dc..2310eae9bb 100644
--- a/src/compiler/scala/tools/nsc/transform/LambdaLift.scala
+++ b/src/compiler/scala/tools/nsc/transform/LambdaLift.scala
@@ -228,6 +228,7 @@ abstract class LambdaLift extends InfoTransform {
private def proxy(sym: Symbol) = {
def searchIn(enclosure: Symbol): Symbol = {
+ if (enclosure eq NoSymbol) throw new IllegalArgumentException("Could not find proxy for "+ sym.defString +" in "+ sym.ownerChain +" (currentOwner= "+ currentOwner +" )")
debuglog("searching for " + sym + "(" + sym.owner + ") in " + enclosure + " " + enclosure.logicallyEnclosingMember)
val ps = (proxies get enclosure.logicallyEnclosingMember).toList.flatten filter (_.name == sym.name)