mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
singleton class needs to set __outer__; fixed #1983
This commit is contained in:
@@ -982,6 +982,10 @@ mrb_singleton_class(mrb_state *mrb, mrb_value v)
|
||||
}
|
||||
obj = mrb_basic_ptr(v);
|
||||
prepare_singleton_class(mrb, obj);
|
||||
if (mrb->c && mrb->c->ci && mrb->c->ci->target_class) {
|
||||
mrb_obj_iv_set(mrb, (struct RObject*)obj->c, mrb_intern_lit(mrb, "__outer__"),
|
||||
mrb_obj_value(mrb->c->ci->target_class));
|
||||
}
|
||||
return mrb_obj_value(obj->c);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user