summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2018-08-25 16:58:01 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2018-08-25 16:58:01 +0900
commit471288f37d18e640f98029fabcdcb7ee16b95d93 (patch)
tree0624dcf5f681c61b4f59b8e15441f02c9d0cab62
parentd79dbd92f9104712c6cf41ab3c029dec318a757d (diff)
downloadmruby-471288f37d18e640f98029fabcdcb7ee16b95d93.tar.gz
mruby-471288f37d18e640f98029fabcdcb7ee16b95d93.zip
Reduce integer casting warnings.
-rw-r--r--include/mruby.h2
-rw-r--r--mrbgems/mruby-compiler/core/codegen.c8
-rw-r--r--mrbgems/mruby-eval/src/eval.c6
-rw-r--r--src/codedump.c6
-rw-r--r--src/load.c4
-rw-r--r--src/vm.c2
6 files changed, 14 insertions, 14 deletions
diff --git a/include/mruby.h b/include/mruby.h
index 542d7491f..872396899 100644
--- a/include/mruby.h
+++ b/include/mruby.h
@@ -1234,7 +1234,7 @@ MRB_API mrb_value mrb_fiber_alive_p(mrb_state *mrb, mrb_value fib);
* @mrbgem mruby-fiber
*/
#define E_FIBER_ERROR (mrb_exc_get(mrb, "FiberError"))
-MRB_API void mrb_stack_extend(mrb_state*, int);
+MRB_API void mrb_stack_extend(mrb_state*, mrb_int);
/* memory pool implementation */
typedef struct mrb_pool mrb_pool;
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c
index 075945b3b..a835a563e 100644
--- a/mrbgems/mruby-compiler/core/codegen.c
+++ b/mrbgems/mruby-compiler/core/codegen.c
@@ -400,7 +400,7 @@ genjmp2(codegen_scope *s, mrb_code i, uint16_t a, int pc, int val)
}
else {
gen_B(s, i);
- gen_B(s, a);
+ gen_B(s, (uint8_t)a);
pos = s->pc;
gen_S(s, pc);
}
@@ -494,10 +494,10 @@ gen_addsub(codegen_scope *s, uint8_t op, uint16_t dst, uint16_t idx)
if (data.b >= 128) goto normal;
s->pc = s->lastpc;
if (op == OP_ADD) {
- genop_3(s, OP_ADDI, dst, idx, data.b);
+ genop_3(s, OP_ADDI, dst, idx, (uint8_t)data.b);
}
else {
- genop_3(s, OP_SUBI, dst, idx, data.b);
+ genop_3(s, OP_SUBI, dst, idx, (uint8_t)data.b);
}
break;
default:
@@ -2441,7 +2441,7 @@ codegen(codegen_scope *s, node *tree, int val)
#endif
if (i == -1) genop_1(s, OP_LOADI__1, cursp());
else if (i >= -0xffff) {
- genop_2(s, OP_LOADINEG, cursp(), -i);
+ genop_2(s, OP_LOADINEG, cursp(), (uint16_t)-i);
}
else {
int off = new_lit(s, mrb_fixnum_value(i));
diff --git a/mrbgems/mruby-eval/src/eval.c b/mrbgems/mruby-eval/src/eval.c
index f1e50e83d..b9c87f6d1 100644
--- a/mrbgems/mruby-eval/src/eval.c
+++ b/mrbgems/mruby-eval/src/eval.c
@@ -154,7 +154,7 @@ patch_irep(mrb_state *mrb, mrb_irep *irep, int bnest, mrb_irep *top)
if (arg != 0) {
/* must replace */
irep->iseq[i] = insn = OP_SETUPVAR;
- irep->iseq[i+1] = b;
+ irep->iseq[i+1] = (mrb_code)b;
irep->iseq[i+2] = arg >> 8;
irep->iseq[i+3] = arg & 0xff;
}
@@ -169,7 +169,7 @@ patch_irep(mrb_state *mrb, mrb_irep *irep, int bnest, mrb_irep *top)
int lev = c+1;
mrb_irep *tmp = search_irep(top, bnest, lev, irep);
if (potential_upvar_p(tmp->lv, b, irep_argc(tmp), tmp->nlocals)) {
- mrb_code arg = search_variable(mrb, tmp->lv[b-1].name, bnest);
+ uint16_t arg = search_variable(mrb, tmp->lv[b-1].name, bnest);
if (arg != 0) {
/* must replace */
irep->iseq[i] = OP_GETUPVAR;
@@ -188,7 +188,7 @@ patch_irep(mrb_state *mrb, mrb_irep *irep, int bnest, mrb_irep *top)
int lev = c+1;
mrb_irep *tmp = search_irep(top, bnest, lev, irep);
if (potential_upvar_p(tmp->lv, b, irep_argc(tmp), tmp->nlocals)) {
- mrb_code arg = search_variable(mrb, tmp->lv[b-1].name, bnest);
+ uint16_t arg = search_variable(mrb, tmp->lv[b-1].name, bnest);
if (arg != 0) {
/* must replace */
irep->iseq[i] = OP_SETUPVAR;
diff --git a/src/codedump.c b/src/codedump.c
index 9174ebe3d..80802778f 100644
--- a/src/codedump.c
+++ b/src/codedump.c
@@ -48,7 +48,7 @@ print_lv_ab(mrb_state *mrb, mrb_irep *irep, uint16_t a, uint16_t b)
#endif
static void
-print_header(mrb_irep *irep, int i)
+print_header(mrb_irep *irep, ptrdiff_t i)
{
int32_t line;
@@ -60,7 +60,7 @@ print_header(mrb_irep *irep, int i)
printf("%5d ", line);
}
- printf("%03d ", i);
+ printf("%03d ", (int)i);
}
#define CASE(insn,ops) case insn: FETCH_ ## ops (); L_ ## insn
@@ -91,7 +91,7 @@ codedump(mrb_state *mrb, mrb_irep *irep)
pc = irep->iseq;
pcend = pc + irep->ilen;
while (pc < pcend) {
- int i;
+ ptrdiff_t i;
uint32_t a;
uint16_t b;
uint8_t c;
diff --git a/src/load.c b/src/load.c
index 20878aa56..54b50b14d 100644
--- a/src/load.c
+++ b/src/load.c
@@ -68,7 +68,7 @@ read_irep_record_1(mrb_state *mrb, const uint8_t *bin, size_t *len, uint8_t flag
/* Binary Data Section */
/* ISEQ BLOCK */
- irep->ilen = (size_t)bin_to_uint32(src);
+ irep->ilen = (uint16_t)bin_to_uint32(src);
src += sizeof(uint32_t);
src += skip_padding(src);
@@ -157,7 +157,7 @@ read_irep_record_1(mrb_state *mrb, const uint8_t *bin, size_t *len, uint8_t flag
}
/* SYMS BLOCK */
- irep->slen = (size_t)bin_to_uint32(src); /* syms length */
+ irep->slen = (uint16_t)bin_to_uint32(src); /* syms length */
src += sizeof(uint32_t);
if (irep->slen > 0) {
if (SIZE_ERROR_MUL(irep->slen, sizeof(mrb_sym))) {
diff --git a/src/vm.c b/src/vm.c
index d0ea6b3bd..44472e311 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -218,7 +218,7 @@ stack_extend_alloc(mrb_state *mrb, int room)
}
MRB_API void
-mrb_stack_extend(mrb_state *mrb, int room)
+mrb_stack_extend(mrb_state *mrb, mrb_int room)
{
if (mrb->c->stack + room >= mrb->c->stend) {
stack_extend_alloc(mrb, room);