summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2021-01-17Add tests for `Integer#quo` and `Float#quo`; #5268Yukihiro "Matz" Matsumoto
2021-01-17Fix `int_quo` to do float division; fix #5268Yukihiro "Matz" Matsumoto
2021-01-17Define `Rational#quo`; fix #5268Yukihiro "Matz" Matsumoto
2021-01-17Make `mrb_to_flo()` to convert objects, not integer, not float; #5268Yukihiro "Matz" Matsumoto
Thinking `Ratinal` and `Complex` in mind.
2021-01-16Merge pull request #5292 from dearblue/objspace-memsizeYukihiro "Matz" Matsumoto
Fix NULL pointer dereference with mruby-os-memsize and mruby-method
2021-01-16Fix NULL pointer dereference with mruby-os-memsize and mruby-methoddearblue
If it gets an insubstantial method object with `obj.method`, it will raise a `SIGSEGV` with `ObjectSpace.memsize_of(method)`.
2021-01-16Merge pull request #5291 from dearblue/fix-5272Yukihiro "Matz" Matsumoto
Fixed stack position of return value; ref #5272
2021-01-16Fixed stack position of return value; ref #5272dearblue
When I `#call` the "proc" object created by the `mrb_proc_new_cfunc()` function from Ruby space, the return value did not go into the correct stack position. This can destroy the calling variable. This issue is now caused by #5272. sorry.
2021-01-15Avoid syntax error regarding colons in the expression; fix #5290Yukihiro "Matz" Matsumoto
Reported and inspired by @hasumikin; based on CRuby's `parse.y`.
2021-01-14Merge pull request #5273 from dearblue/fiberYukihiro "Matz" Matsumoto
Capture the return value of `Fiber.yield` via C; ref #5261
2021-01-13Rational denominator should not be zero.Yukihiro "Matz" Matsumoto
2021-01-12Capture the return value of `Fiber.yield` via C; ref #5261dearblue
2021-01-12Merge pull request #5289 from dearblue/sockaddr_unYukihiro "Matz" Matsumoto
Initialize all area of `struct sockaddr_un`
2021-01-12Merge branch 'dearblue-reorganize-ci'Yukihiro "Matz" Matsumoto
2021-01-12Initialize all area of `struct sockaddr_un`dearblue
Members of `struct sockaddr_un` are requesting the definitions of `sun_family` and `sun_path`. https://pubs.opengroup.org/onlinepubs/009696699/basedefs/sys/un.h.html But the other members are optional and environment dependent. In fact, other members are defined in the BSD series. from NetBSD-9.1 <https://github.com/NetBSD/src/blob/da504f75982b244b2288bc9970bbc203bd77a9c1/sys/sys/un.h#L49-L53> ```c struct sockaddr_un { unsigned char sun_len; /* sockaddr len excluding NUL */ sa_family_t sun_family; /* AF_UNIX */ char sun_path[104]; /* path name (gag) */ }; ```
2021-01-12Merge branch 'reorganize-ci' of https://github.com/dearblue/mruby into ↵Yukihiro "Matz" Matsumoto
dearblue-reorganize-ci
2021-01-12Merge pull request #5288 from ↵Yukihiro "Matz" Matsumoto
shuujii/fix-that-sometimes-parallel-build-of-test-code-fails Fix that sometimes parallel build of test code fails; fix #5284
2021-01-12Fix a signed shift bug on 32 bit platforms; ref e1c9e7eYukihiro "Matz" Matsumoto
2021-01-12Silence Windows warnings (cast and `setmode`).Yukihiro "Matz" Matsumoto
2021-01-12Fix that sometimes parallel build of test code fails; fix #5284KOBAYASHI Shuji
The cause is that `mrbgem.rake` of` mruby-test` gem is loaded when test code is requested to be built, but when `mrbgem.rake` is loaded, `MRuby::Gem.current` is updated, which is not thread safe. Address this by not loading `mrbgem.rake` in parallel.
2021-01-12Save `NOARG` information in `struct mt_elem`; fix #5257Yukihiro "Matz" Matsumoto
2021-01-12Changed packing format of inline symbols.Yukihiro "Matz" Matsumoto
To make inline symbols packed in 30 bits.
2021-01-11Merge pull request #5285 from dearblue/io-unimpsYukihiro "Matz" Matsumoto
Remove functions for unimplemented methods
2021-01-11Merge pull request #5286 from dearblue/io-popenYukihiro "Matz" Matsumoto
Integrate the argument parsing part of `IO.popen`
2021-01-11Integrate the argument parsing part of `IO.popen`dearblue
2021-01-11Remove functions for unimplemented methodsdearblue
- Use `mrb_notimplement_m()` instead. - Hide the unused `option_to_fd()` when `TARGET_OS_IPHONE` is enabled.
2021-01-11Merge pull request #5283 from shuujii/add-missing-cast-in-ea_next_capa_forYukihiro "Matz" Matsumoto
Add missing cast in `ea_next_capa_for`
2021-01-11Merge pull request #5282 from dearblue/mruby-config-crossYukihiro "Matz" Matsumoto
Create a `mruby-config` that can be run on the host by cross-building
2021-01-11Add missing cast in `ea_next_capa_for`KOBAYASHI Shuji
2021-01-11Create a `mruby-config` that can be run on the host by cross-buildingdearblue
The output directory will be `host-bin`, so it will be output as `<build-dir>/host-bin/mruby-config`. It's still not available for target devices.
2021-01-11Merge pull request #5281 from ↵Yukihiro "Matz" Matsumoto
shuujii/remove-the-definition-of-mrb_uint-in-numeric.h-that-is-no-longer-needed Remove the definition of `mrb_uint` in `numeric.h` that is no longer needed
2021-01-11Merge pull request #5280 from ↵Yukihiro "Matz" Matsumoto
shuujii/remove-unneeded-check-to-mrbtest-in-tasks-presym.rake Remove unneeded check to `mrbtest` in `tasks/presym.rake`
2021-01-11Remove the definition of `mrb_uint` in `numeric.h` that is no longer neededKOBAYASHI Shuji
2021-01-11Remove unneeded check to `mrbtest` in `tasks/presym.rake`KOBAYASHI Shuji
With the change in #5267, `build.products` no longer contains `mrbtest` when `tasks/presym.rake` is loaded.
2021-01-11Merge pull request #5279 from ↵Yukihiro "Matz" Matsumoto
shuujii/remove-unneeded-mruby-test-gem-in-build_config-no-float.rb Remove unneeded `mruby-test` gem in `build_config/no-float.rb` [ci skip]
2021-01-11Remove unneeded `mruby-test` gem in `build_config/no-float.rb` [ci skip]KOBAYASHI Shuji
Use `enable_test` to enable the test.
2021-01-11Merge pull request #5278 from dearblue/annotationYukihiro "Matz" Matsumoto
Fix annotations [ci skip]
2021-01-11Fix annotations [ci skip]dearblue
2021-01-10Fix CI failure on Windows environment.Yukihiro "Matz" Matsumoto
`1L` on Windows means `32 bit int`.
2021-01-10Fix mixture of inline `int` declaration in `for` statement.Yukihiro "Matz" Matsumoto
2021-01-10Merge pull request #5271 from shuujii/fix-build-error-in-cross-build-with-presymYukihiro "Matz" Matsumoto
Fix build error in cross-build with presym
2021-01-10Merge pull request #5275 from dearblue/read_irepYukihiro "Matz" Matsumoto
Replace `tempirep` with `RProc`
2021-01-10Merge pull request #5274 from ↵Yukihiro "Matz" Matsumoto
shuujii/fix-the-condition-to-remove-mrbtest-when-rake-clean Fix the condition to remove `mrbtest` when `rake clean`
2021-01-10Replace `tempirep` with `RProc`dearblue
Previously I used the `RData` object to avoid a memory leak in `mrb_irep` if `src/load.c` failed. ref: https://github.com/mruby/mruby/pull/4250 commit: f1523d24042ca3416dc5b9be7b3fc220ddaed896 Considering that the `RProc` object will be created in the subsequent process, it is preferable to create the `RProc` object from the beginning. Along with this, the inside of `read_irep()` is replaced with the processing centered on the `RProc` object. The global function that returns the `mrb_irep` pointer is still provided for compatibility.
2021-01-10Revert "Revert "Simplify full-core.gembox""Yukihiro "Matz" Matsumoto
This reverts commit 37d795dec7b495d418dc2f9020cf980c158ba9ed. This reapplies e20d652 (#4202), which is reverted, but its issue was solved by 1d8456f.
2021-01-10Fix the condition to remove `mrbtest` when `rake clean`KOBAYASHI Shuji
2021-01-10Revert "Save&restore execution point (`pc`) in `c->cibase->pc`; fix #5261"dearblue
This reverts commit a0c1e075e35c358d21934c28ff1bec4153502409. This is because the `mrb_callinfo::pc` has been reorganized, resulting in over-correction.
2021-01-10Unified `pc` and `err` of `mrb_callinfo`dearblue
This enhances self-containment. - Changed the `mrb_callinfo::pc` field to point to itself. Previously it indicated the return destination of the previous call level. `mrb_callinfo::pc` will now hold the address to its own `proc->body.irep->iseq`. - Removed `mrb_callinfo::err` field. This is because `mrb_callinfo::pc - 1` is semantically the same as the previous `err`. - The `pc0` and `pc_save` variables in `mrb_vm_exec()` are no longer needed and have been deleted. - It removes the argument because `cipush()` doesn't need to save the previous `pc`.
2021-01-10Changes `stackent` to `stack` of `mrb_callinfo`dearblue
This enhances self-containment. Previously `mrb_context::stack` had the current call level stack, but now it owns it. The `mrb_context::stack` field, which is no longer needed, will be removed.
2021-01-10Unified `target_class` and `env` of `mrb_callinfo`dearblue
If there is `env`, `env->c` means `target_class`.