diff options
| author | Masaki Muranaka <[email protected]> | 2014-03-08 13:54:02 +0900 |
|---|---|---|
| committer | Masaki Muranaka <[email protected]> | 2014-03-08 15:53:59 +0900 |
| commit | 270d25bf2db157c9d1cdcc57bccefabbb1341524 (patch) | |
| tree | 22319de5b6970a0378f0b8c8c7164e7ac34ffedd /src/codegen.c | |
| parent | 058bb18f280dddb53ac40c838b371e9469024274 (diff) | |
| download | mruby-270d25bf2db157c9d1cdcc57bccefabbb1341524.tar.gz mruby-270d25bf2db157c9d1cdcc57bccefabbb1341524.zip | |
Make type casts safer.
Diffstat (limited to 'src/codegen.c')
| -rw-r--r-- | src/codegen.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/codegen.c b/src/codegen.c index 0b4d18bba..700cfdbf8 100644 --- a/src/codegen.c +++ b/src/codegen.c @@ -5,6 +5,7 @@ */ #include <ctype.h> +#include <limits.h> #include <stdlib.h> #include <string.h> #include "mruby.h" @@ -2582,14 +2583,16 @@ static void codedump(mrb_state *mrb, mrb_irep *irep) { #ifdef ENABLE_STDIO - uint32_t i; + int i; int ai; mrb_code c; if (!irep) return; printf("irep %p nregs=%d nlocals=%d pools=%d syms=%d reps=%d\n", irep, irep->nregs, irep->nlocals, (int)irep->plen, (int)irep->slen, (int)irep->rlen); - for (i=0; i<irep->ilen; i++) { + + mrb_assert(irep->ilen <= INT_MAX); + for (i = 0; i < (int)(irep->ilen); i++) { ai = mrb_gc_arena_save(mrb); printf("%03d ", i); c = irep->iseq[i]; |
