| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-03-28 | numeric.c: function renaming. | Yukihiro "Matz" Matsumoto | |
| - `mrb_num_div_int(mrb,x,y)` -> `mrb_div_int(mrb,x,y)` - `mrb_num_div_flo(mrb,x,y)` -> `mrb_div_flo(x,y)` They are internal function not supposed to be used outside of the core. | |||
| 2021-03-27 | Move default `Integer#/` from `rational.c` to `complex.c`. | Yukihiro "Matz" Matsumoto | |
| 2021-03-25 | rational.c: fix wrong `funcall` method in `rational_mul`. | Yukihiro "Matz" Matsumoto | |
| 2021-03-25 | rational.c: inline `mrb_rational_eq()`. | Yukihiro "Matz" Matsumoto | |
| It removes non-static function, so that strictly saying, it's an incompatible change. But the function was added recently and I am sure no one uses it yet. | |||
| 2021-03-24 | rational.c: implement `Rational#<=>` in C. | Yukihiro "Matz" Matsumoto | |
| 2021-03-24 | rational.c: implement `Rational#/` and `#quo` in C. | Yukihiro "Matz" Matsumoto | |
| 2021-03-24 | rational.c: implement `Rational#*` in C. | Yukihiro "Matz" Matsumoto | |
| 2021-03-24 | rational.c: implement `Rational#-` in C. | Yukihiro "Matz" Matsumoto | |
| 2021-03-24 | fixup! rational.c: prepare utility function `rat_to_flo()`. | Yukihiro "Matz" Matsumoto | |
| 2021-03-24 | rational.c: prepare utility function `rat_to_flo()`. | Yukihiro "Matz" Matsumoto | |
| This function takes `struct mrb_rational*` and returns converted `mrb_float` value. | |||
| 2021-03-24 | rational.c: implement `Rational#+` in C. | Yukihiro "Matz" Matsumoto | |
| 2021-03-24 | rational.c: check integer overflow in `rational_minus`. | Yukihiro "Matz" Matsumoto | |
| 2021-03-24 | Use `mrb_num_div_flo` for float division. | Yukihiro "Matz" Matsumoto | |
| This function handles zero division properly. Also fixed bugs that multiply numbers instead of division. | |||
| 2021-03-24 | Fix infinite recursive call bugs in integer division. | Yukihiro "Matz" Matsumoto | |
| 2021-03-22 | Use global defines for `Rational` and `Complex`. | Yukihiro "Matz" Matsumoto | |
| 2021-03-20 | rational.c: fix `MRB_TT_RATIONAL` and `MRB_TT_COMPLEX` confusion. | Yukihiro "Matz" Matsumoto | |
| 2021-03-19 | rational.c: overhaul rational operators. | Yukihiro "Matz" Matsumoto | |
| - define `MRB_TT_RATIONAL` - change object structure (`struct RRational`) - add memory management for `MRB_TT_RATIONAL` - avoid operator overloading as much as possible - implement division overloading in C - as a result, performance improved a lot | |||
| 2021-02-08 | `i_gcd()` does not work for `MRB_INT_MIN`. | Yukihiro "Matz" Matsumoto | |
| 2021-01-28 | Remove unnecessary bit shift in `rational_new_f`. | Yukihiro "Matz" Matsumoto | |
| 2021-01-26 | Revert "Minimize the changes in #5277" | Yukihiro "Matz" Matsumoto | |
| This reverts commit dc51d89ac22acc60b9bfeed87115863565b74085. | |||
| 2021-01-25 | Silence 'loss of data' warnings. | Yukihiro "Matz" Matsumoto | |
| 2021-01-25 | Fix a bug for the case `frexp()` return `Infinity`. | Yukihiro "Matz" Matsumoto | |
| 2021-01-25 | Should use a limit for 32 bit platform; ref 05a8cc44 | Yukihiro "Matz" Matsumoto | |
| 2021-01-24 | Define `RAT_INT_LIMIT` for 32 bit platforms. | Yukihiro "Matz" Matsumoto | |
| 2021-01-24 | Detect integer overflow in `rational_new_f()`. | Yukihiro "Matz" Matsumoto | |
| 2021-01-22 | Minimize the changes in #5277 | Yukihiro "Matz" Matsumoto | |
| Instead of including `mruby/presym.h` everywhere, we provided the fallback `mruby/presym.inc` under `include/mruby` directory, and specify `-I<build-dir>/include` before `-I<top-dir>/include` in `presym.rake`. So even when someone drops `-I<build-dir>/include` in compiler options, it just compiles without failure. | |||
| 2021-01-21 | Merge branch 'avoid-including-presym.inc-in-existing-header-files' of ↵ | Yukihiro "Matz" Matsumoto | |
| https://github.com/shuujii/mruby into shuujii-avoid-including-presym.inc-in-existing-header-files | |||
| 2021-01-13 | Rational denominator should not be zero. | Yukihiro "Matz" Matsumoto | |
| 2021-01-12 | Silence Windows warnings (cast and `setmode`). | Yukihiro "Matz" Matsumoto | |
| 2021-01-11 | Avoid including `presym.inc` in existing header files | KOBAYASHI Shuji | |
| Addressed an issue where existing programs linking `libmruby.a` could only be built by adding `<build-dir>/include` to compiler's include path. | |||
| 2021-01-10 | Fix CI failure on Windows environment. | Yukihiro "Matz" Matsumoto | |
| `1L` on Windows means `32 bit int`. | |||
| 2021-01-09 | Fix wrong float to rational conversion in 32 bit mode. | Yukihiro "Matz" Matsumoto | |
| 2021-01-09 | Convert float number to rational by decoding mantissa. | Yukihiro "Matz" Matsumoto | |
| 2021-01-02 | Avoid `int64_t` on 32 bit platforms. | Yukihiro "Matz" Matsumoto | |
| 2021-01-02 | Check `NaN` and `Infinity` before converting `Float` to `Rational`. | Yukihiro "Matz" Matsumoto | |
| 2020-12-24 | Avoid division by zero in `rational_to_f()`. | Yukihiro "Matz" Matsumoto | |
| 2020-12-15 | refactor: remove trailing whitespace from C, Header, Ruby and YAML files | John Bampton | |
| Lint | |||
| 2020-11-26 | Avoid integer overflow in `rational_new`. | Yukihiro "Matz" Matsumoto | |
| 2020-11-17 | Check division overflow (`MRB_INT_MIN` and `-1`). | Yukihiro "Matz" Matsumoto | |
| 2020-11-04 | Add cast to silence int conversion warnings. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Fix warning from VC regarding implicit int conversion. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Made `Rational` overhaul. | Yukihiro "Matz" Matsumoto | |
| - Implement `Rational()` in `C`. - Use `float` to `rational` conversion function taken from: https://rosettacode.org/wiki/Convert_decimal_number_to_rational#C | |||
| 2020-10-12 | Handle integer overflow in `rational_s_new`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Use `mrb_int_value()` instead of `mrb_fixnum_value()`. | Yukihiro "Matz" Matsumoto | |
| Where fixnum overflow can happen. | |||
| 2020-10-12 | Reorganize `Integer` system. | Yukihiro "Matz" Matsumoto | |
| - Integrate `Fixnum` and `Integer` - Remove `Integral` - `int / int -> int` - Replace `mrb_fixnum()` to `mrb_int()` - Replace `mrb_fixnum_value()` to `mrb_int_value()`. - Use `mrb_integer_p()` instead of `mrb_fixnum_p()` | |||
| 2020-10-12 | Integrate `Fixnum` class into `Integer` class | dearblue | |
| * The `Fixnum` constant is now an alias for the `Integer` class. * Remove `struct mrb_state::fixnum_class` member. If necessary, use `struct mrb_state::integer_class` instead. | |||
| 2020-10-12 | Rename float configuration option names. | Yukihiro "Matz" Matsumoto | |
| - `MRB_WITHOUT_FLOAT` => `MRB_NO_FLOAT` - `MRB_USE_FLOAT` => `MRB_USE_FLOAT32` The former is to use `USE_XXX` naming convention. The latter is to make sure `float` is 32bit float and not floating point number in general. | |||
| 2020-10-12 | Add explicit cast to `DROP_PRECISION` macro in `rational.c`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Use `mrb->eStandardError` instead of `mrb_exc_get()`. | Yukihiro "Matz" Matsumoto | |
| 2020-06-04 | Add explicit cast to `DROP_PRECISION` macro in `rtional.c`. | Yukihiro "Matz" Matsumoto | |
