diff options
author | Martin Odersky <odersky@gmail.com> | 2011-04-21 22:41:20 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2011-04-21 22:41:20 +0000 |
commit | efd6b46e74c4b3d593feb0d14e5c698bb8ddfaed (patch) | |
tree | 8f593c9fa4b34d405c4aa5c347a5f9b2245d6ad3 /src | |
parent | 7c456cde62f3eb8ad4de21463d4df316c040d52f (diff) | |
download | scala-efd6b46e74c4b3d593feb0d14e5c698bb8ddfaed.tar.gz scala-efd6b46e74c4b3d593feb0d14e5c698bb8ddfaed.tar.bz2 scala-efd6b46e74c4b3d593feb0d14e5c698bb8ddfaed.zip |
Some more tweaks to the bridge scheme.
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/LambdaLift.scala | 2 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala | 5 |
2 files changed, 2 insertions, 5 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/LambdaLift.scala b/src/compiler/scala/tools/nsc/transform/LambdaLift.scala index 98b6110f7f..39b47d1e08 100644 --- a/src/compiler/scala/tools/nsc/transform/LambdaLift.scala +++ b/src/compiler/scala/tools/nsc/transform/LambdaLift.scala @@ -402,6 +402,8 @@ abstract class LambdaLift extends InfoTransform { val tree1 = addFreeParams(tree, sym) if (sym.isLocal) liftDef(tree1) else tree1 case DefDef(_, _, _, _, _, _) => + if (sym.hasAnnotation(definitions.BridgeClass)) + sym.setFlag(BRIDGE) val tree1 = addFreeParams(tree, sym) if (sym.isLocal) liftDef(tree1) else tree1 case ValDef(mods, name, tpt, rhs) => diff --git a/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala b/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala index 280d1b6019..7bdca6dbab 100644 --- a/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala +++ b/src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala @@ -186,11 +186,6 @@ abstract class SuperAccessors extends transform.Transform with transform.TypingT accDefs = accDefs.tail; treeCopy.Template(tree, parents, self, ownAccDefs.toList ::: body1) - case DefDef(_, _, _, _, _, _) if sym.hasAnnotation(definitions.BridgeClass) => - sym.setFlag(BRIDGE) - sym.removeAnnotation(definitions.BridgeClass) - super.transform(tree) - case TypeApply(sel @ Select(This(_), name), args) => mayNeedProtectedAccessor(sel, args, false) |