summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/typechecker/Typers.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2011-09-23 16:21:16 +0000
committerMartin Odersky <odersky@gmail.com>2011-09-23 16:21:16 +0000
commit2b699c3fdb8586051fa20cc1e37d4d40a7418605 (patch)
tree31b1605a95eb096586256089b7bdd1cfcf5b55c3 /src/compiler/scala/tools/nsc/typechecker/Typers.scala
parent7bfdac0b73c28109b5d3130783feaca4a7c06100 (diff)
downloadscala-2b699c3fdb8586051fa20cc1e37d4d40a7418605.tar.gz
scala-2b699c3fdb8586051fa20cc1e37d4d40a7418605.tar.bz2
scala-2b699c3fdb8586051fa20cc1e37d4d40a7418605.zip
Handling Freevars in Importers and discovering ...
Handling Freevars in Importers and discovering whole new classes of errors in Liftcode.
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Typers.scala')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/Typers.scala13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Typers.scala b/src/compiler/scala/tools/nsc/typechecker/Typers.scala
index a1343fb7d7..0f6f3c93e1 100644
--- a/src/compiler/scala/tools/nsc/typechecker/Typers.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/Typers.scala
@@ -3683,8 +3683,10 @@ trait Typers extends Modes with Adaptations {
return makeErrorTree
if (!qual.tpe.widen.isErroneous) {
- val lastTry = missingHook(qual.tpe.typeSymbol, name)
- if (lastTry != NoSymbol) return typed1(tree setSymbol lastTry, mode, pt)
+ if ((mode & QUALmode) != 0) {
+ val lastTry = missingHook(qual.tpe.typeSymbol, name)
+ if (lastTry != NoSymbol) return typed1(tree setSymbol lastTry, mode, pt)
+ }
notAMemberError(tree.pos, qual, name)
}
@@ -3880,9 +3882,10 @@ trait Typers extends Modes with Adaptations {
else if (settings.exposeEmptyPackage.value && checkEmptyPackage())
log("Allowing empty package member " + name + " due to settings.")
else {
- val lastTry = missingHook(RootClass, name)
- if (lastTry != NoSymbol) return typed1(tree setSymbol lastTry, mode, pt)
-
+ if ((mode & QUALmode) != 0) {
+ val lastTry = missingHook(RootClass, name)
+ if (lastTry != NoSymbol) return typed1(tree setSymbol lastTry, mode, pt)
+ }
if (settings.debug.value) {
log(context.imports)//debug
}