summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIulian Dragos <jaguarul@gmail.com>2006-03-17 14:52:31 +0000
committerIulian Dragos <jaguarul@gmail.com>2006-03-17 14:52:31 +0000
commitbf39025ae7fe355585bcdbcfcda3d47b1eb73fe3 (patch)
tree8264513655d20cbe194d084e13ac6f5247375194
parent42aa095ac47ad0490f2c743b3e93945166ac00c8 (diff)
downloadscala-bf39025ae7fe355585bcdbcfcda3d47b1eb73fe3.tar.gz
scala-bf39025ae7fe355585bcdbcfcda3d47b1eb73fe3.tar.bz2
scala-bf39025ae7fe355585bcdbcfcda3d47b1eb73fe3.zip
Fixed class -> object resident bug.
-rw-r--r--src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
index 379dc897c8..d4ad144c3a 100644
--- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
+++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
@@ -150,10 +150,16 @@ abstract class GenJVM extends SubComponent {
addModuleInstanceField;
addStaticInit(jclass);
- if (c.symbol.linkedClass == NoSymbol && isTopLevelModule(c.symbol))
- dumpMirrorClass;
- else
- log("No mirror class for module with linked class: " + c.symbol.fullNameString);
+ if (isTopLevelModule(c.symbol)) {
+ if (c.symbol.linkedClass == NoSymbol)
+ dumpMirrorClass;
+ else if (c.symbol.linkedClass != NoSymbol &&
+ !currentRun.compiles(c.symbol.linkedClass)) {
+ log("Dumping mirror class for " + c.symbol + " even though linked class exists, but is not compiled in this run");
+ dumpMirrorClass;
+ } else
+ log("No mirror class for module with linked class: " + c.symbol.fullNameString);
+ }
}
clasz.fields foreach genField;