Merge branch 'master' of github.com:mruby/mruby

This commit is contained in:
Yukihiro Matsumoto
2012-06-25 17:30:28 +09:00
2 changed files with 18 additions and 0 deletions
+3
View File
@@ -1050,6 +1050,9 @@ mrb_class_new(mrb_state *mrb, struct RClass *super)
mrb_check_inheritable(mrb, super);
}
c = boot_defclass(mrb, super);
if (super){
MRB_SET_INSTANCE_TT(c, MRB_INSTANCE_TT(super));
}
make_metaclass(mrb, c);
return c;
+15
View File
@@ -514,6 +514,12 @@ obj_free(mrb_state *mrb, struct RBasic *obj)
mrb_free(mrb, ((struct RRange*)obj)->edges);
break;
#ifdef ENABLE_STRUCT
case MRB_TT_STRUCT:
mrb_free(mrb, ((struct RStruct*)obj)->ptr);
break;
#endif
case MRB_TT_DATA:
{
struct RData *d = (struct RData*)obj;
@@ -632,6 +638,15 @@ gc_gray_mark(mrb_state *mrb, struct RBasic *obj)
break;
#endif
#ifdef ENABLE_STRUCT
case MRB_TT_STRUCT:
{
struct RStruct *s = (struct RStruct*)obj;
children += s->len;
}
break;
#endif
default:
break;
}