diff --git a/src/numeric.c b/src/numeric.c index 9902b0b94..cdf8c8afb 100644 --- a/src/numeric.c +++ b/src/numeric.c @@ -291,7 +291,7 @@ value_int64(mrb_state *mrb, mrb_value x) static mrb_value int64_value(mrb_state *mrb, int64_t v) { - if (MRB_INT_MIN <= v && v <= MRB_INT_MAX) { + if (FIXABLE(v)) { return mrb_fixnum_value((mrb_int)v); } return mrb_float_value(mrb, (mrb_float)v);