diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2008-01-17 17:09:38 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2008-01-17 17:09:38 +0000 |
commit | 3cad8b66e83a6c219a1ea70e7b8853b1cd0f6d51 (patch) | |
tree | aa612d9a2909a3d363cd666c57c8bf64c6adc77d | |
parent | 76c06b4661b70e934530a0debad34a5766ee43e9 (diff) | |
download | scala-3cad8b66e83a6c219a1ea70e7b8853b1cd0f6d51.tar.gz scala-3cad8b66e83a6c219a1ea70e7b8853b1cd0f6d51.tar.bz2 scala-3cad8b66e83a6c219a1ea70e7b8853b1cd0f6d51.zip |
Fixed ticket #106.
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/icode/BasicBlocks.scala | 1 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala | 10 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/icode/BasicBlocks.scala b/src/compiler/scala/tools/nsc/backend/icode/BasicBlocks.scala index bc5133e3a3..6aea42cf42 100644 --- a/src/compiler/scala/tools/nsc/backend/icode/BasicBlocks.scala +++ b/src/compiler/scala/tools/nsc/backend/icode/BasicBlocks.scala @@ -382,7 +382,6 @@ trait BasicBlocks { def isClosed = closed - // TODO: Take care of exception handlers! def successors : List[BasicBlock] = if (isEmpty) Nil else { var res = lastInstruction match { case JUMP (whereto) => List(whereto) diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala index 77286d5ddc..e107a449f8 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala @@ -439,11 +439,17 @@ abstract class GenJVM extends SubComponent { if (!innerClasses.isEmpty) { val innerClassesAttr = jclass.getInnerClasses(); - for (val innerSym <- innerClasses) + for (val innerSym <- innerClasses) { + var outerName = javaName(innerSym.rawowner) + // remove the trailing '$' + if (outerName.endsWith("$")) + outerName = outerName.substring(0, outerName.length - 1) + innerClassesAttr.addEntry(javaName(innerSym), - javaName(innerSym.rawowner), + outerName, innerSym.rawname.toString, javaFlags(innerSym)); + } } } |