| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2020-11-21 | Test each combination of boxing, `mrb_int` size, and archtecture. | Yukihiro "Matz" Matsumoto | |
| Boxing: * `MRB_NO_BOXING` (`mrb_value` packed in `struct`) * `MRB_WORD_BOXING` (`mrb_value` packed in `struct`) default * `MRB_NAN_BOXING` (`mrb_value` packed in `double`) `mrb_int` size * `MRB_INT32` (`int32_t` as `mrb_int`) * `MRB_INT64` (`int64` as `mrb_int`) conflict with `MRB_NAN_BOXING' Architecture * `MRB_64BIT` (`sizeof(void*)` is 64 bits) * `MRB_32BIT` (`sizeof(void*)` is 32 bits) | |||
| 2020-11-21 | Specify `conf` explicitly for `enable_debug`. | Yukihiro "Matz" Matsumoto | |
| 2020-11-21 | Update `Float#to_s` to keep trailing zero as CRuby does; ref 68cebb6 | Yukihiro "Matz" Matsumoto | |
| 2020-11-21 | Merge pull request #5156 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/improve-determining-C++-compiler-in-tasks-toolchains-gcc.rake Improve determining C++ compiler in `tasks/toolchains/gcc.rake` | |||
| 2020-11-21 | Improve determining C++ compiler in `tasks/toolchains/gcc.rake` | KOBAYASHI Shuji | |
| * Consider CC envvar as C compiler on which to make the decision. * Consider the case where C compiler is `ccache gcc`, etc. | |||
| 2020-11-20 | Merge pull request #5155 from shuujii/refactor-mrblib-mrblib.rake | Yukihiro "Matz" Matsumoto | |
| Refactor `mrblib/mrblib.rake` | |||
| 2020-11-20 | Refactor `mrblib/mrblib.rake` | KOBAYASHI Shuji | |
| 2020-11-20 | Merge pull request #5153 from shuujii/refactor-src-mruby_core.rake | Yukihiro "Matz" Matsumoto | |
| Refactor `src/mruby_core.rake` | |||
| 2020-11-20 | Merge pull request #5152 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/move-lib-mruby-core-ext.rb-to-lib-mruby-core_ext.rb-for-consistency Move `lib/mruby-core-ext.rb` to `lib/mruby/core_ext.rb` for consistency | |||
| 2020-11-20 | Refactor `src/mruby_core.rake` | KOBAYASHI Shuji | |
| 2020-11-20 | Move `lib/mruby-core-ext.rb` to `lib/mruby/core_ext.rb` for consistency | KOBAYASHI Shuji | |
| 2020-11-19 | Merge pull request #5150 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/allow-bintest-even-if-build-name-is-not-host Allow `bintest` even if build name is not `host` | |||
| 2020-11-19 | Allow `bintest` even if build name is not `host` | KOBAYASHI Shuji | |
| 2020-11-18 | Merge pull request #5146 from shuujii/fix-integer-overflow-error-in-mrdb-test | Yukihiro "Matz" Matsumoto | |
| Fix integer overflow error in mrdb test | |||
| 2020-11-18 | Fix integer overflow error in mrdb test | KOBAYASHI Shuji | |
| 2020-11-18 | Merge pull request #5149 from mruby/revert-5147-patch1 | Yukihiro "Matz" Matsumoto | |
| Revert "Check if irep->reps is NULL in lv_defined_p" | |||
| 2020-11-18 | Revert "Check if irep->reps is NULL in lv_defined_p" | Yukihiro "Matz" Matsumoto | |
| 2020-11-18 | Use `mrb_int_value()` instead of `mrb_fixnum_value()`; fix #5142 | Yukihiro "Matz" Matsumoto | |
| 2020-11-18 | Merge pull request #5147 from hifoolno/patch1 | Yukihiro "Matz" Matsumoto | |
| Check if irep->reps is NULL in lv_defined_p | |||
| 2020-11-18 | Check if irep->reps is NULL in lv_defined_p | Zhang Xiaohui | |
| 2020-11-18 | Merge pull request #5143 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/use-mrb_int_value-instead-of-mrb_fixnum_value-in-src-hash.c Use `mrb_int_value` instead of `mrb_fixnum_value` in `src/hash.c` | |||
| 2020-11-18 | Merge pull request #5145 from shuujii/remove-unused-MRubyBuild-enable_bintest= | Yukihiro "Matz" Matsumoto | |
| Remove unused `MRuby::Build#enable_{bin,}test=` | |||
| 2020-11-18 | Merge pull request #5144 from hifoolno/master | Yukihiro "Matz" Matsumoto | |
| Check if irep->reps is NULL | |||
| 2020-11-18 | Remove unused `MRuby::Build#enable_{bin,}test=` | KOBAYASHI Shuji | |
| The writers seem to be unnecessary because `MRuby::Build#enable_{bin,}test` are used from the beginning. | |||
| 2020-11-18 | Check if irep->reps is NULL | Zhang Xiaohui | |
| 2020-11-18 | Use `mrb_int_value` instead of `mrb_fixnum_value` in `src/hash.c` | KOBAYASHI Shuji | |
| 2020-11-18 | Retrieve `irep` from `proc` after `MRB_PROC_CFUNC_P` check; ref #5140 | Yukihiro "Matz" Matsumoto | |
| 2020-11-17 | Revert half of 9fbf0ef8. | Yukihiro "Matz" Matsumoto | |
| I misunderstand the meaning of #4483. Sorry. | |||
| 2020-11-17 | Check division overflow (`MRB_INT_MIN` and `-1`). | Yukihiro "Matz" Matsumoto | |
| 2020-11-17 | Merge pull request #5141 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/fix-deprecated-set-env-command-error-on-GitHub-Actions Fix deprecated `set-env` command error on GitHub Actions [ci skip] | |||
| 2020-11-17 | Fix deprecated `set-env` command error on GitHub Actions [ci skip] | KOBAYASHI Shuji | |
| I tried `$GITHUB_PATH` and `$GITHUB_ENV` instead of `set-env`, but for some reason path was not recognized, so I changed to using `ACTIONS_ALLOW_UNSECURE_COMMANDS`. | |||
| 2020-11-17 | Overflown integers should not be fall back to float values. | Yukihiro "Matz" Matsumoto | |
| 2020-11-17 | Detect overflow in `flo_shift()`. | Yukihiro "Matz" Matsumoto | |
| 2020-11-17 | Refactoring integer ranges. | Yukihiro "Matz" Matsumoto | |
| - Remove `mrb_ssize` - Fix `MRB_FIXNUM_{MIN,MAX}` to 32 bits on `MRB_NAN_BOXING` | |||
| 2020-11-17 | Scan all active C source files; ref 600e333 | Yukihiro "Matz" Matsumoto | |
| In addition, `include/mruby.h` will be scanned for error class symbols. | |||
| 2020-11-17 | Refactor integer division. | Yukihiro "Matz" Matsumoto | |
| 2020-11-17 | Simplify `mrb_num_div_int()`. | Yukihiro "Matz" Matsumoto | |
| 2020-11-16 | Allow `int` size combinations for `MRB_WORD_BOXING`. | Yukihiro "Matz" Matsumoto | |
| - `MRB_64BIT` and `MRB_INT32` - `MRB_32BIT` and `MRB_INT64` | |||
| 2020-11-16 | Merge pull request #5137 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/use-uintptr_t-instead-of-unsigned-long-in-include-mruby-boxing_word.h Use `uintptr_t` instead of `unsigned long` in `include/mruby/boxing_word.h` | |||
| 2020-11-16 | Merge pull request #5139 from shuujii/avoid-undefined-behavior | Yukihiro "Matz" Matsumoto | |
| Avoid undefined behavior | |||
| 2020-11-16 | Merge pull request #5138 from shuujii/simplify-obj_free | Yukihiro "Matz" Matsumoto | |
| Simplify `obj_free` | |||
| 2020-11-16 | Avoid undefined behavior | KOBAYASHI Shuji | |
| ### ASAN report (`MRB_INT32`) ```console $ bin/mruby -ve '-0x40000000' mruby 3.0.0preview (2020-10-16) 00001 NODE_SCOPE: 00001 NODE_BEGIN: 00001 NODE_NEGATE: 00001 NODE_INT 40000000 base 16 irep 0x6070000001e0 nregs=2 nlocals=1 pools=0 syms=0 reps=0 iseq=9 file: -e /mruby/src/codedump.c:173:49: runtime error: left shift of 49152 by 16 places cannot be represented in type 'int' SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /mruby/src/codedump.c:173:49 in 1 000 OP_LOADI32 R1 -1073741824 1 006 OP_RETURN R1 1 008 OP_STOP /mruby/src/vm.c:1138:7: runtime error: left shift of 49152 by 16 places cannot be represented in type 'mrb_int' (aka 'int') SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /mruby/src/vm.c:1138:7 in ``` | |||
| 2020-11-16 | Simplify `obj_free` | KOBAYASHI Shuji | |
| 2020-11-16 | Use `uintptr_t` instead of `unsigned long` in `include/mruby/boxing_word.h` | KOBAYASHI Shuji | |
| `mrb_bool` on LLP64 environment seems to become false if, for example, `mrb_value` is a pointer whose lower 32 bits are 0. | |||
| 2020-11-15 | Merge pull request #5135 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/fix-paths-of-gem-files-to-be-scanned-for-presym Fix paths of gem files to be scanned for presym | |||
| 2020-11-15 | Merge pull request #5134 from ↵ | Yukihiro "Matz" Matsumoto | |
| shuujii/fix-that-large-integer-is-not-GCed-with-Word-boxing Fix that large integer is not GCed with Word-boxing | |||
| 2020-11-15 | Fix paths of gem files to be scanned for presym | KOBAYASHI Shuji | |
| When building from outside `MRUBY_ROOT` (e.g. `rake -f`), gem files were not scanned. | |||
| 2020-11-15 | Fix that large integer is not GCed with Word-boxing | KOBAYASHI Shuji | |
| ### Example (32-bit Word-boxing) ```ruby # example.rb int_count = ObjectSpace.count_objects[:T_INTEGER]||0 int = 1<<30 p (ObjectSpace.count_objects[:T_INTEGER]||0) - int_count int = nil GC.start p (ObjectSpace.count_objects[:T_INTEGER]||0) - int_count ``` #### Before this patch: ```console $ bin/mruby example.rb 1 1 ``` #### After this patch: ```console $ bin/mruby example.rb 1 0 ``` | |||
| 2020-11-15 | Fixed further wrong condition in overflow detection. | Yukihiro "Matz" Matsumoto | |
| 2020-11-14 | Fixed wrong condition in `mrb_int_mul_overflow()`. | Yukihiro "Matz" Matsumoto | |
