- 12 Oct, 2020 40 commits
-
-
Yukihiro "Matz" Matsumoto authored
`MRB_TRY()` does not work when compiled by C compiler with `cxx_exception`, due to the mixture of `setjmp()` used by `mirb.c` and `throw` used by the core. The original intension of e2e6554b is to protect code from signal interruption, but the signal interruption is not well-defined in mruby anyway.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
Also fixed the size calculation of `irep` dump, that could cause memory corruption.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
To allow C++ compilation. Fix suggested by @dearblue.
-
Yukihiro "Matz" Matsumoto authored
Redirect `mrb_str_to_str` to `mrb_obj_as_string` via C macro. Inspired by #5082
-
Yukihiro "Matz" Matsumoto authored
Those types are `uint16_t` in definition. Also we no longer need padding for `iseq`.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
The fix was proposed by @dearblue
-
Yukihiro "Matz" Matsumoto authored
The fix was proposed by @dearblue
-
Yukihiro "Matz" Matsumoto authored
The fix was proposed by @dearblue
-
Yukihiro "Matz" Matsumoto authored
Need to support `int / int -> int` update.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
Target `host-debug` to use `host` internal target with debugging configuration.
-
Yukihiro "Matz" Matsumoto authored
The PR was from @cubicdaiya.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
-
Kondo Uchio authored
-
Uchio Kondo authored
-
Kondo Uchio authored
-
Uchio Kondo authored
e.g. symbols like "foo[]=" make invalid C codes
-
Yukihiro "Matz" Matsumoto authored
The original PR was skipping Ruby comments as well, but caused some issues in test suites.
-
Yukihiro "Matz" Matsumoto authored
- `mrb_check_intern()` to return `mrb_value` - `mrb_intern_check()` to return `mrb_sym` [NEW] Other new functions: - `mrb_intern_check_cstr()` - `mrb_intern_check_str()`
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
Rename new functions: - `mrb_convert_type(mrb,val,type,tname,method)` => `mrb_type_convert(mrb,val,type,tname,method)` - `mrb_check_convert_type(mrb,val,type,tname,method)` => `mrb_type_convert_check(mrb,val,type,tname,method)` Old names are defined by macros (support `tname` drop and `char*` => `mrb_sym` conversion).
-
Yukihiro "Matz" Matsumoto authored
On platforms where `sizeof(long)` is 4, casting `(long)` can lose data or sign information.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
- Implement `Rational()` in `C`. - Use `float` to `rational` conversion function taken from: https://rosettacode.org/wiki/Convert_decimal_number_to_rational#C
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
The mixture causes warnings on 64 bit Windows (VC).
-
Yukihiro "Matz" Matsumoto authored
You can now use `NEXT` within `switch` statement like 7c087eb.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
On non-`gcc` compatible environment, `NEXT` is translated to `break`.
-
Yukihiro "Matz" Matsumoto authored
-
Yukihiro "Matz" Matsumoto authored
Linux `atan2(3)` man page says: ``` If y is positive infinity (negative infinity) and x is positive infinity, +pi/4 (-pi/4) is re‐ turned. ``` But on Microsoft VC/MinGW, `atan2()` returns `NaN` if either of arguments is infinite. So we skip those tests on the platforms.
-
Yukihiro "Matz" Matsumoto authored
-