summaryrefslogtreecommitdiffhomepage
path: root/src/numeric.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2014-05-03 01:28:21 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2014-05-03 01:28:21 +0900
commit72fe54c40316acff40f7748e447db9e7bc73849d (patch)
tree0595d5227a2a142c8199140f18ec6ee14222dd42 /src/numeric.c
parent85d286b4b8e292b870a266360fb135670d427a41 (diff)
parent129e5a6c21047f94d9ce56ea779ef88f154c51f7 (diff)
downloadmruby-72fe54c40316acff40f7748e447db9e7bc73849d.tar.gz
mruby-72fe54c40316acff40f7748e447db9e7bc73849d.zip
Merge pull request #2172 from suzukaze/refactor-numeric.c
Refactor rshift
Diffstat (limited to 'src/numeric.c')
-rw-r--r--src/numeric.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/src/numeric.c b/src/numeric.c
index 46b3cdf37..4c955a61e 100644
--- a/src/numeric.c
+++ b/src/numeric.c
@@ -980,17 +980,11 @@ rshift(mrb_int val, mrb_int width)
mrb_assert(width >= 0);
if (width >= NUMERIC_SHIFT_WIDTH_MAX) {
if (val < 0) {
- val = -1;
- }
- else {
- val = 0;
+ return mrb_fixnum_value(-1);
}
+ return mrb_fixnum_value(0);
}
- else {
- val = val >> width;
- }
-
- return mrb_fixnum_value(val);
+ return mrb_fixnum_value(val >> width);
}
static inline void