| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-09-07 | Clear terminated space | dearblue | |
| 2018-09-05 | Add `argv` and `argc` check in `OP_ENTER`; fix #4102 | Yukihiro "Matz" Matsumoto | |
| `argv` may be retrieved from an array whose `ptr` is `NULL` when it`s empty. | |||
| 2018-09-04 | Add type casts to silence MSVC warnings. | Yukihiro "Matz" Matsumoto | |
| 2018-09-01 | Avoid warning in MSVC compilation. | Yukihiro "Matz" Matsumoto | |
| 2018-08-30 | Use `mrb_ensure_hash_type()` to check if an operand is a `Hash`; fix #4097 | Yukihiro "Matz" Matsumoto | |
| 2018-08-30 | Need to clear `mrb->c->cibase->ridx` (toplevel ridx) at L_STOP; fix #4092 | Yukihiro "Matz" Matsumoto | |
| This problem only appears when `mrb` executed multiple times (i.e. `mirb`) | |||
| 2018-08-30 | The operand of `OP_ARYDUP` may not be an array; fix #4094 | Yukihiro "Matz" Matsumoto | |
| This commit also fix #4096. | |||
| 2018-08-29 | Fix off-by-one error in `OP_EPUSH` and `OP_ONERR`; fix #4095 | Yukihiro "Matz" Matsumoto | |
| 2018-08-29 | Check the size of rescue&ensure stacks; ref #4088 | Yukihiro "Matz" Matsumoto | |
| Those small stack indexes can cause integer overflow. | |||
| 2018-08-25 | Reduce integer casting warnings. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | fixup! New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Hash splat `**` should not be ignored. | Yukihiro "Matz" Matsumoto | |
| Implemented by adding `OP_HASHCAT` that merges hashes. | |||
| 2018-08-25 | Fixed a bug in `OP_HASHADD`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Add bytecode support for `MRB_WORD_BOXING`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Remove utility functions: `mrb_vm_iv_{get,set}`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Remove `nregs` member from `mrb_callinfo`. | Yukihiro "Matz" Matsumoto | |
| This means reducing one word per a call frame. | |||
| 2018-07-31 | Removed unused instruction: `OP_KDICT`. | Yukihiro "Matz" Matsumoto | |
| 2018-07-31 | Fixed a small bug in keyword argument parsing. | Yukihiro "Matz" Matsumoto | |
| def m(a=1,**k) p [a,k] end m(a: 1) | |||
| 2018-07-30 | Keyword argument implemented. | Yukihiro "Matz" Matsumoto | |
| 2018-07-30 | New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-06-14 | Restore GC arena after raised exceptions; ref #4042 | Yukihiro "Matz" Matsumoto | |
| 2018-06-11 | Revert "No longer need to insert write barriers for fibers." | Yukihiro "Matz" Matsumoto | |
| This reverts commit c6736357a72049a0eb2a31ccabcc3cd2baba7c9e. The assumption was wrong and caused the issue; fix #4020 | |||
| 2018-06-11 | Retrieve `b` operand from the instruction (for debugging); ref #4020 | Yukihiro "Matz" Matsumoto | |
| 2018-06-07 | Merge pull request #4039 from i110/i110/fix-broken-lexical-variables | Yukihiro "Matz" Matsumoto | |
| fix broken lexical variables | |||
| 2018-06-07 | Export `stack_extend` function (renamed `mrb_stack_extend`); fix #3219 | Yukihiro "Matz" Matsumoto | |
| This change is required to support #4038. | |||
| 2018-06-06 | Revert "Fix heap use after free on mruby-aws-sigv4." | Ichito Nagata | |
| This reverts commit b8869498b7b1458af1cf2a5ccc7644849f826230. | |||
| 2018-06-03 | fix env->stack misadjusting | Ichito Nagata | |
| 2018-05-03 | `env` referred from top-level callinfo should not be unshared; fix #4019 | Yukihiro "Matz" Matsumoto | |
| Because `mirb` keeps top-level environment across each iteration. | |||
| 2018-04-28 | Update `OP_APOST` description; ref #4008 | Yukihiro "Matz" Matsumoto | |
| 2018-04-27 | Fix heap use after free on mruby-aws-sigv4. | Takeshi Watanabe | |
| 2018-04-13 | No longer need to insert write barriers for fibers. | Yukihiro "Matz" Matsumoto | |
| Those barriers are inserted to fix #3699 but all living fibers are marked from `mark_context()` anyway now. | |||
| 2018-04-13 | The #3871 fix caused wrong `break from proc-closure` error; fix #3996 | Yukihiro "Matz" Matsumoto | |
| 2018-04-13 | Add `fallthrough` comment to silence gcc warning. | Yukihiro "Matz" Matsumoto | |
| 2018-04-13 | Silence gcc initializer warning. | Yukihiro "Matz" Matsumoto | |
| 2018-04-11 | Check length of env stack before accessing upvar; fix #3995 | Yukihiro "Matz" Matsumoto | |
| 2018-04-05 | Adjust environment when `mrb_exec_irep` happened. | Takeshi Watanabe | |
| 2018-03-22 | Need to keep block argument in `mrb_exec_irep`; fix #3973 | Yukihiro "Matz" Matsumoto | |
| 2018-03-20 | Needed to set `ci->proc` in `OP_SUPER`; fix #3966 | Yukihiro "Matz" Matsumoto | |
| 2018-02-09 | Check `ensure` proc is NULL before calling; fix #3943 | Yukihiro "Matz" Matsumoto | |
| 2018-01-30 | Need not to pop `callinfo` on `OP_STOP`. | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | `super` should raise `TypeError` when the receiver is switched; fix #3911 | Yukihiro "Matz" Matsumoto | |
| The receiver can be switched using `#instance_eval` etc. | |||
| 2017-12-23 | Avoid infinite recursion in `method_missing`; ref #3908 | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | May need more stack space in `mrb_funcall_with_block`; fix #3908 | Yukihiro "Matz" Matsumoto | |
| 2017-12-23 | Should not overwrite `ci->target_class` in `mrb_exec_irep()`. | Yukihiro "Matz" Matsumoto | |
| For example, the following code behaved wrong: ```ruby Object.instance_exec(1,2,3){|*a| def foo 42 end } p foo() ``` | |||
| 2017-12-20 | Fixed method look-up for `method_missing` in OP_SUPER; ref #3905 | Yukihiro "Matz" Matsumoto | |
| Method look-up for `OP_SUPER` should start from the superclass of the `target_class` but if it fails, the look-up for `method_missing` should start from the class of the receiver. The following code explains the case: ```ruby class Bar def foo super end end class Foo<Bar def method_missing(mid, *) p mid end end ``` Foo.new.foo | |||
| 2017-12-20 | The superclass info should be taken from `TARGET_CLASS(ci->proc). | Yukihiro "Matz" Matsumoto | |
| Not from `ci->target_class` that may be switched using `class_eval` etc. fix #3899, fix #3906 We found out there is a mruby specific limitation that `super` may be screwed up when a method is defined in a module and `super` is called in the block with the target class switched (for example, `super` in `class_eval` block). Now we raise `RuntimeError` for such cases. The following code works in CRuby but not in mruby. ``` module M def foo "aaa".singleton_class.class_eval{super 2} end end class Foo def foo(*); end end class Bar<Foo include M end Bar.new.foo ``` | |||
| 2017-12-16 | Need to set `ci->proc` before calling methods; fix #3902 | Yukihiro "Matz" Matsumoto | |
| 2017-12-16 | Need to clear exception handler on `return`; fix #3898 | Yukihiro "Matz" Matsumoto | |
| 2017-12-13 | Retrieve operands at the beginning of `OP_SCLASS`. | Yukihiro "Matz" Matsumoto | |
