summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Vigdorchik <eugene.vigdorchik@gmail.com>2012-10-04 12:09:36 +0400
committerEugene Vigdorchik <eugene.vigdorchik@gmail.com>2012-10-04 12:09:36 +0400
commitca89fb9221b4b96fca9d72292dbe46b4bb0ce326 (patch)
tree746622191242ffbe69269a1d32e1e238356f6bb1
parentd85224b3a1b0884172ee6985b643a2dda49094d6 (diff)
downloadscala-ca89fb9221b4b96fca9d72292dbe46b4bb0ce326.tar.gz
scala-ca89fb9221b4b96fca9d72292dbe46b4bb0ce326.tar.bz2
scala-ca89fb9221b4b96fca9d72292dbe46b4bb0ce326.zip
Fix broken links with names that need to be encoded when querying the owner.
-rw-r--r--src/compiler/scala/tools/nsc/doc/model/MemberLookup.scala2
-rw-r--r--test/scaladoc/resources/links.scala4
-rw-r--r--test/scaladoc/run/links.scala4
3 files changed, 6 insertions, 4 deletions
diff --git a/src/compiler/scala/tools/nsc/doc/model/MemberLookup.scala b/src/compiler/scala/tools/nsc/doc/model/MemberLookup.scala
index 7ab73cceff..7f260bb90a 100644
--- a/src/compiler/scala/tools/nsc/doc/model/MemberLookup.scala
+++ b/src/compiler/scala/tools/nsc/doc/model/MemberLookup.scala
@@ -173,7 +173,7 @@ trait MemberLookup {
// and removing NoType classes
def cleanupBogusClasses(syms: List[Symbol]) = { syms.filter(_.info != NoType) }
- def syms(name: Name) = container.info.nonPrivateMember(name).alternatives
+ def syms(name: Name) = container.info.nonPrivateMember(name.encodedName).alternatives
def termSyms = cleanupBogusClasses(syms(newTermName(name)))
def typeSyms = cleanupBogusClasses(syms(newTypeName(name)))
diff --git a/test/scaladoc/resources/links.scala b/test/scaladoc/resources/links.scala
index 09a52a4334..12f03a10d8 100644
--- a/test/scaladoc/resources/links.scala
+++ b/test/scaladoc/resources/links.scala
@@ -22,6 +22,7 @@ package scala.test.scaladoc.links {
object Target {
type T = Int => Int
type S = Int
+ type ::[X] = scala.collection.immutable.::[X]
class C
def foo(i: Int) = 2
def foo(z: String) = 3
@@ -43,6 +44,7 @@ package scala.test.scaladoc.links {
* - [[[[Target!.foo[A[_[_]]]* trait Target -> def foo with 3 nested tparams]]]] (should exercise nested parens)
* - [[Target$.T object Target -> type T]]
* - [[Target$.S object Target -> type S]]
+ * - [[Target$.:: object Target -> type ::]]
* - [[Target$.foo(z:Str* object Target -> def foo]]
* - [[Target$.bar object Target -> def bar]]
* - [[[[Target$.foo[A[_[_]]]* trait Target -> def foo with 3 nested tparams]]]] (should exercise nested parens)
@@ -59,4 +61,4 @@ package scala.test.scaladoc.links {
def localMethod = 3
}
}
-class ImOutside \ No newline at end of file
+class ImOutside
diff --git a/test/scaladoc/run/links.scala b/test/scaladoc/run/links.scala
index de359539cf..ca8f3e2723 100644
--- a/test/scaladoc/run/links.scala
+++ b/test/scaladoc/run/links.scala
@@ -22,7 +22,7 @@ object Test extends ScaladocModelTest {
val memberLinks = countLinks(TEST.comment.get, _.link.isInstanceOf[LinkToMember])
val templateLinks = countLinks(TEST.comment.get, _.link.isInstanceOf[LinkToTpl])
- assert(memberLinks == 15, memberLinks + " == 15 (the member links in object TEST)")
+ assert(memberLinks == 16, memberLinks + " == 16 (the member links in object TEST)")
assert(templateLinks == 5, templateLinks + " == 5 (the template links in object TEST)")
}
-} \ No newline at end of file
+}