summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2005-02-02 10:16:06 +0000
committerpaltherr <paltherr@epfl.ch>2005-02-02 10:16:06 +0000
commit160c05843df45d5264bc00be0d6e2c198e10e7e4 (patch)
treea4c162aa96cfd1bf61a295174077c8ca9084e723
parent2ce58118dd0cf943f34017ff52ec809f4b3bd6a5 (diff)
downloadscala-160c05843df45d5264bc00be0d6e2c198e10e7e4.tar.gz
scala-160c05843df45d5264bc00be0d6e2c198e10e7e4.tar.bz2
scala-160c05843df45d5264bc00be0d6e2c198e10e7e4.zip
- Added code to initialize the origin of analyz...
- Added code to initialize the origin of analyzed symbols
-rw-r--r--sources/scala/tools/scalac/typechecker/Analyzer.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/sources/scala/tools/scalac/typechecker/Analyzer.scala b/sources/scala/tools/scalac/typechecker/Analyzer.scala
index 6c48cff25f..405a8e6fac 100644
--- a/sources/scala/tools/scalac/typechecker/Analyzer.scala
+++ b/sources/scala/tools/scalac/typechecker/Analyzer.scala
@@ -903,6 +903,7 @@ class Analyzer(global: scalac_Global, descr: AnalyzerPhase) extends Transformer(
context.owner.newAnonymousClass(templ.pos, name)
else
classSymbol(tree.pos, name, owner, mods, context.scope);
+ clazz.setOrigin(SymbolOrigin.ScalaUnit(unit));
if (!clazz.primaryConstructor().isInitialized())
clazz.primaryConstructor().setInfo(new LazyTreeType(tree));
if ((mods & CASE) != 0) {
@@ -921,6 +922,8 @@ class Analyzer(global: scalac_Global, descr: AnalyzerPhase) extends Transformer(
case Tree.ModuleDef(mods, name, _, _) =>
var modul = moduleSymbol(tree.pos, name, owner, mods, context.scope);
+ if (!modul.isPackage() || modul.getOrigin() == SymbolOrigin.Unknown)
+ modul.moduleClass().setOrigin(SymbolOrigin.ScalaUnit(unit));
val clazz: Symbol = modul.moduleClass();
if (!clazz.isInitialized()) {
val info = new LazyTreeType(tree);