summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gc.c2
-rw-r--r--src/string.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/src/gc.c b/src/gc.c
index 211980b19..a2a904477 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -521,7 +521,7 @@ MRB_API struct RBasic*
mrb_obj_alloc(mrb_state *mrb, enum mrb_vtype ttype, struct RClass *cls)
{
struct RBasic *p;
- static const RVALUE RVALUE_zero = { { { MRB_TT_FALSE } } };
+ static const RVALUE RVALUE_zero = { { { NULL, NULL, MRB_TT_FALSE } } };
mrb_gc *gc = &mrb->gc;
if (cls) {
diff --git a/src/string.c b/src/string.c
index 72e14ede9..cacf48821 100644
--- a/src/string.c
+++ b/src/string.c
@@ -54,8 +54,8 @@ str_init_normal(mrb_state *mrb, struct RString *s, const char *p, size_t len)
static void
str_init_embed(struct RString *s, const char *p, size_t len)
{
- if (p) memcpy(s->as.ary, p, len);
- s->as.ary[len] = '\0';
+ if (p) memcpy(RSTR_EMBED_PTR(s), p, len);
+ RSTR_EMBED_PTR(s)[len] = '\0';
RSTR_SET_TYPE_FLAG(s, EMBED);
RSTR_SET_EMBED_LEN(s, len);
}
@@ -188,7 +188,7 @@ resize_capa(mrb_state *mrb, struct RString *s, size_t capacity)
#endif
if (RSTR_EMBED_P(s)) {
if (!RSTR_EMBEDDABLE_P(capacity)) {
- str_init_normal_capa(mrb, s, s->as.ary, RSTR_EMBED_LEN(s), capacity);
+ str_init_normal_capa(mrb, s, RSTR_EMBED_PTR(s), RSTR_EMBED_LEN(s), capacity);
}
}
else {