range.c: avoid use of `mrb_fixnum_p`.

`mrb_int` may not fit in `fixnum` (inline integer).
parent 4d6f5be1
......@@ -81,7 +81,7 @@ range_size(mrb_state *mrb, mrb_value range)
beg = RANGE_BEG(r);
end = RANGE_END(r);
if ((mrb_fixnum_p(beg) || mrb_float_p(beg)) && mrb_nil_p(end)) {
if ((mrb_integer_p(beg) || mrb_float_p(beg)) && mrb_nil_p(end)) {
return mrb_float_value(mrb, INFINITY);
}
......@@ -136,7 +136,7 @@ range_size(mrb_state *mrb, mrb_value range)
beg = RANGE_BEG(r);
end = RANGE_END(r);
if (mrb_fixnum_p(beg) && mrb_nil_p(end)) {
if (mrb_integer_p(beg) && mrb_nil_p(end)) {
return mrb_nil_value();
}
......@@ -147,7 +147,7 @@ range_size(mrb_state *mrb, mrb_value range)
mrb_int b = mrb_integer(end);
mrb_int c = b - a + excl;
return mrb_fixnum_value(c);
return mrb_int_value(mrb, c);
}
return mrb_nil_value();
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment