summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2020-11-03Use C99 `__func__` instead of `__FUNCTION__`; #5107Yukihiro "Matz" Matsumoto
2020-11-03Reduce recompilation when updating presym target filesKOBAYASHI Shuji
Fix that updating presym target files would recompile almost all files even if symbols did not change.
2020-11-03Fix dependencies of `y.tab.o`KOBAYASHI Shuji
In the case of `y.tab.o`, `y.tab.d` was not read, so `y.tab.c` was not recompiled by updating header files. It seemed that the cause was overwriting the rake rule, so I deleted unnecessary settings.
2020-11-03Add new instructions to handle symbols/literals >255; fix #5109Yukihiro "Matz" Matsumoto
New instructions: * OP_LOADL16 * OP_LOADSYM16 * OP_STRING16 Size of pools, symbols are `int16_t` but offset representation in the bytecode was 8 bits. Size of child `irep` array is `int16_t`, too but this change does not address it.
2020-11-02format '%p' expects argument of type 'void *'; #5107Yukihiro "Matz" Matsumoto
2020-11-02ISO C does not allow extra ';' outside of a function; #5107Yukihiro "Matz" Matsumoto
2020-11-02Revert "Remove long-time deprecated `minirake`."Yukihiro "Matz" Matsumoto
`minirake` was still used in many occasions. This reverts commit 3847c7eb64229b13b72e3a15f30b04b1f9a09c3e.
2020-11-02Search gem from `MRUBY_ROOT` if build config is in `build_config`.Yukihiro "Matz" Matsumoto
2020-11-02Make Ranges frozen as Ruby3.0.Yukihiro "Matz" Matsumoto
2020-11-02Replace `R-assignment` by `single-line pattern matching`.Yukihiro "Matz" Matsumoto
Since `R-assignment` in CRuby is abandoned. Single-line pattern matching in `mruby` only matches single local variable at the moment. Currently it works as a right assignment to a local variable. It will be enhanced in the future.
2020-11-02Update the build description in `mruby3.md`.Yukihiro "Matz" Matsumoto
2020-11-02Merge pull request #5111 from shuujii/fix-parallel-buildYukihiro "Matz" Matsumoto
Fix parallel build
2020-11-02Fix parallel buildKOBAYASHI Shuji
When `rake -m` and so on are used to build in parallel, building may be started before presym files are generated. Then, for example, the following error occurs and this issue is fixed. ```console In file included from /Users/shuujii/mruby/mruby/include/mruby.h:92: /mruby/mruby/include/mruby/presym.h:16:10: fatal error: '../build/presym.inc' file not found #include <../build/presym.inc> ^~~~~~~~~~~~~~~~~~~~~ ```
2020-11-01Merge pull request #5110 from bshastry/fix-mruby-ossfuzz-buildYukihiro "Matz" Matsumoto
ossfuzz: Fix mruby include paths
2020-11-01ossfuzz: Fix mruby include pathsBhargava Shastry
2020-11-01Merge pull request #5108 from mimaki/display_preview_versionYukihiro "Matz" Matsumoto
Add `preview` to version.
2020-11-01Fix `mruby -v option` test.mimaki
2020-11-01Add `preview` to version.mimaki
2020-10-30Fix the condition to detect core mrbgems.Yukihiro "Matz" Matsumoto
2020-10-29Exclude symbols from `mruby-test` gem only used for tests.Yukihiro "Matz" Matsumoto
2020-10-29Use `mrb` dump format for non core mrbgems by default.Yukihiro "Matz" Matsumoto
If you confirm the gem is cdump safe, add `spec.enable_cdump` in `mrbgem.rake` file. Some external gems e.g. `mruby-mgem-template` do not work with cdump.
2020-10-29Use clear `if` instead of `unless` for condition.Yukihiro "Matz" Matsumoto
2020-10-29Use instance variable `@dir` instead of access method `dir`.Yukihiro "Matz" Matsumoto
2020-10-29Remove `mrblib_dir` and `objs_dir` configuration from gems.Yukihiro "Matz" Matsumoto
Always use `mrblib` and 'src` for directory names.
2020-10-29Merge pull request #5105 from shuujii/fix-typo-in-Range-lastYukihiro "Matz" Matsumoto
Fix typo in `Range#last`
2020-10-29Merge pull request #5104 from shuujii/fix-typo-in-doc-guides-compile.mdYukihiro "Matz" Matsumoto
Fix typo in `doc/guides/compile.md` [ci skip]
2020-10-29Fix typo in `Range#last`KOBAYASHI Shuji
2020-10-29Fix typo in `doc/guides/compile.md` [ci skip]KOBAYASHI Shuji
2020-10-29Use `default' gembox by default.Yukihiro "Matz" Matsumoto
I changed to use `full-core` gembox for debugging. It should have been reverted before `mruby3` branch was merged.
2020-10-29Remove long-time deprecated `minirake`.Yukihiro "Matz" Matsumoto
2020-10-29The path of the gem should be relative from `MRUBY_ROOT`.Yukihiro "Matz" Matsumoto
It was relative from the directory of the build configuration file, but the document says it's relative from `MRUBY_ROOT`. When the default configuration file was `MRUBY_ROOT/build_config.rb`, it was OK for most of the cases.
2020-10-29Move `build_config.rb` -> `build_config/default.rb`; ref #5098Yukihiro "Matz" Matsumoto
In addition, update the documents referring `build_config.rb` which is no longer used. The new `build_config.rb` describes the new configuration structure in the comment.
2020-10-29Restore original name for default `build_config_name`; ref #5098Yukihiro "Matz" Matsumoto
2020-10-29Use `Dir.glob` instead of `map`.Yukihiro "Matz" Matsumoto
2020-10-29Add beginless/endless ranges tests.Yukihiro "Matz" Matsumoto
2020-10-29Raise exception from `Range#first` with beginless ranges.Yukihiro "Matz" Matsumoto
2020-10-29Implement `Range#last` in `mruby-range-ext` in Ruby.Yukihiro "Matz" Matsumoto
This reduce unnecessary calls of `mrb_funcall()`.
2020-10-29Merge pull request #5098 from shuujii/revert-MRUBY_TARGET-mechanismYukihiro "Matz" Matsumoto
Revert `MRUBY_TARGET` mechanism; ref #5096
2020-10-29Merge pull request #5102 from dearblue/c++-excYukihiro "Matz" Matsumoto
Fixed build with `conf.enable_cxx_exception`
2020-10-29Merge pull request #5103 from shuujii/fix-mrb_obj_id-to-FloatYukihiro "Matz" Matsumoto
Fix `mrb_obj_id` to `Float`
2020-10-28Fix `mrb_obj_id` to `Float`KOBAYASHI Shuji
2020-10-28Fixed build with `conf.enable_cxx_exception`dearblue
The problem was manifested by commit 5069fb15e41998dffef8e0ba566b3a82be369ba3.
2020-10-24Merge pull request #5101 from dearblue/env-newYukihiro "Matz" Matsumoto
Reorganize `env_new()` as `mrb_env_new()`
2020-10-24Reorganize `env_new()` as `mrb_env_new()`dearblue
The `mrb_env_new()` function is a global function, but it is still treated as an internal function.
2020-10-23Merge pull request #5099 from dearblue/getargs-arrayYukihiro "Matz" Matsumoto
Prohibit array changes by "a"/"*" specifier of `mrb_get_args()`
2020-10-23Merge pull request #5100 from dearblue/getargv-arrayYukihiro "Matz" Matsumoto
Prohibit array changes by `mrb_get_argv()`
2020-10-22Prohibit array changes by `mrb_get_argv()`dearblue
The `mrb_get_argv()` function will now return `const mrb_value *`. This is because it is difficult for the caller to check if it is a splat argument (array object) and to write-barrier if necessary.
2020-10-22Prohibit array changes by "a"/"*" specifier of `mrb_get_args()`dearblue
The "a"/"*" specifier of the `mrb_get_args()` function will now return `const mrb_value *`. This is because it is difficult for the caller to check if it is an array object and write-barrier if necessary. And it requires calling `mrb_ary_modify()` on the unmodified array object, which is also difficult (this is similar to #5087).
2020-10-19Revert `MRUBY_TARGET` mechanism; ref #5096KOBAYASHI Shuji
* In explanation of mruby, the expression `build_config.rb` is frequently used including official documents, so I think that it will not make sense if the file is no longer used. * The `MRUBY_TARGET` mechanism seems to have little improvement, so I don't think it should be changed to avoid unnecessary confusion. * `MRUBY_TARGET` and `MRuby.targets` represent somewhat different things, so using the same term "target" is a bit confusing. The mechanism that can be written short when using a file under `build_config` (renamed from `target`) directory remains (`build_config/${MRUBY_CONFIG}.rb` is used if the path specified in `MRUBY_CONFIG` doesn't exist).
2020-10-16Add startless range (another part of #5085)Yukihiro "Matz" Matsumoto
Ref #5093; close #5085