diff options
author | michelou <michelou@epfl.ch> | 2008-04-22 16:05:59 +0000 |
---|---|---|
committer | michelou <michelou@epfl.ch> | 2008-04-22 16:05:59 +0000 |
commit | 9a78b52ba3141c8893641919ec1a3c541e3c6330 (patch) | |
tree | 6ac456963ba9db2792951cbe696e0a12bbdd3018 /src/compiler/scala/tools/nsc/typechecker/Namers.scala | |
parent | fbe6aa9fc7e12d7fb17b29f1441c2c7e0489ceb1 (diff) | |
download | scala-9a78b52ba3141c8893641919ec1a3c541e3c6330.tar.gz scala-9a78b52ba3141c8893641919ec1a3c541e3c6330.tar.bz2 scala-9a78b52ba3141c8893641919ec1a3c541e3c6330.zip |
added test for outer in Namers.scala
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Namers.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Namers.scala | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Namers.scala b/src/compiler/scala/tools/nsc/typechecker/Namers.scala index 6228429f98..dcaea1041b 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Namers.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Namers.scala @@ -325,7 +325,12 @@ trait Namers { self: Analyzer => finish case ValDef(mods, name, tp, rhs) => - if (context.owner.isClass && (mods.flags & (PRIVATE | LOCAL)) != (PRIVATE | LOCAL) + if (name.endsWith(nme.OUTER, nme.OUTER.length)) { // SM + tree.symbol = enterInScope(owner.newValue(tree.pos, name) + .setFlag(mods.flags)) + finish + } + else if (context.owner.isClass && (mods.flags & (PRIVATE | LOCAL)) != (PRIVATE | LOCAL) || (mods.flags & LAZY) != 0) { val accflags: Long = ACCESSOR | (if ((mods.flags & MUTABLE) != 0) mods.flags & ~MUTABLE & ~PRESUPER |