diff options
| author | Masaki Muranaka <[email protected]> | 2014-03-18 13:56:15 +0900 |
|---|---|---|
| committer | Masaki Muranaka <[email protected]> | 2014-03-18 17:36:47 +0900 |
| commit | 1df355e30054ca61aa72c39726759cb70367c090 (patch) | |
| tree | e3963aa101b9a0d26abc7af11bd816e3a57df5cc | |
| parent | 2f8dbd8e5de04694ee2c2f7ad50418b184d2a08f (diff) | |
| download | mruby-1df355e30054ca61aa72c39726759cb70367c090.tar.gz mruby-1df355e30054ca61aa72c39726759cb70367c090.zip | |
Reduce implicit type casts.
| -rw-r--r-- | src/array.c | 8 | ||||
| -rw-r--r-- | src/numeric.c | 6 |
2 files changed, 9 insertions, 5 deletions
diff --git a/src/array.c b/src/array.c index 90a608b70..12dca3a95 100644 --- a/src/array.c +++ b/src/array.c @@ -79,9 +79,9 @@ mrb_ary_new(mrb_state *mrb) * */ static inline void -array_copy(mrb_value *dst, const mrb_value *src, size_t size) +array_copy(mrb_value *dst, const mrb_value *src, mrb_int size) { - size_t i; + mrb_int i; for (i = 0; i < size; i++) { dst[i] = src[i]; @@ -238,7 +238,9 @@ mrb_ary_s_create(mrb_state *mrb, mrb_value self) int len; mrb_get_args(mrb, "*", &vals, &len); - return mrb_ary_new_from_values(mrb, len, vals); + mrb_assert(len <= MRB_INT_MAX); /* A rare case. So choosed assert() not raise(). */ + + return mrb_ary_new_from_values(mrb, (mrb_int)len, vals); } static void 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; |
