diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2009-07-30 14:53:36 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2009-07-30 14:53:36 +0000 |
commit | 8f1cf06e016b278900d20880ed3aed93cc7342b8 (patch) | |
tree | abfc3e1c8ae39a919f15d3af66e40e059716610e | |
parent | b9bec1c70879297e41e9c0d2aafdf36c7e571c96 (diff) | |
download | scala-8f1cf06e016b278900d20880ed3aed93cc7342b8.tar.gz scala-8f1cf06e016b278900d20880ed3aed93cc7342b8.tar.bz2 scala-8f1cf06e016b278900d20880ed3aed93cc7342b8.zip |
Fixed problem when compileLate was calling genjvm.
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala | 9 |
1 files changed, 5 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 cf9be28042..9097b8b6b1 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala @@ -38,8 +38,9 @@ abstract class GenJVM extends SubComponent { /** JVM code generation phase */ - class JvmPhase(prev: Phase) extends StdPhase(prev) { + class JvmPhase(prev: Phase) extends ICodePhase(prev) { + def name = phaseName override def erasedTypes = true object codeGenerator extends BytecodeGenerator @@ -48,11 +49,11 @@ abstract class GenJVM extends SubComponent { if (settings.Xdce.value) icodes.classes.retain { (sym: Symbol, cls: IClass) => !inliner.isClosureClass(sym) || deadCode.liveClosures(sym) } - classes.values foreach codeGenerator.genClass + classes.values foreach apply } - override def apply(unit: CompilationUnit) { - abort("JVM works on icode classes, not on compilation units!") + override def apply(cls: IClass) { + codeGenerator.genClass(cls) } } |