summaryrefslogtreecommitdiff
path: root/compile.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-07-20 00:08:23 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-07-20 00:08:23 +0000
commit1b8ff4f799ba47d77b80a48e7504f49ddfd35239 (patch)
treeece7107088ba1e74eeb8fb163ccfa87f532b3d18 /compile.c
parent46b70c8da5e3a355f20ebb3f90441336cca73cf1 (diff)
ruby_vm_throw_flags
* vm_core.h (ruby_vm_throw_flags): constants for throw. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'compile.c')
-rw-r--r--compile.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/compile.c b/compile.c
index ba5fae3..a61c586 100644
--- a/compile.c
+++ b/compile.c
@@ -3725,11 +3725,11 @@ iseq_compile_each(rb_iseq_t *iseq, LINK_ANCHOR *ret, NODE * node, int poped)
level++;
if (ip->compile_data->redo_label != 0) {
- level = 0x8000;
+ level = VM_THROW_NO_ESCAPE_FLAG;
goto break_by_insn;
}
else if (ip->type == ISEQ_TYPE_BLOCK) {
- level <<= 16;
+ level <<= VM_THROW_LEVEL_SHIFT;
goto break_by_insn;
}
else if (ip->type == ISEQ_TYPE_EVAL) {
@@ -3785,7 +3785,7 @@ iseq_compile_each(rb_iseq_t *iseq, LINK_ANCHOR *ret, NODE * node, int poped)
break;
}
- level = 0x8000;
+ level = VM_THROW_NO_ESCAPE_FLAG;
if (ip->compile_data->redo_label != 0) {
/* while loop */
break;
@@ -3846,7 +3846,7 @@ iseq_compile_each(rb_iseq_t *iseq, LINK_ANCHOR *ret, NODE * node, int poped)
}
else {
const rb_iseq_t *ip = iseq;
- unsigned long level = 0x8000;
+ const unsigned long level = VM_THROW_NO_ESCAPE_FLAG;
while (ip) {
if (!ip->compile_data) {