diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2007-02-09 22:46:09 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2007-02-09 22:46:09 +0000 |
commit | 110a1d0cde97e928bbe8478414fb6e41e818ce81 (patch) | |
tree | 65bd9aff970f75ca5bb9d6c8516f8026d9ce0211 /src/compiler/scala/tools/nsc/backend/icode/Opcodes.scala | |
parent | c470f8cca0fc646ba2f950302b9a2dfc515bff74 (diff) | |
download | scala-110a1d0cde97e928bbe8478414fb6e41e818ce81.tar.gz scala-110a1d0cde97e928bbe8478414fb6e41e818ce81.tar.bz2 scala-110a1d0cde97e928bbe8478414fb6e41e818ce81.zip |
Fixed local variable table scoping
Diffstat (limited to 'src/compiler/scala/tools/nsc/backend/icode/Opcodes.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/icode/Opcodes.scala | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/icode/Opcodes.scala b/src/compiler/scala/tools/nsc/backend/icode/Opcodes.scala index f6bed76977..e50bc65cc4 100644 --- a/src/compiler/scala/tools/nsc/backend/icode/Opcodes.scala +++ b/src/compiler/scala/tools/nsc/backend/icode/Opcodes.scala @@ -510,6 +510,26 @@ trait Opcodes requires ICodes { override def produced = 0; } + /** A local variable becomes visible at this point in code. + * Used only for generating precise local variable tables as + * debugging information. + */ + case class SCOPE_ENTER(lv: Local) extends Instruction { + override def toString(): String = "SCOPE_ENTER " + lv + override def consumed = 0 + override def produced = 0 + } + + /** A local variable leaves its scope at this point in code. + * Used only for generating precise local variable tables as + * debugging information. + */ + case class SCOPE_EXIT(lv: Local) extends Instruction { + override def toString(): String = "SCOPE_EXIT " + lv + override def consumed = 0 + override def produced = 0 + } + /** This class represents a method invocation style. */ sealed abstract class InvokeStyle { |