diff options
author | Martin Odersky <odersky@gmail.com> | 2010-10-16 14:47:44 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2010-10-16 14:47:44 +0000 |
commit | e5cfe47a191bd0e5aaac07f8910dd0916b060d26 (patch) | |
tree | 8afc37c43e1d61c3e4a03bd38254f841a7bc1919 /src/compiler/scala/tools/nsc/typechecker/Namers.scala | |
parent | 9adc6d22c960c1b20c7cff88091c9aaecaaf9053 (diff) | |
download | scala-e5cfe47a191bd0e5aaac07f8910dd0916b060d26.tar.gz scala-e5cfe47a191bd0e5aaac07f8910dd0916b060d26.tar.bz2 scala-e5cfe47a191bd0e5aaac07f8910dd0916b060d26.zip |
Closes #3614.
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, 4 insertions, 3 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Namers.scala b/src/compiler/scala/tools/nsc/typechecker/Namers.scala index 70d326ceb7..bf790301f5 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Namers.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Namers.scala @@ -278,6 +278,7 @@ trait Namers { self: Analyzer => /** Replace type parameters with their TypeSkolems, which can later be deskolemized to the original type param * (a skolem is a representation of a bound variable when viewed inside its scope) + * !!!Adriaan: this does not work for hk types. */ def skolemize(tparams: List[TypeDef]) { val tskolems = newTypeSkolems(tparams map (_.symbol)) @@ -378,7 +379,7 @@ trait Namers { self: Analyzer => case vd @ ValDef(mods, name, tp, rhs) => if ((!context.owner.isClass || (mods.flags & (PRIVATE | LOCAL | CASEACCESSOR)) == (PRIVATE | LOCAL) || - name.endsWith(nme.OUTER, nme.OUTER.length) || + name.startsWith(nme.OUTER) || context.unit.isJava) && !mods.isLazy) { val vsym = owner.newValue(tree.pos, name).setFlag(mods.flags); @@ -1223,13 +1224,13 @@ trait Namers { self: Analyzer => checkSelectors(rest) case Nil => } - checkSelectors(selectors) + transformed(tree) = treeCopy.Import(tree, expr1, selectors) ImportType(expr1) } } catch { case ex: TypeError => - //Console.println("caught " + ex + " in typeSig")//DEBUG + //Console.println("caught " + ex + " in typeSig") typer.reportTypeError(tree.pos, ex) ErrorType } |