diff options
author | schinz <schinz@epfl.ch> | 2003-03-12 14:18:22 +0000 |
---|---|---|
committer | schinz <schinz@epfl.ch> | 2003-03-12 14:18:22 +0000 |
commit | 7254471b0b3aeadb35df99b61f5a00e18abc00ae (patch) | |
tree | a66d048ca742fdfb8e2530bf9bbb394ef58b862e /sources/scalac/backend | |
parent | fafd175ca9a4acf6c06cccfdd59b11cfdc545bc4 (diff) | |
download | scala-7254471b0b3aeadb35df99b61f5a00e18abc00ae.tar.gz scala-7254471b0b3aeadb35df99b61f5a00e18abc00ae.tar.bz2 scala-7254471b0b3aeadb35df99b61f5a00e18abc00ae.zip |
- do not generate Java-compatible class for mod...
- do not generate Java-compatible class for modules when a class with
the same name as the module exists
Diffstat (limited to 'sources/scalac/backend')
-rw-r--r-- | sources/scalac/backend/jvm/GenJVM.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sources/scalac/backend/jvm/GenJVM.java b/sources/scalac/backend/jvm/GenJVM.java index ba38f31e45..1454c7afaa 100644 --- a/sources/scalac/backend/jvm/GenJVM.java +++ b/sources/scalac/backend/jvm/GenJVM.java @@ -1188,9 +1188,13 @@ class JVMGenerator { updateClassContext(); } + protected HashSet seenClasses = new HashSet(); protected void leaveClass(Symbol cSym) { - if (Modifiers.Helper.isModClass(cSym.flags)) - dumpModuleMainClass(currClass); + if (Modifiers.Helper.isModClass(cSym.flags)) { + if (!seenClasses.contains(cSym.fullName())) + dumpModuleMainClass(currClass); + } else + seenClasses.add(cSym.fullName()); addScalaAttr(currClass); JavaClass cls = currClass.getJavaClass(); |