зеркало из https://github.com/github/ruby.git
vm_trace.c: suppress -Wclobbered warning
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
f5c5a1979a
Коммит
98ab1510c4
|
@ -378,8 +378,8 @@ rb_suppress_tracing(VALUE (*func)(VALUE), VALUE arg)
|
|||
{
|
||||
volatile int raised;
|
||||
VALUE result = Qnil;
|
||||
rb_execution_context_t *ec = GET_EC();
|
||||
rb_vm_t *vm = rb_ec_vm_ptr(ec);
|
||||
rb_execution_context_t *const ec = GET_EC();
|
||||
rb_vm_t *const vm = rb_ec_vm_ptr(ec);
|
||||
enum ruby_tag_type state;
|
||||
rb_trace_arg_t dummy_trace_arg;
|
||||
dummy_trace_arg.event = 0;
|
||||
|
@ -392,9 +392,12 @@ rb_suppress_tracing(VALUE (*func)(VALUE), VALUE arg)
|
|||
raised = rb_ec_reset_raised(ec);
|
||||
|
||||
EC_PUSH_TAG(ec);
|
||||
if ((state = EC_EXEC_TAG()) == TAG_NONE) {
|
||||
if (LIKELY((state = EC_EXEC_TAG()) == TAG_NONE)) {
|
||||
result = (*func)(arg);
|
||||
}
|
||||
else {
|
||||
(void)*&vm; /* suppress "clobbered" warning */
|
||||
}
|
||||
EC_POP_TAG();
|
||||
|
||||
if (raised) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче