summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIulian Dragos <jaguarul@gmail.com>2006-10-11 13:08:38 +0000
committerIulian Dragos <jaguarul@gmail.com>2006-10-11 13:08:38 +0000
commitdeb79f8dd804e54e2611e8aa71ef4f75172adc02 (patch)
tree311de5c44efdeec240f79b05b2f5d1c1c76acf45
parent1eb482f817e68dddd77eb69954701057cd798807 (diff)
downloadscala-deb79f8dd804e54e2611e8aa71ef4f75172adc02.tar.gz
scala-deb79f8dd804e54e2611e8aa71ef4f75172adc02.tar.bz2
scala-deb79f8dd804e54e2611e8aa71ef4f75172adc02.zip
Fixed the subclass relationship for inner classesv2.2.0
-rw-r--r--src/compiler/scala/tools/nsc/doc/DocGenerator.scala7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/doc/DocGenerator.scala b/src/compiler/scala/tools/nsc/doc/DocGenerator.scala
index 428df7fb1a..ce7287697f 100644
--- a/src/compiler/scala/tools/nsc/doc/DocGenerator.scala
+++ b/src/compiler/scala/tools/nsc/doc/DocGenerator.scala
@@ -588,6 +588,13 @@ abstract class DocGenerator extends Models {
for (val p <- cdef.symbol.info.parents) {
subclasses(p.symbol) = cdef.symbol :: subclasses(p.symbol)
}
+ import Flags._;
+ val mmbrs = cdef.symbol.info.findMember(nme.ANYNAME, MUTABLE | METHOD | BRIDGE | ACCESSOR, 0, false).alternatives;
+ for (val c <- mmbrs; c.isClass)
+ for (val p <- c.info.parents) {
+ subclasses(p.symbol) = c :: subclasses(p.symbol)
+ }
+
case _ =>
error("unknown: " + mmbr.tree + " " + mmbr.tree.getClass())
}