зеркало из https://github.com/github/ruby.git
Assert not to be UNDEF visibility
Any defined methods, bound to any classes/modules and not being UNDEFINED_METHOD_ENTRY_P, should not be METHOD_VISI_UNDEF.
This commit is contained in:
Родитель
f9bdb17c02
Коммит
10ebf87428
1
class.c
1
class.c
|
@ -1435,6 +1435,7 @@ method_entry_i(ID key, VALUE value, void *data)
|
|||
}
|
||||
else {
|
||||
type = METHOD_ENTRY_VISI(me);
|
||||
RUBY_ASSERT(type != METHOD_VISI_UNDEF);
|
||||
}
|
||||
st_add_direct(arg->list, key, (st_data_t)type);
|
||||
}
|
||||
|
|
1
proc.c
1
proc.c
|
@ -1657,6 +1657,7 @@ mnew_internal(const rb_method_entry_t *me, VALUE klass, VALUE iclass,
|
|||
}
|
||||
if (visi == METHOD_VISI_UNDEF) {
|
||||
visi = METHOD_ENTRY_VISI(me);
|
||||
RUBY_ASSERT(visi != METHOD_VISI_UNDEF); /* !UNDEFINED_METHOD_ENTRY_P(me) */
|
||||
if (scope && (visi != METHOD_VISI_PUBLIC)) {
|
||||
if (!error) return Qnil;
|
||||
rb_print_inaccessible(klass, id, visi);
|
||||
|
|
Загрузка…
Ссылка в новой задаче