diff options
author | paltherr <paltherr@epfl.ch> | 2004-03-02 12:22:58 +0000 |
---|---|---|
committer | paltherr <paltherr@epfl.ch> | 2004-03-02 12:22:58 +0000 |
commit | b3c7876018a15635ac9ba931a711e8aa8d798422 (patch) | |
tree | 8f7181605a143070df21a68f1f81bd8d66204d59 | |
parent | 3610314d5c8dd6359d2a052db29b22045383075a (diff) | |
download | scala-b3c7876018a15635ac9ba931a711e8aa8d798422.tar.gz scala-b3c7876018a15635ac9ba931a711e8aa8d798422.tar.bz2 scala-b3c7876018a15635ac9ba931a711e8aa8d798422.zip |
- Fixed case Ident
-rw-r--r-- | sources/scalac/transformer/LambdaLift.java | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/sources/scalac/transformer/LambdaLift.java b/sources/scalac/transformer/LambdaLift.java index b580812ecb..4cf2eb0e44 100644 --- a/sources/scalac/transformer/LambdaLift.java +++ b/sources/scalac/transformer/LambdaLift.java @@ -480,19 +480,13 @@ public class LambdaLift extends OwnerTransformer return copy.Apply( tree, fn1, addFreeArgs(tree.pos, get(free.fvs, fsym), args1, false)); - case Ident(Name name): + case Ident(_): Symbol sym = tree.symbol(); if (isLocal(sym, currentOwner) && (sym.kind == TYPE || (sym.kind == VAL && !sym.isMethod()))) { sym = descr.proxy(sym, currentOwner); } - Tree tree1 = (sym.owner().kind == CLASS) - ? gen.mkLocalRef(tree.pos, sym) - : copy.Ident(tree, sym).setType(sym.nextType()); - if (name != sym.name) { - if (tree1 instanceof Ident) ((Ident)tree1).name = sym.name; - else ((Select)tree1).selector = sym.name; - } + Tree tree1 = gen.mkLocalRef(tree.pos, sym); if ((sym.flags & CAPTURED) != 0) return gen.Select(tree1, definitions.REF_ELEM()); else return tree1; |