diff --git a/src/box/sql/func.c b/src/box/sql/func.c index 487cdafe1d99cbfd0febfe70f03d1f69f1e1a0d4..0aedb2d3d3896077e55ad6ad3198f9e1ad11eebb 100644 --- a/src/box/sql/func.c +++ b/src/box/sql/func.c @@ -857,9 +857,9 @@ roundFunc(sql_context * context, int argc, sql_value ** argv) * handle the rounding directly, * otherwise use printf. */ - if (n == 0 && r >= 0 && r < LARGEST_INT64 - 1) { + if (n == 0 && r >= 0 && r < (double)(LARGEST_INT64 - 1)) { r = (double)((sql_int64) (r + 0.5)); - } else if (n == 0 && r < 0 && (-r) < LARGEST_INT64 - 1) { + } else if (n == 0 && r < 0 && (-r) < (double)(LARGEST_INT64 - 1)) { r = -(double)((sql_int64) ((-r) + 0.5)); } else { const char *rounded_value = tt_sprintf("%.*f", n, r);