summaryrefslogtreecommitdiffhomepage
path: root/src
AgeCommit message (Collapse)Author
2017-08-02Now `local_variables` works when for closures; fix #3710Yukihiro "Matz" Matsumoto
2017-08-01Better class name management.Yukihiro "Matz" Matsumoto
The change removes several internal instance variables used by class name management. The variables `__classid__` and `__classpath__` are no longer available. `__outer__` is used only for unnamed outer classes/modules (and will be removed after they are named). [Important note] Along with this change we removed several public functions. - mrb_class_outer_module() - mrb_class_sym() We believe no one have used those functions, but if you do, please ask us for the workaround.
2017-08-01Cosmetic changes (removing spaces before `*` in return types).Yukihiro "Matz" Matsumoto
2017-08-01Move naming unnamed classes/modulesYukihiro "Matz" Matsumoto
From `mrb_mod_const_set` to `mrb_const_set`.
2017-08-01Reimplement constant look-up rule to follow lexical scoping.Yukihiro "Matz" Matsumoto
This update fix CRuby scoping incompatibility; close #600; close #3200
2017-08-01Implements `Module::nesting' (15.2.2.3.2); ref #600, #3200Yukihiro "Matz" Matsumoto
2017-07-28Extended Module#const_get to support class pathsChristopher Aue
2017-07-28Added mrb_str_index to the mrb APIChristopher Aue
2017-07-27Rename `MRB_SEGMENT_SIZE` to `MRB_IV_SEGMENT_SIZE`.Yukihiro "Matz" Matsumoto
2017-07-27Always use `MRB_USE_IV_SEGLIST`.Yukihiro "Matz" Matsumoto
2017-07-27Embed small size array elements in the heap.Yukihiro "Matz" Matsumoto
It reduces the memory consumption and sometimes improve the performance as well. For example, the consumed memory size of `bench/bm_ao_render.rb` is reduced from 1.2GB to 1GB, and its total execution time become 18.795 sec from 22.229 sec.
2017-07-27Remove loop from `OP_POPERR`.Yukihiro "Matz" Matsumoto
2017-07-26`(0).div(0.0)` should be NaN; fix #3754Yukihiro "Matz" Matsumoto
2017-07-25`(0.0).div(0)` should not be infinity; fix #3753Yukihiro "Matz" Matsumoto
2017-07-25`0/0` should not be infinity; fix #3752Yukihiro "Matz" Matsumoto
2017-07-24Clear mrb_callinfo struct by zero initializer.Yukihiro "Matz" Matsumoto
2017-07-21Need to unshare env on OP_R_BREAK too.Yukihiro "Matz" Matsumoto
2017-07-21Move NULL check to `mrb_env_unshare()`; ref #3750Yukihiro "Matz" Matsumoto
2017-07-21Should not raise `LocalJumpError` on funcall'ed frame; fix #3750Yukihiro "Matz" Matsumoto
2017-07-19Avoid C undefined behavior of division by zero; close #3745Yukihiro "Matz" Matsumoto
2017-07-19Avoid constant-set duplication; ref #3747Yukihiro "Matz" Matsumoto
2017-07-19Merge branch 'const_set_mod_to_s' of https://github.com/christopheraue/mruby ↵Yukihiro "Matz" Matsumoto
into christopheraue-const_set_mod_to_s
2017-07-18Fixed Module#to_s and #name for #const_set modulesChristopher Aue
2017-07-18Simplify `mrb_gc_arena_restore()` to reduce overhead.Yukihiro "Matz" Matsumoto
It will no longer shrink arena region. Instead `vm.c` uses a static function `mrb_gc_arena_shrink()` to shrink.
2017-07-12Avoid float operation to shrink arena buffer size.Yukihiro "Matz" Matsumoto
2017-07-12Add `inline` modifier to `cipush()` and `cipop()` functions.Yukihiro "Matz" Matsumoto
2017-07-12Use "$!" specifier of `mrb_get_args`.Yukihiro "Matz" Matsumoto
2017-07-12Update `mrb_get_args()` document.Yukihiro "Matz" Matsumoto
2017-07-12Add "*!" argument specifier to avoid stack copying.Yukihiro "Matz" Matsumoto
2017-07-12Add `ary_modify_check()` to `Array#unshift`; ref #3737Yukihiro "Matz" Matsumoto
2017-07-09Should only check frozen for Array#popksss
2017-07-09Should only check frozen fix #3737ksss
2017-07-06Reduce allocation size of backtrace arrays.Yukihiro "Matz" Matsumoto
2017-07-06Avoid out-of-bounds access of the backtrace array.Yukihiro "Matz" Matsumoto
2017-07-05Put a space between error position and error message.Yukihiro "Matz" Matsumoto
For readability's sake.
2017-07-05Check stack size before accessing env stack; fix #3727Yukihiro "Matz" Matsumoto
2017-07-05Avoid undefined behavior of left shifting negative integer; #3728Yukihiro "Matz" Matsumoto
2017-07-05Avoid undefined behavior of signed integer overflow; fix #3728Yukihiro "Matz" Matsumoto
2017-07-01`break` should not cross fiber-context boundary; fix #3724Yukihiro "Matz" Matsumoto
2017-07-01`super` may be called from a block; fix #3723Yukihiro "Matz" Matsumoto
2017-06-27No longer need to copy `argv` from `mrb_get_args`; ref #3722Yukihiro "Matz" Matsumoto
2017-06-27Copy argv from VM stack to avoid use-after-free; fix #3722Yukihiro "Matz" Matsumoto
2017-06-22No need to mark stacks of terminated fibers; fix #3720Yukihiro "Matz" Matsumoto
2017-06-22Add write barrier to protect singleton class from GC; fix #3717Yukihiro "Matz" Matsumoto
2017-06-21Should call `ecall()` before callinfo adjustment; fix #3715Yukihiro "Matz" Matsumoto
2017-06-20Array size can be cause integer overflow; fix #3710Yukihiro "Matz" Matsumoto
2017-06-20#3711 fixMiura Hideki
2017-06-19Use `mrb_int` instead of `int` as argument to `mrb_hash_new_capa`.Yukihiro "Matz" Matsumoto
2017-06-17Use `mrb_int` instead of `int`.Yukihiro "Matz" Matsumoto
2017-06-17Merge pull request #3706 from MasahikoSawada/fix_typoYukihiro "Matz" Matsumoto
Fix a typo in gc.c.