summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/eval.c b/eval.c
index 9f8f12aec5..d1a8e06c28 100644
--- a/eval.c
+++ b/eval.c
@@ -3214,8 +3214,9 @@ rb_eval(self, n)
override_class:
if (!super) super = rb_cObject;
klass = rb_define_class_id(node->nd_cname, super);
- rb_const_set(ruby_class, node->nd_cname, klass);
rb_set_class_path(klass,ruby_class,rb_id2name(node->nd_cname));
+ rb_class_inherited(super, klass);
+ rb_const_set(ruby_class, node->nd_cname, klass);
}
if (ruby_wrapper) {
rb_extend_object(klass, ruby_wrapper);