From a94525d4ea4bbfb37080a7d5e0d28b25b1834654 Mon Sep 17 00:00:00 2001 From: Tomasz Dąbrowski Date: Mon, 25 Sep 2017 17:10:34 +0200 Subject: fix: mrbgems\mruby-sprintf\src\sprintf.c(1052): warning C4244: '+=': conversion from 'mrb_int' to 'int', possible loss of data --- mrbgems/mruby-sprintf/src/sprintf.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'mrbgems/mruby-sprintf/src/sprintf.c') diff --git a/mrbgems/mruby-sprintf/src/sprintf.c b/mrbgems/mruby-sprintf/src/sprintf.c index 768c113fd..efa0b3d34 100644 --- a/mrbgems/mruby-sprintf/src/sprintf.c +++ b/mrbgems/mruby-sprintf/src/sprintf.c @@ -999,13 +999,15 @@ retry: case 'A': { mrb_value val = GETARG(); double fval; - int i, need = 6; + mrb_int i; + mrb_int need = 6; char fbuf[32]; + int frexp_result; fval = mrb_float(mrb_Float(mrb, val)); if (!isfinite(fval)) { const char *expr; - const int elen = 3; + const mrb_int elen = 3; char sign = '\0'; if (isnan(fval)) { @@ -1045,7 +1047,8 @@ retry: need = 0; if (*p != 'e' && *p != 'E') { i = INT_MIN; - frexp(fval, &i); + frexp(fval, &frexp_result); + i = (mrb_int)frexp_result; if (i > 0) need = BIT_DIGITS(i); } -- cgit v1.2.3