From 3ab5889983e7a86540b9f162dc2fd3653867eccf Mon Sep 17 00:00:00 2001 From: Iulian Dragos Date: Thu, 1 Mar 2007 08:53:28 +0000 Subject: Removed useless InnerClasses attribute when it ... Removed useless InnerClasses attribute when it is empty. Seems to fix IBM performance issues. --- src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'src') 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 = -- cgit v1.2.3