| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2017-03-15 | `instance_eval` method does not introduce C function boundary; fix #3508 | Yukihiro "Matz" Matsumoto | |
| 2017-03-14 | Merge pull request #3503 from nobu/bug/sprintf-oob | Yukihiro "Matz" Matsumoto | |
| Fix out-of-bound access | |||
| 2017-03-13 | Fix out-of-bound access | Nobuyoshi Nakada | |
| Get rid of out-of-bound access when single % at the end. | |||
| 2017-03-13 | Need to copy argv since it may be reallocated; fix #3500 | Yukihiro "Matz" Matsumoto | |
| The argv for `mrb_yield_with_class()` should not be on mruby stack. Note the result from `mrb_get_args("*")` is on the stack. | |||
| 2017-03-13 | OP_BLKPUSH is invalid outside of methods; fix #3501 | Yukihiro "Matz" Matsumoto | |
| 2017-03-12 | Generate new OP_RESCUE; fix #3487 | Yukihiro "Matz" Matsumoto | |
| The old OP_RESCUE took one operand A, which specifies a class to match with the exception. The new OP_RESCUE takes tree operands: A: the register to hold exception B: the matching exception; the match result will be stored here. C: the continuation; if C is zero, the exception will be stored to R(A) otherwise, the value from R(A) is used as a exception. Thus, ```ruby begin raise "a" rescue TypeError p 1 rescue RuntimeError p 2 end ``` will be compiled as ``` irep 0x557a06667aa0 nregs=4 nlocals=1 pools=1 syms=4 reps=0 file: /tmp/e.rb 2 000 OP_ONERR 005 2 001 OP_LOADSELF R1 2 002 OP_STRING R2 L(0) ; "a" 2 003 OP_SEND R1 :raise 1 2 004 OP_JMP 022 3 005 OP_GETCONST R2 :TypeError 3 006 OP_RESCUE R1 R2 3 007 OP_JMPIF R2 009 3 008 OP_JMP 013 4 009 OP_LOADSELF R1 4 010 OP_LOADI R2 1 4 011 OP_SEND R1 :p 1 4 012 OP_JMP 023 5 013 OP_GETCONST R2 :RuntimeError 5 014 OP_RESCUE R1 R2 cont 5 015 OP_JMPIF R2 017 5 016 OP_JMP 021 6 017 OP_LOADSELF R1 6 018 OP_LOADI R2 2 6 019 OP_SEND R1 :p 1 6 020 OP_JMP 023 6 021 OP_RAISE R1 6 022 OP_POPERR 1 6 023 OP_STOP ``` The new VM can accept old OP_RESCUE. The mruby compatible VM (namely mruby/c) should be updated to support the new OP_RESCUE behavior. | |||
| 2017-03-12 | Update VM to support new OP_RESCUE behavior; ref #3487 | Yukihiro "Matz" Matsumoto | |
| 2017-03-12 | Enhance OP_RESCUE to take B operand fas matching exception; ref #3487 | Yukihiro "Matz" Matsumoto | |
| 2017-03-11 | OP_RETRUN to take B as matching exception; ref #3487 | Yukihiro "Matz" Matsumoto | |
| 2017-03-11 | Revert 642ab8e; ref #3422 | Yukihiro "Matz" Matsumoto | |
| Also fix #3499. The issue was solved by #3462. | |||
| 2017-03-11 | The width printf specifier may be negative; fix #3498 | Yukihiro "Matz" Matsumoto | |
| 2017-03-11 | fixup! Check return value from snprintf(); ref #3498 | Yukihiro "Matz" Matsumoto | |
| 2017-03-11 | Check return value from snprintf(); ref #3498 | Yukihiro "Matz" Matsumoto | |
| 2017-03-11 | Merge pull request #3496 from ksss/string-gsub | Yukihiro "Matz" Matsumoto | |
| Avoid infinity loop when empty string pattern | |||
| 2017-03-11 | Merge branch 'master' into string-gsub | Yukihiro "Matz" Matsumoto | |
| 2017-03-11 | Merge pull request #3497 from ksss/subreplace | Yukihiro "Matz" Matsumoto | |
| \1 sequences as empty strings | |||
| 2017-03-10 | \1 sequences as empty strings | ksss | |
| 2017-03-10 | Avoid infinity loop when empty string pattern | ksss | |
| 2017-03-10 | Update ci->mid according to surrounding scope; fix #3490 | Yukihiro "Matz" Matsumoto | |
| 2017-03-10 | Simplify expression; ref #3490 | Yukihiro "Matz" Matsumoto | |
| 2017-03-10 | Raise special Exception when exception class is redefined; fix #3493 | Yukihiro "Matz" Matsumoto | |
| 2017-03-10 | Use string#upto() if available; fix #3489 | Yukihiro "Matz" Matsumoto | |
| Terminate loop if the value is longer than the last otherwise. | |||
| 2017-03-10 | Terminate loop if generated string longer than the last; ref #3489 | Yukihiro "Matz" Matsumoto | |
| 2017-03-07 | `__FILE__` should not update `p->filename`; fix #3485 | Yukihiro "Matz" Matsumoto | |
| 2017-03-06 | Merge pull request #3484 from ksss/string-frozen | Yukihiro "Matz" Matsumoto | |
| Check modifiable for String `bang' methods | |||
| 2017-03-06 | Avoid trampoline code if mrb_f_send is called from funcall; fix #3383 | Yukihiro "Matz" Matsumoto | |
| 2017-03-05 | Check modifiable for String `bang' methods | ksss | |
| 2017-03-05 | Merge pull request #3483 from ksss/string-index | Yukihiro "Matz" Matsumoto | |
| String#index shouldn't return nil when "".index "" | |||
| 2017-03-05 | String#index shouldn't return nil when "".index "" | ksss | |
| 2017-03-04 | Unshare popped TT_ENV objects. | Yukihiro "Matz" Matsumoto | |
| 2017-03-04 | Limit ecall() recursion levels; fix #3466 | Yukihiro "Matz" Matsumoto | |
| 2017-03-04 | Avoid tracing shared TT_ENV object. | Yukihiro "Matz" Matsumoto | |
| 2017-03-04 | Save/restore arena index in the loop. | Yukihiro "Matz" Matsumoto | |
| 2017-03-02 | Define jmpbuf_id outside of `extern "C"`; ref #3470 | Yukihiro "Matz" Matsumoto | |
| 2017-03-02 | Use C++ ABI only when MRB_ENABLE_CXX_ABI is set; ref #3470 | Yukihiro "Matz" Matsumoto | |
| 2017-03-02 | Fixed a bug in register size calculation; fix #3479 | Yukihiro "Matz" Matsumoto | |
| 2017-03-02 | The method_missing removal condition in a76dc04a was wrong. | Yukihiro "Matz" Matsumoto | |
| 2017-03-02 | Fix possible stack overflow for `method_missing`; fix #3478 | Yukihiro "Matz" Matsumoto | |
| Instead of shifting mruby VM stack, we always use CALL_MAXARGS. | |||
| 2017-03-02 | Reorganize C++ exceptions; ref #3470 | Yukihiro "Matz" Matsumoto | |
| There are 3 levels of C++ exception handling: * default - no C++ exception (use setjmp/longjmp) * enable_cxx_exception (use C++ exceptions with C ABI) * enable_cxx_abi (use C++ ABI including exceptions) | |||
| 2017-03-02 | Create NoMethodError instance using `mrb_obj_new()`. | Yukihiro "Matz" Matsumoto | |
| 2017-03-02 | Avoid using <mruby/throw.h> in mruby.c | Yukihiro "Matz" Matsumoto | |
| 2017-03-01 | `ci` may be moved during `mrb_convert_type()`; ref #3474 | Yukihiro "Matz" Matsumoto | |
| 2017-03-01 | Keep space for safe navigation operator; fix #3475 | Yukihiro "Matz" Matsumoto | |
| 2017-03-01 | Newlines in strings should be counted; fix #3477 | Yukihiro "Matz" Matsumoto | |
| 2017-02-28 | Compile C files by C compiler when C++ files mixed. | Yukihiro "Matz" Matsumoto | |
| ref #3267 #3470 By this commit, mruby do not use C++ ABI mode unless you specify explicitly. It compiles C files by C compilers, with C++ exception enabled when it sees C++ files in your configured mrbgems. I haven't tried visualcpp, so please submit an issue if you see any problem with C++ gems on Windows. | |||
| 2017-02-28 | Merge pull request #74 from iij/run-test-outside-source-tree | Tomoyuki Sahara | |
| run mrbtest outside of source tree. | |||
| 2017-02-28 | run mrbtest outside of source tree. | Tomoyuki Sahara | |
| 2017-02-28 | Ignore empty ensure clause. | Yukihiro "Matz" Matsumoto | |
| 2017-02-28 | `return` (and `break`) should handle splat correctly; fix #3472 | Yukihiro "Matz" Matsumoto | |
| 2017-02-28 | Fix NODE_DREGX dump; ref #3471 | Yukihiro "Matz" Matsumoto | |
