summaryrefslogtreecommitdiffhomepage
path: root/src/codegen.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/codegen.c')
-rw-r--r--src/codegen.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/codegen.c b/src/codegen.c
index 3374b2e7f..27fd20ee4 100644
--- a/src/codegen.c
+++ b/src/codegen.c
@@ -542,16 +542,17 @@ nosplat(node *t)
static mrb_sym
attrsym(codegen_scope *s, mrb_sym a)
{
- const char *name = mrb_sym2name(s->mrb, a);
+ const char *name;
+ int len;
char *name2;
- size_t len = strlen(name);
+ name = mrb_sym2name(s->mrb, a, &len);
name2 = codegen_palloc(s, len+1);
strcpy(name2, name);
name2[len] = '=';
name2[len+1] = '\0';
- return mrb_intern(s->mrb, name2);
+ return mrb_intern2(s->mrb, name2, len+1);
}
static int