diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2007-03-01 08:53:28 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2007-03-01 08:53:28 +0000 |
commit | 3ab5889983e7a86540b9f162dc2fd3653867eccf (patch) | |
tree | efeaab5113d1b15aeae27138c77133d549cec94a | |
parent | 2867ff421b7ce685f4a5fabc2dafbc12b760f3b1 (diff) | |
download | scala-3ab5889983e7a86540b9f162dc2fd3653867eccf.tar.gz scala-3ab5889983e7a86540b9f162dc2fd3653867eccf.tar.bz2 scala-3ab5889983e7a86540b9f162dc2fd3653867eccf.zip |
Removed useless InnerClasses attribute when it ...
Removed useless InnerClasses attribute when it is empty. Seems to fix
IBM performance issues.
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala index a5c78fdf41..dc0127bb37 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala @@ -348,12 +348,14 @@ abstract class GenJVM extends SubComponent { innerClasses = innerClasses + sym; } - val innerClassesAttr = jclass.getInnerClasses(); - for (val innerSym <- innerClasses) - innerClassesAttr.addEntry(javaName(innerSym), - javaName(innerSym.rawowner), - innerSym.rawname.toString(), - javaFlags(innerSym)); + if (!innerClasses.isEmpty) { + val innerClassesAttr = jclass.getInnerClasses(); + for (val innerSym <- innerClasses) + innerClassesAttr.addEntry(javaName(innerSym), + javaName(innerSym.rawowner), + innerSym.rawname.toString(), + javaFlags(innerSym)); + } } def isTopLevelModule(sym: Symbol): Boolean = |