| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-06-17 | Support `&.` at the beginning of the line. | Yukihiro "Matz" Matsumoto | |
| 2019-06-17 | Fixed wrong behavior on `..` at the beginning of the line. | Yukihiro "Matz" Matsumoto | |
| 2019-05-16 | Enable `YYSTACK_USE_ALLOCA`. | Yukihiro "Matz" Matsumoto | |
| It used heap allocated memory for the parser stack, but there's possibility of parser termination by exceptions. In that case, the parser stack memory is leaked. We were afraid of stack consumption, but parser stack size is only 4KB, so we don't have to worry about it (at least for the parser). | |||
| 2019-05-15 | Fix | Ukrainskiy Sergey | |
| 2019-05-15 | Small refactoring | Ukrainskiy Sergey | |
| 2019-05-15 | Initial suffix support | Ukrainskiy Sergey | |
| 2019-05-03 | Clean duplicate code | dearblue | |
| Removed duplicates in the code entered for "Concatenate string literal". | |||
| 2019-04-14 | Fix string index for appending | dearblue | |
| `sizeof(string-literal)` is included `'\0'` character | |||
| 2019-04-14 | Fix hexdigits convertion | dearblue | |
| 2019-04-11 | Fix buffer overflows in parser. | Clayton Smith | |
| 2019-04-10 | Rename `itoa` to `dump_int` to avoid name crash; ref #4173 | Yukihiro "Matz" Matsumoto | |
| 2019-04-08 | Avoid using `snprintf` when `MRB_DISABLE_STDIO` is set; fix #4173 | Yukihiro "Matz" Matsumoto | |
| 2019-04-01 | Avoid keeping pointers from `mrb_sym2name_len()`; fix #4342 | Yukihiro "Matz" Matsumoto | |
| The addresses for packed inline symbols reference `mrb->symbuf` that could be overridden by the later call of `mrb_sym2name_len`. Since file names in call stack information are kept as symbols, keeping the address in the C structures could cause problems like #4342. This changes small incompatible changes in function prototypes: * `mrb_parser_get_filename`: return value changed to `mrb_sym`. * `mrb_debug_get_filename`: add `mrb_state*` as a first argument. * `mrb_debug_get_line`: ditto. I believe above functions are almost internal, and no third-party mrbgem use them. | |||
| 2019-03-25 | Use uppercase version of `ctype` macros e.g. `ISSPACE`; fix #4338 | Yukihiro "Matz" Matsumoto | |
| 2019-02-28 | Add `warning: ` prefix to parser warning message | KOBAYASHI Shuji | |
| 2019-02-28 | Merge pull request #4301 from shuujii/remove-unnecessary-backticks | Yukihiro "Matz" Matsumoto | |
| Remove unnecessary backticks; ref #2858 | |||
| 2019-02-27 | Compositing `NODE_DSTR` and `NODE_DSTR` | dearblue | |
| 2019-02-27 | Compositing `NODE_DSTR` and `NODE_STR` | dearblue | |
| 2019-02-27 | Compositing `NODE_STR` and `NODE_DSTR` | dearblue | |
| 2019-02-27 | Replacement to function for composite two string nodes | dearblue | |
| 2019-02-27 | Replacement to function for `NODE_STR` cheking | dearblue | |
| 2019-02-27 | Compositing `NODE_STR` and `NODE_STR` | dearblue | |
| 2019-02-27 | Concatenate string literals | dearblue | |
| 2019-02-27 | Remove unnecessary backticks; ref #2858 | KOBAYASHI Shuji | |
| 2019-02-27 | Use `yywarning()` instead of `yywarning_s()` for `MRB_WITHOUT_FLOAT` | KOBAYASHI Shuji | |
| 2019-02-07 | Add `OP_ENTER` to blocks without parameters; fix #4175 | Yukihiro "Matz" Matsumoto | |
| So that `lambda{}.call(1)` raises `ArgumentError` as CRuby does. Also, fixed junk assignment for `lambda{|;a|p a}.call{}`. | |||
| 2018-12-31 | Should not check non-node value to `void_expr_error`; fix #4203 | Yukihiro "Matz" Matsumoto | |
| This is also a reason for #4192 as well. | |||
| 2018-12-21 | Add `NULL` pointer check before `void_expr_error()`; fix #4192 | Yukihiro "Matz" Matsumoto | |
| 2018-11-25 | Allow destructuring in formal arguments. | Yukihiro "Matz" Matsumoto | |
| e.g. ``` def m(a,(b,c),d); p [a,b,c,d]; end m(1,[2,3],4) # => [1,2,3,4] ``` mruby limitation: Destructured arguments (`b` and `c` in above example) cannot be accessed from the default expression of optional arguments and keyword arguments, since actual assignment is done after the evaluation of those default expressions. Thus: ``` def f(a,(b,c),d=b) p [a,b,c,d] end f(1,[2,3]) ``` raises `NoMethodError` for `b` in mruby. | |||
| 2018-11-25 | Remove redundant rules from `parse.y`. | Yukihiro "Matz" Matsumoto | |
| 2018-11-20 | Fixed a bug in `mirb` heredoc handling; fix #3989 | Yukihiro "Matz" Matsumoto | |
| 2018-11-20 | Stop special treating of `\r` in the lexer; fix #4132 | Yukihiro "Matz" Matsumoto | |
| 2018-11-19 | Need to keep rooms for empty splat; fix #4166 | Yukihiro "Matz" Matsumoto | |
| 2018-11-15 | Fixed a bug in continuous read of target files; ref #4138 | Yukihiro "Matz" Matsumoto | |
| Line number information in a compiled file was wrong. | |||
| 2018-11-15 | Shrink file name table size to `uint16_t`; ref #4138 | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Add `NODE_KW_HASH` support in `mrb_parser_dump()`. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Remove `arg_value` from `parse.y`. | Yukihiro "Matz" Matsumoto | |
| 2018-07-30 | Keyword argument implemented. | Yukihiro "Matz" Matsumoto | |
| 2018-07-30 | New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-02-12 | Resolve conflicts between labels and conditional ternary; fix #3931 | Yukihiro "Matz" Matsumoto | |
| 2018-02-10 | Need to determine `IS_LABEL_POSSIBLE()` properly. | Yukihiro "Matz" Matsumoto | |
| Otherwise, `{"a": 1}` will cause `SyntaxError`. | |||
| 2018-01-16 | Allow `-> do rescue; end` as well as `proc do rescue; end` [Ruby2.6] | Yukihiro "Matz" Matsumoto | |
| 2017-11-04 | Merge branch 'master' of github.com:mruby/mruby | YAMAMOTO Masaya | |
| 2017-10-28 | Heavily refactored how lexical scope links are implemented; fix #3821 | Yukihiro "Matz" Matsumoto | |
| Instead of `irep` links, we added a `upper` link to `struct RProc`. To make a space for the `upper` link, we moved `target_class` reference. If a `Proc` does not have `env`, `target_class` is saved in an `union` shared with `env` (if a `Proc` has env, you can tell it by `MRB_PROC_ENV_P()). Otherwise `target_class` is referenced from `env->c`. We removed links in `env` as well. This change removes 2 members from `mrb_irep` struct, thus saving 2 words per method/proc/block. This also fixes potential memory leaks due to the circular references caused by a link from `mrb_irep`. | |||
| 2017-10-17 | `do/end` blocks to work with `rescue/ensure/else`; CRuby2.5 | Yukihiro "Matz" Matsumoto | |
| 2017-10-12 | Correct a small error in parse.y, which causes the reading of unassigned ↵ | Carlo Prelz | |
| memory (triggers an error when address sanitizer is active) | |||
| 2017-10-11 | Add MRB_WITHOUT_FLOAT | YAMAMOTO Masaya | |
| 2017-10-09 | Fix parse error on TRICK2013/yhara | Nobuyoshi Nakada | |
| 2017-10-09 | Replace lvar_defined with local_var_p | Nobuyoshi Nakada | |
| 2017-09-27 | fix: mrbgems\mruby-compiler\core\parse.y(3455): warning C4244: 'function': ↵ | Tomasz Dąbrowski | |
| conversion from 'intptr_t' to 'int', possible loss of data | |||
