diff options
author | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-07-25 17:47:56 +0200 |
---|---|---|
committer | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-07-25 17:47:56 +0200 |
commit | e89fe92ac34b111ba887a79ac788552135c7cce0 (patch) | |
tree | 6928d27ce37c81a925a05b6862730d7125357fe3 /src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala | |
parent | 33b847b7f56cbc5add74692385a9e0f5ad41c7a6 (diff) | |
parent | a8c88b194eefd5d4d55361b934faa0ebd954ef08 (diff) | |
download | scala-e89fe92ac34b111ba887a79ac788552135c7cce0.tar.gz scala-e89fe92ac34b111ba887a79ac788552135c7cce0.tar.bz2 scala-e89fe92ac34b111ba887a79ac788552135c7cce0.zip |
Merge pull request #3826 from lrytz/opt/refactorTracked
Assortiment of cleanups and comments around the backend
Diffstat (limited to 'src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala index b0fb3069c1..2392033760 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala @@ -381,6 +381,7 @@ abstract class GenASM extends SubComponent with BytecodeWriters with GenJVMASM { case "jvm-1.5" => asm.Opcodes.V1_5 case "jvm-1.6" => asm.Opcodes.V1_6 case "jvm-1.7" => asm.Opcodes.V1_7 + case "jvm-1.8" => asm.Opcodes.V1_8 } private val majorVersion: Int = (classfileVersion & 0xFF) @@ -636,6 +637,9 @@ abstract class GenASM extends SubComponent with BytecodeWriters with GenJVMASM { innerSym.rawname + innerSym.moduleSuffix // add inner classes which might not have been referenced yet + // TODO @lry according to the spec, all nested classes should be added, also local and + // anonymous. This seems to add only member classes - or not? it's exitingErasure, so maybe + // local / anonymous classes have been lifted by lambdalift. are they in the "decls" though? exitingErasure { for (sym <- List(csym, csym.linkedClassOfClass); m <- sym.info.decls.map(innerClassSymbolFor) if m.isClass) innerClassBuffer += m |