diff options
Diffstat (limited to 'src/compiler')
-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 |