diff options
author | Martin Odersky <odersky@gmail.com> | 2009-12-21 19:41:51 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2009-12-21 19:41:51 +0000 |
commit | c163877ba88558c9f16393d3518b464c21c61ae5 (patch) | |
tree | 85a622e759a5a6e2b99fa58b2a7884ed2e8545c4 | |
parent | 169b05aa40915fd805d29a40f95877402320cca3 (diff) | |
download | scala-c163877ba88558c9f16393d3518b464c21c61ae5.tar.gz scala-c163877ba88558c9f16393d3518b464c21c61ae5.tar.bz2 scala-c163877ba88558c9f16393d3518b464c21c61ae5.zip |
Closed #2709.
-rw-r--r-- | src/compiler/scala/tools/nsc/interactive/RichCompilationUnits.scala | 1 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Contexts.scala | 3 |
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 |