mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
r_object0: do not goto into a branch
I'm not necessarily against every goto in general, but jumping into a branch is definitely a bad idea. Better refactor.
This commit is contained in:
parent
6575766ea0
commit
41703fcfab
Notes:
git
2020-06-29 11:07:00 +09:00
1 changed files with 4 additions and 2 deletions
|
@ -1739,8 +1739,7 @@ r_object0(struct load_arg *arg, int *ivp, VALUE extmod)
|
|||
}
|
||||
v = r_object0(arg, 0, extmod);
|
||||
if (rb_special_const_p(v) || RB_TYPE_P(v, T_OBJECT) || RB_TYPE_P(v, T_CLASS)) {
|
||||
format_error:
|
||||
rb_raise(rb_eArgError, "dump format error (user class)");
|
||||
goto format_error;
|
||||
}
|
||||
if (RB_TYPE_P(v, T_MODULE) || !RTEST(rb_class_inherited_p(c, RBASIC(v)->klass))) {
|
||||
VALUE tmp = rb_obj_alloc(c);
|
||||
|
@ -1751,6 +1750,9 @@ r_object0(struct load_arg *arg, int *ivp, VALUE extmod)
|
|||
}
|
||||
break;
|
||||
|
||||
format_error:
|
||||
rb_raise(rb_eArgError, "dump format error (user class)");
|
||||
|
||||
case TYPE_NIL:
|
||||
v = Qnil;
|
||||
v = r_leave(v, arg);
|
||||
|
|
Loading…
Reference in a new issue