diff options
author | Lukas Rytz <lukas.rytz@gmail.com> | 2015-05-24 09:04:52 +0200 |
---|---|---|
committer | Lukas Rytz <lukas.rytz@gmail.com> | 2015-05-25 13:40:43 +0200 |
commit | 53a274e3f1258bd7d26a72d4394108b2f4d04579 (patch) | |
tree | 1a5a39892d69ebe9a4be287b262a6ddc560cf93a | |
parent | 6372c71c7c6b3661b51c8dca85d7a241f0fa4813 (diff) | |
download | scala-53a274e3f1258bd7d26a72d4394108b2f4d04579.tar.gz scala-53a274e3f1258bd7d26a72d4394108b2f4d04579.tar.bz2 scala-53a274e3f1258bd7d26a72d4394108b2f4d04579.zip |
Fix wrong result in InstructionStackEffect for ATHROW, RETURN
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/analysis/InstructionStackEffect.scala | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/analysis/InstructionStackEffect.scala b/src/compiler/scala/tools/nsc/backend/jvm/analysis/InstructionStackEffect.scala index 3d6c53765e..56c8c2e4e3 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/analysis/InstructionStackEffect.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/analysis/InstructionStackEffect.scala @@ -196,9 +196,9 @@ object InstructionStackEffect { LRETURN | FRETURN | DRETURN | - ARETURN => (frame.getStackSize, 0) + ARETURN => (1, 0) // Frame.execute consumes one stack value - case RETURN => (frame.getStackSize, 0) + case RETURN => (0, 0) // Frame.execute does not change the stack case GETSTATIC => (0, 1) @@ -229,7 +229,7 @@ object InstructionStackEffect { ANEWARRAY | ARRAYLENGTH => (1, 1) - case ATHROW => (frame.getStackSize, 0) + case ATHROW => (1, 0) // Frame.execute consumes one stack value case CHECKCAST => (0, 0) |