diff options
| -rw-r--r-- | mrbgems/mruby-compiler/core/codegen.c | 5 | ||||
| -rw-r--r-- | src/dump.c | 8 | ||||
| -rw-r--r-- | src/load.c | 2 |
3 files changed, 8 insertions, 7 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c index 25e157736..14b53d073 100644 --- a/mrbgems/mruby-compiler/core/codegen.c +++ b/mrbgems/mruby-compiler/core/codegen.c @@ -6,6 +6,7 @@ #include <ctype.h> #include <limits.h> +#include <stdint.h> #include <stdlib.h> #include <string.h> #include <math.h> @@ -612,13 +613,13 @@ new_lit(codegen_scope *s, mrb_value val) switch (mrb_type(val)) { case MRB_TT_STRING: if (RSTR_NOFREE_P(RSTRING(val))) { - pv->tt = (RSTRING_LEN(val)<<2) | IREP_TT_SSTR; + pv->tt = (uint32_t)(RSTRING_LEN(val)<<2) | IREP_TT_SSTR; pv->u.str = RSTRING_PTR(val); } else { char *p; mrb_int len = RSTRING_LEN(val); - pv->tt = (len<<2) | IREP_TT_STR; + pv->tt = (uint32_t)(len<<2) | IREP_TT_STR; p = (char*)codegen_realloc(s, NULL, len+1); memcpy(p, RSTRING_PTR(val), len); p[len] = '\0'; diff --git a/src/dump.c b/src/dump.c index 31dceb593..c9b5ccc9d 100644 --- a/src/dump.c +++ b/src/dump.c @@ -160,7 +160,7 @@ write_pool_block(mrb_state *mrb, const mrb_irep *irep, uint8_t *buf) { int pool_no; uint8_t *cur = buf; - int len; + mrb_int len; const char *ptr; cur += uint16_to_bin(irep->plen, cur); /* number of pool */ @@ -936,11 +936,11 @@ dump_pool(mrb_state *mrb, const mrb_pool_value *p, FILE *fp) if (p->tt & IREP_TT_NFLAG) { /* number */ switch (p->tt) { case IREP_TT_INT32: - fprintf(fp, "{IREP_TT_INT32, {.i32=%"PRId32"}},\n", p->u.i32); + fprintf(fp, "{IREP_TT_INT32, {.i32=%" PRId32 "}},\n", p->u.i32); break; #ifdef MRB_64BIT case IREP_TT_INT64: - fprintf(fp, "{IREP_TT_INT64, {.i64=%"PRId64"}},\n", p->u.i64); + fprintf(fp, "{IREP_TT_INT64, {.i64=%" PRId64 "}},\n", p->u.i64); break; #endif case IREP_TT_FLOAT: @@ -948,7 +948,7 @@ dump_pool(mrb_state *mrb, const mrb_pool_value *p, FILE *fp) fprintf(fp, "{IREP_TT_FLOAT, {.f=%#.1f}},\n", p->u.f); } else { - fprintf(fp, "{IREP_TT_FLOAT, {.f="MRB_FLOAT_FMT"}},\n", p->u.f); + fprintf(fp, "{IREP_TT_FLOAT, {.f=" MRB_FLOAT_FMT "}},\n", p->u.f); } break; } diff --git a/src/load.c b/src/load.c index 766aa0648..45fe38736 100644 --- a/src/load.c +++ b/src/load.c @@ -242,8 +242,8 @@ read_irep_record(mrb_state *mrb, const uint8_t *bin, size_t *len, uint8_t flags) struct RData *irep_obj = mrb_data_object_alloc(mrb, mrb->object_class, NULL, &tempirep_type); int ai = mrb_gc_arena_save(mrb); mrb_irep *irep = read_irep_record_1(mrb, bin, len, flags); - int i; mrb_irep **reps; + int i; mrb_gc_arena_restore(mrb, ai); if (irep == NULL) { |
