summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-eval/src
AgeCommit message (Collapse)Author
2019-08-18Prohibit changes to iseq in principledearblue
2019-08-05Use 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-15Unify type of line number to `uint16_t`KOBAYASHI Shuji
2019-05-18Move `Kernel#instance_eval` to `BasicObject`KOBAYASHI Shuji
2018-10-23Fixed a bug in processing `OP_EXT?` instructions.Yukihiro "Matz" Matsumoto
fix haconiwa/haconiwa#171
2018-10-02Fixed SEGV from `eval` called form top-level `mrb_funcall()`; fix #4028Yukihiro "Matz" Matsumoto
2018-08-25Reduce integer casting warnings.Yukihiro "Matz" Matsumoto
2018-08-25Should update `ci->env` to share the environment; fix #4073Yukihiro "Matz" Matsumoto
2018-07-30New bytecode implementation of mruby VM.Yukihiro "Matz" Matsumoto
2018-07-23Kernel#instance_eval should define singleton methods; fix #4069Yukihiro "Matz" Matsumoto
2017-11-10Need to clear stack region for local variables in eval; fix #3844Yukihiro "Matz" Matsumoto
2017-10-28Fixed UPVAR gotchas; fix #3835Yukihiro "Matz" Matsumoto
Both `uvenv` function and `env` generation in `create_proc_from_string` function have bugs to handling enclosed environment objects.
2017-10-28Heavily refactored how lexical scope links are implemented; fix #3821Yukihiro "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-27fix: 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-27fix: mrbgems\mruby-eval\src\eval.c(214): warning C4244: '=': conversion from ↵Tomasz Dąbrowski
'mrb_int' to 'short', possible loss of data
2017-08-12Reduce integer type mismatch warnings in VC.Yukihiro "Matz" Matsumoto
2017-07-20Need to patch `OP_GETUPVAR` and `OP_SETUPVAR`; fix #3732Yukihiro "Matz" Matsumoto
2017-07-12Use "$!" specifier of `mrb_get_args`.Yukihiro "Matz" Matsumoto
2017-06-19Fixed disclosure of local variables by `eval`; ref #3710Yukihiro "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-15Print the file name along with line number on syntax errors; fix #3698Yukihiro "Matz" Matsumoto
2017-04-25Avoid use of `snprintf()` when DISABLE_STDIO is set; fix #3632Yukihiro "Matz" Matsumoto
ref #3492 #3515 #3517
2017-04-22Keep reference to mrb_context from env; fix #3619Yukihiro "Matz" Matsumoto
2017-03-17Avoid trampoline when #eval is called from mrb_funcall(); fix #3522Yukihiro "Matz" Matsumoto
2017-03-15`instance_eval` method does not introduce C function boundary; fix #3508Yukihiro "Matz" Matsumoto
2017-02-16Configure callinfo target_class as CRuby; ref #3429Yukihiro "Matz" Matsumoto
2017-02-16Avoid executing OP_STOP in eval(); fix #3429Yukihiro "Matz" Matsumoto
2017-02-16Adjust callinfo env and target_class; ref #3429Yukihiro "Matz" Matsumoto
2017-02-04Make `eval` to use trampoline technique; fix #3415Yukihiro "Matz" Matsumoto
Now `eval()` can call Fiber.yield etc.
2016-09-06Fix SEGV when unshared envksss
2016-08-08instance_eval env should remake Fix #3191ksss
2016-04-11mruby-eval: instance_eval should keep target_class; close #3141Yukihiro "Matz" Matsumoto
2016-03-06Suppress a warningKouhei 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-15Fix segfault when `eval("__FILE__")` is executedYusuke Endoh
2016-01-08fixed a problem with upvar access from instance_eval; ref #3072Yukihiro "Matz" Matsumoto
2016-01-07mruby-eval: fixed receiver value in eval context; close #3072Yukihiro "Matz" Matsumoto
2016-01-07mruby-sprintf to use mrb_int formatting macros; ref #3076Yukihiro "Matz" Matsumoto
2015-11-27include changed from by quotes ("") to by brackets (<>); close #3032Yukihiro "Matz" Matsumoto
2015-09-14instance_eval should set target_class; close #2936Yukihiro "Matz" Matsumoto
target_class should be singleton class of the receiver
2014-12-23mruby-eval: fix typosdottaka
2014-12-19now retrieves number of arguments of blocks from OP_ENTER op code; close #2671Yukihiro "Matz" Matsumoto
2014-12-17mruby-eval: proc from env may be NULL; close #2676Yukihiro "Matz" Matsumoto
2014-12-17avoid out-of-bounds access of irep->lv; ref #2671, fix #2675Yukihiro "Matz" Matsumoto
allocation size of irep->iv is irep->nlocals-1.
2014-12-17eval() should preserve stack in env properly; fix #2671Yukihiro "Matz" Matsumoto
2014-10-18need addtional type check to avoid SEGV; ref #2609Yukihiro "Matz" Matsumoto
2014-10-17context proc may be cfunc; fix #2609Yukihiro "Matz" Matsumoto
2014-09-30Merge pull request #2599 from SatoshiOdawara/fix_target_class_in_instance_evalYukihiro "Matz" Matsumoto
target_class should not be TT_ICLASS in instance_eval(string); ref #1152
2014-09-29target_class should not be TT_ICLASS in instance_eval(string); ref #1152Satoshi Odawara
2014-09-29fixed. closures scope in eval(string)Satoshi Odawara
2014-08-20Remove empty lines.Tatsuhiko Kubo
2014-08-19Fix error handling for mrb_generate_code().Tatsuhiko Kubo
The return value of mrb_generate_code() must be null-checked before referencing.