| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-01-26 | Revert "Minimize the changes in #5277" | Yukihiro "Matz" Matsumoto | |
| This reverts commit dc51d89ac22acc60b9bfeed87115863565b74085. | |||
| 2021-01-22 | Minimize the changes in #5277 | Yukihiro "Matz" Matsumoto | |
| Instead of including `mruby/presym.h` everywhere, we provided the fallback `mruby/presym.inc` under `include/mruby` directory, and specify `-I<build-dir>/include` before `-I<top-dir>/include` in `presym.rake`. So even when someone drops `-I<build-dir>/include` in compiler options, it just compiles without failure. | |||
| 2021-01-21 | Merge branch 'avoid-including-presym.inc-in-existing-header-files' of ↵ | Yukihiro "Matz" Matsumoto | |
| https://github.com/shuujii/mruby into shuujii-avoid-including-presym.inc-in-existing-header-files | |||
| 2021-01-11 | Avoid including `presym.inc` in existing header files | KOBAYASHI Shuji | |
| Addressed an issue where existing programs linking `libmruby.a` could only be built by adding `<build-dir>/include` to compiler's include path. | |||
| 2021-01-10 | Changes `stackent` to `stack` of `mrb_callinfo` | dearblue | |
| This enhances self-containment. Previously `mrb_context::stack` had the current call level stack, but now it owns it. The `mrb_context::stack` field, which is no longer needed, will be removed. | |||
| 2021-01-10 | Unified `target_class` and `env` of `mrb_callinfo` | dearblue | |
| If there is `env`, `env->c` means `target_class`. | |||
| 2020-12-25 | Improves out of memory messages for `eval` | dearblue | |
| The comment says that if `mrb_parse_nstring()` returns `NULL`, it is only out of memory. I'm worried about compatibility if I set the exception class to `NoMemoryError`, so it's still `RuntimeError`. | |||
| 2020-10-24 | Reorganize `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-22 | Prohibit 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-12 | Fix warning from VC regarding implicit int conversion. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Use functions that take symbols to reduce string litrals in C. | Yukihiro "Matz" Matsumoto | |
| 2020-09-25 | Prohibit string changes by "s"/"z" specifier of `mrb_get_args()` | dearblue | |
| - The `s` specifier is a string pointer obtained without performing `mrb_str_modify()`, so it cannot be changed. - The `z` specifier cannot be changed because it is a string pointer obtained by `RSTRING_CSTR()` which returns `const char *`. | |||
| 2020-06-25 | Change flag names in preparation of `REnv` refactoring. | Yukihiro "Matz" Matsumoto | |
| 2020-06-02 | Remove `patch_irep()` in `mruby-eval` | dearblue | |
| - It can now deal with operands in the range of `OP_EXT*`. - It can now call the same method as the variable name without arguments. ```ruby def a "Safe!" end a = "Auto!" eval "a()" # call method `a` ``` | |||
| 2019-11-20 | Use proper `PEEK` macro for `OP_EPUSH` in `patch_irep`; fix #4833 | KOBAYASHI Shuji | |
| 2019-11-15 | Fix argument specs to `Kernel` | KOBAYASHI Shuji | |
| 2019-08-18 | Prohibit changes to iseq in principle | dearblue | |
| 2019-08-05 | Use new specifiers/modifiers of `mrb_vfromat()` | KOBAYASHI Shuji | |
| The binary sizes (gems are only `mruby-bin-mruby`) are reduced slightly in my environment than before the introduction of new specifiers/modifiers (5116789a) with this change. ------------+-------------------+-------------------+-------- BINARY | BEFORE (5116789a) | AFTER (This PR) | RATIO ------------+-------------------+-------------------+-------- mruby | 593416 bytes | 593208 bytes | -0.04% libmruby.a | 769048 bytes | 767264 bytes | -0.23% ------------+-------------------+-------------------+-------- BTW, I accidentally changed `tasks/toolchains/visualcpp.rake` at #4613, so I put it back. | |||
| 2019-07-15 | Unify type of line number to `uint16_t` | KOBAYASHI Shuji | |
| 2019-05-18 | Move `Kernel#instance_eval` to `BasicObject` | KOBAYASHI Shuji | |
| 2018-10-23 | Fixed a bug in processing `OP_EXT?` instructions. | Yukihiro "Matz" Matsumoto | |
| fix haconiwa/haconiwa#171 | |||
| 2018-10-02 | Fixed SEGV from `eval` called form top-level `mrb_funcall()`; fix #4028 | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Reduce integer casting warnings. | Yukihiro "Matz" Matsumoto | |
| 2018-08-25 | Should update `ci->env` to share the environment; fix #4073 | Yukihiro "Matz" Matsumoto | |
| 2018-07-30 | New bytecode implementation of mruby VM. | Yukihiro "Matz" Matsumoto | |
| 2018-07-23 | Kernel#instance_eval should define singleton methods; fix #4069 | Yukihiro "Matz" Matsumoto | |
| 2017-11-10 | Need to clear stack region for local variables in eval; fix #3844 | Yukihiro "Matz" Matsumoto | |
| 2017-10-28 | Fixed UPVAR gotchas; fix #3835 | Yukihiro "Matz" Matsumoto | |
| Both `uvenv` function and `env` generation in `create_proc_from_string` function have bugs to handling enclosed environment objects. | |||
| 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-09-27 | fix: mrbgems\mruby-eval\src\eval.c(301): warning C4244: 'function': ↵ | Tomasz Dąbrowski | |
| conversion from 'mrb_int' to 'int', possible loss of data | |||
| 2017-09-27 | fix: mrbgems\mruby-eval\src\eval.c(214): warning C4244: '=': conversion from ↵ | Tomasz Dąbrowski | |
| 'mrb_int' to 'short', possible loss of data | |||
| 2017-08-12 | Reduce integer type mismatch warnings in VC. | Yukihiro "Matz" Matsumoto | |
| 2017-07-20 | Need to patch `OP_GETUPVAR` and `OP_SETUPVAR`; fix #3732 | Yukihiro "Matz" Matsumoto | |
| 2017-07-12 | Use "$!" specifier of `mrb_get_args`. | Yukihiro "Matz" Matsumoto | |
| 2017-06-19 | Fixed disclosure of local variables by `eval`; ref #3710 | Yukihiro "Matz" Matsumoto | |
| This patch fixes the latter part of #3710. We need to change `struct REnv` to fix the former part of the issue. | |||
| 2017-06-15 | Print the file name along with line number on syntax errors; fix #3698 | Yukihiro "Matz" Matsumoto | |
| 2017-04-25 | Avoid use of `snprintf()` when DISABLE_STDIO is set; fix #3632 | Yukihiro "Matz" Matsumoto | |
| ref #3492 #3515 #3517 | |||
| 2017-04-22 | Keep reference to mrb_context from env; fix #3619 | Yukihiro "Matz" Matsumoto | |
| 2017-03-17 | Avoid trampoline when #eval is called from mrb_funcall(); fix #3522 | Yukihiro "Matz" Matsumoto | |
| 2017-03-15 | `instance_eval` method does not introduce C function boundary; fix #3508 | Yukihiro "Matz" Matsumoto | |
| 2017-02-16 | Configure callinfo target_class as CRuby; ref #3429 | Yukihiro "Matz" Matsumoto | |
| 2017-02-16 | Avoid executing OP_STOP in eval(); fix #3429 | Yukihiro "Matz" Matsumoto | |
| 2017-02-16 | Adjust callinfo env and target_class; ref #3429 | Yukihiro "Matz" Matsumoto | |
| 2017-02-04 | Make `eval` to use trampoline technique; fix #3415 | Yukihiro "Matz" Matsumoto | |
| Now `eval()` can call Fiber.yield etc. | |||
| 2016-09-06 | Fix SEGV when unshared env | ksss | |
| 2016-08-08 | instance_eval env should remake Fix #3191 | ksss | |
| 2016-04-11 | mruby-eval: instance_eval should keep target_class; close #3141 | Yukihiro "Matz" Matsumoto | |
| 2016-03-06 | Suppress a warning | Kouhei Sutou | |
| mrbgems/mruby-eval/src/eval.c: In function ‘create_proc_from_string’: mrbgems/mruby-eval/src/eval.c:152:10: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] file = "(eval)"; ^ | |||
| 2016-02-15 | Fix segfault when `eval("__FILE__")` is executed | Yusuke Endoh | |
| 2016-01-08 | fixed a problem with upvar access from instance_eval; ref #3072 | Yukihiro "Matz" Matsumoto | |
