summaryrefslogtreecommitdiffhomepage
path: root/src/gc.c
diff options
context:
space:
mode:
authorMasaki Muranaka <[email protected]>2012-10-24 17:00:54 +0900
committerMasaki Muranaka <[email protected]>2012-10-29 11:29:57 +0900
commitf3090c3000a469475385f2bb861a6ad7e7f635ae (patch)
tree7a6856692ce65dcc0b5e216f497888b2621eae29 /src/gc.c
parentf5b6f03c9e802702c6f5f74bc3e778f3c4d8baca (diff)
downloadmruby-f3090c3000a469475385f2bb861a6ad7e7f635ae.tar.gz
mruby-f3090c3000a469475385f2bb861a6ad7e7f635ae.zip
Use substitution instead of memset in structure initialization.
Diffstat (limited to 'src/gc.c')
-rw-r--r--src/gc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gc.c b/src/gc.c
index 46699aea3..37e4a363b 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -326,6 +326,7 @@ struct RBasic*
mrb_obj_alloc(mrb_state *mrb, enum mrb_vtype ttype, struct RClass *cls)
{
struct RBasic *p;
+ static const RVALUE RVALUE_zero = { { { 0 } } };
#ifdef MRB_GC_STRESS
mrb_garbage_collect(mrb);
@@ -345,7 +346,7 @@ mrb_obj_alloc(mrb_state *mrb, enum mrb_vtype ttype, struct RClass *cls)
mrb->live++;
gc_protect(mrb, p);
- memset(p, 0, sizeof(RVALUE));
+ *(RVALUE *)p = RVALUE_zero;
p->tt = ttype;
p->c = cls;
paint_partial_white(mrb, p);