summaryrefslogtreecommitdiff
path: root/src/reflect
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2013-02-04 02:45:56 -0800
committerEugene Burmako <xeno.by@gmail.com>2013-02-04 02:45:56 -0800
commit8d25d05e9bf848d763e7b657d9c7e96ea5cb8daf (patch)
treedcbfc7c323e13b1aeca47c8181a1623dc30faee1 /src/reflect
parent5aa225f3a57238ed90f8f60cf139043a23bd9f4f (diff)
parent2403d1ddcaa1bd76c1f376a32ec03a36d4dab48b (diff)
downloadscala-8d25d05e9bf848d763e7b657d9c7e96ea5cb8daf.tar.gz
scala-8d25d05e9bf848d763e7b657d9c7e96ea5cb8daf.tar.bz2
scala-8d25d05e9bf848d763e7b657d9c7e96ea5cb8daf.zip
Merge pull request #2039 from scalamacros/ticket/7046
SI-7046 reflection now auto-initializes knownDirectSubclasses
Diffstat (limited to 'src/reflect')
-rw-r--r--src/reflect/scala/reflect/internal/Symbols.scala6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/Symbols.scala b/src/reflect/scala/reflect/internal/Symbols.scala
index 5be479add0..72ad84edec 100644
--- a/src/reflect/scala/reflect/internal/Symbols.scala
+++ b/src/reflect/scala/reflect/internal/Symbols.scala
@@ -86,7 +86,11 @@ trait Symbols extends api.Symbols { self: SymbolTable =>
case n: TypeName => if (isClass) newClassSymbol(n, pos, newFlags) else newNonClassSymbol(n, pos, newFlags)
}
- def knownDirectSubclasses = children
+ def knownDirectSubclasses = {
+ if (!isCompilerUniverse && needsInitialize(isFlagRelated = false, mask = 0)) initialize
+ children
+ }
+
def baseClasses = info.baseClasses
def module = sourceModule
def thisPrefix: Type = thisType