summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/class.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/class.c b/src/class.c
index ee5f544dd..9868d0080 100644
--- a/src/class.c
+++ b/src/class.c
@@ -69,7 +69,10 @@ prepare_singleton_class(mrb_state *mrb, struct RBasic *o)
sc->iv = 0;
if (o->tt == MRB_TT_CLASS) {
c = (struct RClass*)o;
- if (c->super) {
+ if (!c->super) {
+ sc->super = mrb->class_class;
+ }
+ else {
sc->super = c->super->c;
}
}