diff options
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 35 |
1 files changed, 35 insertions, 0 deletions
@@ -1,3 +1,38 @@ +Thu May 24 14:30:13 2012 Koichi Sasada <ko1@atdot.net> + + * vm.c: add RubyVM::Backtrace object (btobj). + Backtrace information contains an array consists of location + information for each frames by string. + RubyVM::Backtrace object is lightweight backtrace information, + which contains complete information to generate traditional style + backtrace (an array of strings) with faster generation. + If someone accesses to backtrace information via + Exception#backtrace, then convert a RubyVM::Backtrace object to + traditonal style backtrace. + This change causes incompatibility on marshal dumpped binary + of Exception. If you have any trouble on it, please tell us + before Ruby 2.0 release. + Note that RubyVM::Backtrace object should not expose Ruby level. + + * error.c, eval.c, vm_eval.c: ditto. + + * internal.h: ditto. + + * eval_error.c: fix to skip "set_backtrace" method invocation in + creating an exception object if it call a normal set_backtrace + method (defined by core). + + * test/ruby/test_settracefunc.rb: fix for above change. + + * vm_method.c (rb_method_defined_by): added. This function + checks that the given object responds with the given method + by the given cfunc. + + * benchmark/bm_vm2_raise1.rb, benchmark/bm_vm2_raise2.rb: + add to measure exception creation speed. raise1 create + exception objects from shallow stack frame. raise2 create + exception objects from deep stack frame. + Thu May 24 12:07:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> * io.c (io_strip_bom): check EOF. [Bug #6487][ruby-core:45203] |