summaryrefslogtreecommitdiffhomepage
path: root/src
AgeCommit message (Collapse)Author
2017-04-25Revert "Disable GC during `gc_each_objects()`; fix #3616"Yukihiro "Matz" Matsumoto
This reverts commit d2cad9ac5b8db89fc9d21f5795846f983236798c.
2017-04-25Use fiber marking instead of `mark_context`.Yukihiro "Matz" Matsumoto
To avoid redundant `mark_context()`.
2017-04-24Revert "Simplify pointer calculation in `envadjust`."Tomasz Dąbrowski
This reverts commit a1d32af91692c2b624e9c04fcd94aa958dbba626.
2017-04-22Small cosmetic changes.Yukihiro "Matz" Matsumoto
2017-04-22Use env preserved in Proc structure in ecall(); fix #3612Yukihiro "Matz" Matsumoto
2017-04-22Keep reference to mrb_context from env; fix #3619Yukihiro "Matz" Matsumoto
2017-04-21Simplify pointer calculation in `envadjust`.Yukihiro "Matz" Matsumoto
2017-04-21Revert e8dca6b03; fix #3550Yukihiro "Matz" Matsumoto
Reopens #3612.
2017-04-21Fixed a possible memory leak.Yukihiro "Matz" Matsumoto
2017-04-21Revert ae4217e81; fix #3619Yukihiro "Matz" Matsumoto
Reopens #3550. Those 2 issues are exclusive.
2017-04-21Merge pull request #3625 from take-cheeze/pool_64bitYukihiro "Matz" Matsumoto
Align pool allocator with 8 byte in 64-bit environment.
2017-04-21Add missing `arg_i++` to fix bug of `s!` in mrb_get_args.take_cheeze
2017-04-21Align pool allocator with 8 byte in 64-bit environment.take_cheeze
To avoid warnings from undefined sanitizer. ( https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html )
2017-04-21VM stack may be reallocated in `mrb_convert_type()`; fix #3622Yukihiro "Matz" Matsumoto
2017-04-21`mrb_int` may overflow in bit-shifting; fix #3620Yukihiro "Matz" Matsumoto
2017-04-21Bit-shifting zero should be zero; ref #3620Yukihiro "Matz" Matsumoto
2017-04-20Disable GC during `gc_each_objects()`; fix #3616Yukihiro "Matz" Matsumoto
2017-04-20Allow `mrb_objspace_each_objects()` to break iteration; ref #3359Yukihiro "Matz" Matsumoto
2017-04-20Do not raise an exception for living closure; ref #3359Yukihiro "Matz" Matsumoto
2017-04-19Use trampoline technique for `instance_exec`; ref #3359Yukihiro "Matz" Matsumoto
A new function `mrb_yield_cont()` is provided. You have to call it at the end of a C defined method, e.g. `return mrb_yield_cont()`.
2017-04-19Need to raise "break from proc-closure" error; fix #3359 fix #3495Yukihiro "Matz" Matsumoto
Some examples in #3359 still behave differently from CRuby.
2017-04-19Fixed a bug caused by last minute change; fix #3610Yukihiro "Matz" Matsumoto
Omitted `goto L_RAISE` to raise an exception.
2017-04-18Check if sc->mt is initialized before copying it.Clayton Smith
2017-04-18Call envadjust() before updating VM stack.Yukihiro "Matz" Matsumoto
2017-04-18Fixed a wrong condition; fix #3550Yukihiro "Matz" Matsumoto
Shared TT_ENV should be unshared. Reversed condition.
2017-04-18Revert 6dd1a57; fix #3612; ref #3550Yukihiro "Matz" Matsumoto
The fix was wrong. It causes a new problem #3612.
2017-04-18Make `mrb_codedump_all()` to print type of Proc.Yukihiro "Matz" Matsumoto
2017-04-18`super` may call context switching method like `send`; fix #3611Yukihiro "Matz" Matsumoto
2017-04-18Call exc_debug_info() in mrb_exc_set(); ref #3610Yukihiro "Matz" Matsumoto
Otherwise line number information is lacked from exceptions raised in VM, e.g. "super called outside of method".
2017-04-18Add "no super" check to OP_ARGARY; fix #3610Yukihiro "Matz" Matsumoto
2017-04-18Hash#dup didn't check if internal khash is initialized; fix #3609Yukihiro "Matz" Matsumoto
2017-04-17Mark whole root objects in final_marking_phase(); fix #3603Yukihiro "Matz" Matsumoto
ref #1359 #1362
2017-04-13Proc#call needs to reserve at least 2 registers; fix #3606Yukihiro "Matz" Matsumoto
One for the receiver, the other for the block.
2017-04-13Merge pull request #3604 from keizo042/fix_issue3598Yukihiro "Matz" Matsumoto
Find Class/Module in nested singleton class; fix #3598
2017-04-12Use while statement instead of for statementKouichi Nakanishi
2017-04-12Find Class/Module in nested singleton class; fix #3598Kouichi Nakanishi
2017-04-12Let 'mrb_vm_run()` to restore the calling fiber; ref #3537Yukihiro "Matz" Matsumoto
2017-04-12Should not unshare env stack repeatedly; fix #3601Yukihiro "Matz" Matsumoto
2017-04-12`method_missing` might have updated stack beyond boundary; fix #3599Yukihiro "Matz" Matsumoto
2017-04-12Exceptions may be raised in yyparse(); fix #3600Yukihiro "Matz" Matsumoto
2017-04-12Refactor check before `mrb_class_ptr()`; ref #3602Yukihiro "Matz" Matsumoto
2017-04-12The attached object may not be a class; fix #3602Yukihiro "Matz" Matsumoto
2017-04-11Shared TT_ENV may need to be marked; fix #3550Yukihiro "Matz" Matsumoto
2017-04-11Fixed a bug in `mrb_convert_to_integer()`; fix #3581Yukihiro "Matz" Matsumoto
Did not update the result from `mrb_check_string_type()` before string-to-integer conversion.
2017-04-10An object attached to a singleton class may not be a class; fix #3587Yukihiro "Matz" Matsumoto
The fix for #3539 was incomplete.
2017-04-10Protect arguments from GC; fix #3597Yukihiro "Matz" Matsumoto
GC may be called with OP_ENTER (especially when GC_STRESS is set).
2017-04-10Callinfo may be changed in `ecall()`; fix #3589Yukihiro "Matz" Matsumoto
2017-04-10Avoid clearing VM stack every time to gain performance.Yukihiro "Matz" Matsumoto
VM stack is cleared by 5c114c9, 0cb501 and c063641.
2017-04-10Clear unused stack region that may refer freed objects; fix #3596Yukihiro "Matz" Matsumoto
2017-04-10Skip stack marking at all if c->stack is NULL.Yukihiro "Matz" Matsumoto