summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/interactive/Global.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler/scala/tools/nsc/interactive/Global.scala')
-rwxr-xr-xsrc/compiler/scala/tools/nsc/interactive/Global.scala4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/interactive/Global.scala b/src/compiler/scala/tools/nsc/interactive/Global.scala
index ee8865dec5..51ba19951e 100755
--- a/src/compiler/scala/tools/nsc/interactive/Global.scala
+++ b/src/compiler/scala/tools/nsc/interactive/Global.scala
@@ -319,7 +319,9 @@ self =>
val decls = tree.tpe.decls.toList map (member(_, false))
val inherited = tree.tpe.members.toList diff decls map (member(_, true))
val implicits = applicableViews(tree, context) flatMap implicitMembers
- decls ::: inherited ::: implicits
+ def isVisible(m: Member) =
+ !(decls exists (_.shadows(m))) && !(inherited exists (_.shadows(m)))
+ decls ::: inherited ::: (implicits filter isVisible)
case None =>
throw new FatalError("no context found for "+pos)
}