summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/backend/icode/Checkers.scala
diff options
context:
space:
mode:
authorIulian Dragos <jaguarul@gmail.com>2007-11-13 08:13:05 +0000
committerIulian Dragos <jaguarul@gmail.com>2007-11-13 08:13:05 +0000
commit5438ab13a944a0721816012a9be99a9d3141d7a9 (patch)
tree9034f3358b86b18fd04945d2e0c4618041969e14 /src/compiler/scala/tools/nsc/backend/icode/Checkers.scala
parent16f241cfe73244de1b8600318c104f81596b3afa (diff)
downloadscala-5438ab13a944a0721816012a9be99a9d3141d7a9.tar.gz
scala-5438ab13a944a0721816012a9be99a9d3141d7a9.tar.bz2
scala-5438ab13a944a0721816012a9be99a9d3141d7a9.zip
Fixed minor bugs in icode.
Diffstat (limited to 'src/compiler/scala/tools/nsc/backend/icode/Checkers.scala')
-rw-r--r--src/compiler/scala/tools/nsc/backend/icode/Checkers.scala10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/icode/Checkers.scala b/src/compiler/scala/tools/nsc/backend/icode/Checkers.scala
index 0c467f1279..da80fe148a 100644
--- a/src/compiler/scala/tools/nsc/backend/icode/Checkers.scala
+++ b/src/compiler/scala/tools/nsc/backend/icode/Checkers.scala
@@ -537,6 +537,16 @@ abstract class Checkers {
checkBool(stack.pop.isReferenceType,
"MONITOR_EXIT on non-reference type")
+ case BOX(kind) =>
+ checkStack(1)
+ checkType(stack.pop, kind)
+ stack.push(icodes.AnyRefReference)
+
+ case UNBOX(kind) =>
+ checkStack(1)
+ stack.pop
+ stack.push(kind)
+
case _ =>
abort("Unknown instruction: " + instr)
}