diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-04-19 05:31:58 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-04-19 05:31:58 +0000 |
commit | 0d6f4f36682f5dd9d8932e931104ba40f0325ed0 (patch) | |
tree | 15cf4bf24244d6f071ec62804d68e1f70c082987 /ruby.h | |
parent | 7a45568809251ea36af73a070f75925feae973a7 (diff) |
* eval.c (ruby_cleanup): the order of local variables on stack is
undefined. should use outermost VALUE for ruby_init_stack.
* gc.c (rb_stack_growup_p): returns stack grows up.
* gc.c (Init_stack, ruby_init_stack): allows volatile pointer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby.h')
-rw-r--r-- | ruby.h | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -594,14 +594,14 @@ NORETURN(void rb_throw _((const char*,VALUE))); VALUE rb_require _((const char*)); #ifdef __ia64 -void ruby_init_stack(VALUE*, void*); +void ruby_init_stack(volatile VALUE*, void*); #define ruby_init_stack(addr) ruby_init_stack(addr, rb_ia64_bsp()) #else -void ruby_init_stack(VALUE*); +void ruby_init_stack(volatile VALUE*); #endif #define Init_stack(addr) ruby_init_stack(addr) #define RUBY_INIT_STACK \ - VALUE variable_in_this_stack_frame; \ + volatile VALUE variable_in_this_stack_frame; \ ruby_init_stack(&variable_in_this_stack_frame); void ruby_init _((void)); |