summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2021-12-29common.h: include `<sys/types.h>` for `ssize_t`; #5617Yukihiro "Matz" Matsumoto
2021-12-29array.c: fix `mrb_ary_shift_m` initialization bug.Yukihiro "Matz" Matsumoto
The `ARY_PTR` and `ARY_LEN` may be modified in `mrb_get_args`.
2021-12-29Merge pull request #5616 from mimaki/refine-ssize_t-on-msvcYukihiro "Matz" Matsumoto
Fix build error and refine definition of `ssize_t` on MSVC.
2021-12-28Fix build error and refine definition of `ssize_t` on MSVC.mimaki
2021-12-28Merge pull request #5614 from jbampton/patch-1Yukihiro "Matz" Matsumoto
Fix word casing in the README
2021-12-28Merge pull request #5615 from jbampton/pre-commit-autoupdateYukihiro "Matz" Matsumoto
pre-commit autoupdate
2021-12-28pre-commit autoupdateJohn Bampton
https://pre-commit.com/#pre-commit-autoupdate
2021-12-28Fix word casing in the READMEJohn Bampton
Changed `Actual` to `actual` mid sentence
2021-12-27class.c: remove `mt_elem` structure to avoid alignment gaps.Yukihiro "Matz" Matsumoto
2021-12-27variable.c: need to initialize `size` of iv table.Yukihiro "Matz" Matsumoto
2021-12-27parse.y: prohibit numbered parameters as arguments; fix #5605Yukihiro "Matz" Matsumoto
2021-12-26Merge pull request #5612 from dearblue/compar-extYukihiro "Matz" Matsumoto
Fix summary typo for `mrbgems/mruby-compar-ext`
2021-12-25Fix summary typo for `mrbgems/mruby-compar-ext`dearblue
2021-12-24parse.y: allow arguments start with `_` to appear multiple times; fix #5604Yukihiro "Matz" Matsumoto
2021-12-23pack.c: check integer overflow in unpacking BER; fix #5611Yukihiro "Matz" Matsumoto
2021-12-22parse.y: adjust `void_expr_error()`; fix #5606Yukihiro "Matz" Matsumoto
Allow void expression on some places e.g. right hand of `rescue` modifier. In addition, checks added on some places, e.g. left hand of logical operators.
2021-12-21Merge pull request #5610 from ↵Yukihiro "Matz" Matsumoto
mruby/dependabot/github_actions/github/super-linter-4.8.5 build(deps): bump github/super-linter from 4.8.4 to 4.8.5
2021-12-21build(deps): bump github/super-linter from 4.8.4 to 4.8.5dependabot[bot]
Bumps [github/super-linter](https://github.com/github/super-linter) from 4.8.4 to 4.8.5. - [Release notes](https://github.com/github/super-linter/releases) - [Changelog](https://github.com/github/super-linter/blob/main/docs/release-process.md) - [Commits](https://github.com/github/super-linter/compare/v4.8.4...v4.8.5) --- updated-dependencies: - dependency-name: github/super-linter dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]>
2021-12-20codegen.c: generate `OP_SETIDX`; close #5608Yukihiro "Matz" Matsumoto
Note that the current implantation only calls `[]=` method. No performance improvement. Just 2 bytes less byte code per assignment.
2021-12-20vm.c: fix a half-baked implementation of `OP_SETIDX`; ref #5608Yukihiro "Matz" Matsumoto
2021-12-20codedump.c: adjust the position of local variable labels.Yukihiro "Matz" Matsumoto
2021-12-19Merge pull request #5602 from dearblue/no-ext-opsYukihiro "Matz" Matsumoto
Add `bin/mrbc --no-ext-ops` switch
2021-12-18Merge pull request #5603 from dearblue/codegen_errorYukihiro "Matz" Matsumoto
Print error before cleanup in `codegen_error()`
2021-12-17Print error before cleanup in `codegen_error()`dearblue
Previously, it always pointed to the highest scope as the location of the error. - example code `code.rb` ```ruby huge_num = "1" + "0" * 300; eval <<CODE, nil, "test.rb", 1 class Object module A #{huge_num} end end CODE ``` - Before this patch ```console % bin/mruby code.rb test.rb:1: integer too big trace (most recent call last): [1] code.rb:1 code.rb:1:in eval: codegen error (ScriptError) ``` - After this patch ```console % bin/mruby code.rb test.rb:3: integer too big trace (most recent call last): [1] code.rb:1 code.rb:1:in eval: codegen error (ScriptError) ```
2021-12-17Add `bin/mrbc --no-ext-ops` switchdearblue
Print an error if `OP_EXT[123]` is needed when generating mruby binary. This may be useful for mruby/c. Inspired by #5590.
2021-12-17Merge pull request #5601 from ↵Yukihiro "Matz" Matsumoto
mruby/dependabot/github_actions/actions/upload-artifact-2.3.1 build(deps): bump actions/upload-artifact from 2.2.4 to 2.3.1
2021-12-16build(deps): bump actions/upload-artifact from 2.2.4 to 2.3.1dependabot[bot]
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2.2.4 to 2.3.1. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v2.2.4...v2.3.1) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]>
2021-12-16string-ext.c: fix memory leak in `tr_parse_pattern`.Yukihiro "Matz" Matsumoto
2021-12-15boxing_nan.h: remove false description in the comment [ci skip]Yukihiro "Matz" Matsumoto
Ref #5597
2021-12-15Merge pull request #5599 from dearblue/loss-digitsYukihiro "Matz" Matsumoto
Avoid losing the upper digits for mruby binary
2021-12-14proc.c: add `mrb_state` argument to `mrb_proc_copy()`.Yukihiro "Matz" Matsumoto
The function may invoke the garbage collection and it requires `mrb_state` to run.
2021-12-13Avoid losing the upper digits for mruby binarydearblue
- `rlen` keeps 16 bits. - `ilen` keeps 32 bits. Note that this change will break mruby binary format compatibility.
2021-12-13string-ext/string.c: fixed memory leak from `tr` on exception.Yukihiro "Matz" Matsumoto
With some refactoring. * `ret` argument is always non-nil, so no check needed. * move allocation check right after malloc(). * simplify conditions.
2021-12-13benchmark/bm_ao_render.rb: enable specifying the size of the image.Yukihiro "Matz" Matsumoto
2021-12-13variable.c: resurrect `size` member in `iv_tbl`.Yukihiro "Matz" Matsumoto
The existence of this member reduces memory and execution time.
2021-12-13class.c: increase first allocated page size.Yukihiro "Matz" Matsumoto
2021-12-13class.c: implement method cache (off by default).Yukihiro "Matz" Matsumoto
2021-12-13Merge pull request #5598 from dearblue/array-combinationsYukihiro "Matz" Matsumoto
Add `Array#{repeated_combination,repeated_permutation}` methods
2021-12-12Add `Array#{repeated_combination,repeated_permutation}` methodsdearblue
Ruby 1.9.2 feature. ref: https://docs.ruby-lang.org/ja/3.1.0/method/Array/i/repeated_combination.html ref: https://docs.ruby-lang.org/ja/3.1.0/method/Array/i/repeated_permutation.html
2021-12-09irep.h: `c` operand may require 16 bits for `BSS` operand type.Yukihiro "Matz" Matsumoto
fix #5593
2021-12-08vm.c (check_method_noarg): the value at `kidx` may not be a hash.Yukihiro "Matz" Matsumoto
2021-12-08vm.c: use `check_method_noarg()` to reduce code duplication; ref #5584Yukihiro "Matz" Matsumoto
2021-12-08vm.c: fix `mrb_ci_kidx`.Yukihiro "Matz" Matsumoto
It used to return wrong value for 14 positional arguments.
2021-12-08variable.c: fix clang integer warning.Yukihiro "Matz" Matsumoto
2021-12-07mruby-compiler/mrbgem.rake: fix regexp pattern; close #5591Yukihiro "Matz" Matsumoto
2021-12-07variable.c: avoid redundant iv scan in `mrb_mod_cv_set()`.Yukihiro "Matz" Matsumoto
Now `iv_get()` returns `pos+1` if it finds the entry, so you don't need to call `iv_put()`. You can replace the entry value by assigning to `t->ptr[pos-1]`.
2021-12-06bm_ao_rendar.rb: use instance variables instead of class variables.Yukihiro "Matz" Matsumoto
Class variables are slower than instance variables of classes.
2021-12-04variable.c: reduce array access in iv hash table.Yukihiro "Matz" Matsumoto
2021-12-03variable.c: avoid `mrb_undef_value()` for delete entries.Yukihiro "Matz" Matsumoto
Instead embed deleted flag in the key (`mrb_sym` only occupies 30bits).
2021-12-03variable.c: remove `size` member from `iv_tbl` to reduce memory.Yukihiro "Matz" Matsumoto
`iv_size()` is approximated by the allocated table size.