summaryrefslogtreecommitdiffhomepage
path: root/src/numeric.c
diff options
context:
space:
mode:
authorMasaki Muranaka <[email protected]>2014-03-18 13:56:15 +0900
committerMasaki Muranaka <[email protected]>2014-03-18 17:36:47 +0900
commit1df355e30054ca61aa72c39726759cb70367c090 (patch)
treee3963aa101b9a0d26abc7af11bd816e3a57df5cc /src/numeric.c
parent2f8dbd8e5de04694ee2c2f7ad50418b184d2a08f (diff)
downloadmruby-1df355e30054ca61aa72c39726759cb70367c090.tar.gz
mruby-1df355e30054ca61aa72c39726759cb70367c090.zip
Reduce implicit type casts.
Diffstat (limited to 'src/numeric.c')
-rw-r--r--src/numeric.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/numeric.c b/src/numeric.c
index b0b80c523..6adfff344 100644
--- a/src/numeric.c
+++ b/src/numeric.c
@@ -962,8 +962,9 @@ fix_xor(mrb_state *mrb, mrb_value x)
#define NUMERIC_SHIFT_WIDTH_MAX (MRB_INT_BIT-1)
static mrb_value
-lshift(mrb_state *mrb, mrb_int val, size_t width)
+lshift(mrb_state *mrb, mrb_int val, mrb_int width)
{
+ mrb_assert(width >= 0);
if (width > NUMERIC_SHIFT_WIDTH_MAX) {
mrb_raisef(mrb, E_RANGE_ERROR, "width(%S) > (%S:MRB_INT_BIT-1)",
mrb_fixnum_value(width),
@@ -974,8 +975,9 @@ lshift(mrb_state *mrb, mrb_int val, size_t width)
}
static mrb_value
-rshift(mrb_int val, size_t width)
+rshift(mrb_int val, mrb_int width)
{
+ mrb_assert(width >= 0);
if (width >= NUMERIC_SHIFT_WIDTH_MAX) {
if (val < 0) {
val = -1;