summaryrefslogtreecommitdiff
path: root/vm_core.h
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-05-18 06:49:19 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-05-18 06:49:19 +0000
commit3e8bba2fc1138fb072935b3f935810a78ce71a8c (patch)
tree9bc13b27587882e93e7af41eb7359883e856b8cc /vm_core.h
parent8a28e97ae999bf26fc59651db581ca90a9206eba (diff)
vm_core.h: move jmpbuf between tag and prev
* vm_core.h (rb_vm_tag): move jmpbuf between tag and prev so ensure to be accessible. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_core.h')
-rw-r--r--vm_core.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/vm_core.h b/vm_core.h
index 8cf3695554..71ebf73926 100644
--- a/vm_core.h
+++ b/vm_core.h
@@ -464,10 +464,14 @@ enum rb_thread_status {
typedef RUBY_JMP_BUF rb_jmpbuf_t;
+/*
+ the members which are written in TH_PUSH_TAG() should be placed at
+ the beginning and the end, so that entire region is accessible.
+*/
struct rb_vm_tag {
- rb_jmpbuf_t buf;
VALUE tag;
VALUE retval;
+ rb_jmpbuf_t buf;
struct rb_vm_tag *prev;
};