summaryrefslogtreecommitdiff
path: root/src/compiler
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2009-12-21 19:41:51 +0000
committerMartin Odersky <odersky@gmail.com>2009-12-21 19:41:51 +0000
commitc163877ba88558c9f16393d3518b464c21c61ae5 (patch)
tree85a622e759a5a6e2b99fa58b2a7884ed2e8545c4 /src/compiler
parent169b05aa40915fd805d29a40f95877402320cca3 (diff)
downloadscala-c163877ba88558c9f16393d3518b464c21c61ae5.tar.gz
scala-c163877ba88558c9f16393d3518b464c21c61ae5.tar.bz2
scala-c163877ba88558c9f16393d3518b464c21c61ae5.zip
Closed #2709.
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/scala/tools/nsc/interactive/RichCompilationUnits.scala1
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/Contexts.scala3
2 files changed, 3 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/interactive/RichCompilationUnits.scala b/src/compiler/scala/tools/nsc/interactive/RichCompilationUnits.scala
index 5c71ab4f73..40f9209c1b 100644
--- a/src/compiler/scala/tools/nsc/interactive/RichCompilationUnits.scala
+++ b/src/compiler/scala/tools/nsc/interactive/RichCompilationUnits.scala
@@ -40,6 +40,5 @@ trait RichCompilationUnits { self: Global =>
def targetPos_=(p: Position) { _targetPos = p }
var contexts: Contexts = new Contexts
-
}
}
diff --git a/src/compiler/scala/tools/nsc/typechecker/Contexts.scala b/src/compiler/scala/tools/nsc/typechecker/Contexts.scala
index 99fb60ccf4..19eb2c90af 100644
--- a/src/compiler/scala/tools/nsc/typechecker/Contexts.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/Contexts.scala
@@ -506,6 +506,9 @@ trait Contexts { self: Analyzer =>
} else if (imports != nextOuter.imports) {
assert(imports.tail == nextOuter.imports)
collectImplicitImports(imports.head)
+ } else if (owner.isPackageClass) {
+ // the corresponding package object may contain implicit members.
+ collectImplicits(owner.tpe.implicitMembers, owner.tpe)
} else List()
implicitsCache = if (newImplicits.isEmpty) nextOuter.implicitss
else newImplicits :: nextOuter.implicitss