diff options
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala | 14 |
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; |