summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala
diff options
context:
space:
mode:
authorGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2014-07-25 17:47:56 +0200
committerGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2014-07-25 17:47:56 +0200
commite89fe92ac34b111ba887a79ac788552135c7cce0 (patch)
tree6928d27ce37c81a925a05b6862730d7125357fe3 /src/compiler/scala/tools/nsc/backend/jvm/GenASM.scala
parent33b847b7f56cbc5add74692385a9e0f5ad41c7a6 (diff)
parenta8c88b194eefd5d4d55361b934faa0ebd954ef08 (diff)
downloadscala-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.scala4
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