summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-10-25* tool/mkconfig.rb: remove string literal concatenation.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-25* 2012-10-25svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-25* parse.y: show a warning for concatenating string literals becauseusa
it will be deprecated in the future. patched by mame (Yusuke Endoh) at [ruby-core:44207]. [ruby-core:44156] [Feature #6265] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24objspace.c: enum ruby_value_typenobu
* ext/objspace/objspace.c (type2sym, count_objects_size): use enum instead of size_t which may be larger than actual values. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24vm_insnhelper.c: inlinenobu
* vm_insnhelper.c: declare as inline, to match with the definitions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24* benchmark/driver.rb: add `-x' or `--exclude' optionko1
to specify exclude benchmark name pattern. You can specify "-x foo" if you want to exclude the benchmarks if the name of benchmark contains `foo'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24rename it to a more fitting namenari
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24fix the function name which is not grammatically correct.nari
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24* gc.c (free_object_aquire): rename to match the behavior of thisnari
function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24* ext/objspace/objspace.c (reachable_object_from_i): change datako1
structure of the result of reachable objects. Keys of table contains object_id of each reachable objects. Value of table is an object itself or an instance of InternalObjectWrapper. To avoid duplication, we use st_table and object_id keys. * ext/objspace/objspace.c (type2sym): bug fix. Should use `i' instead of `type'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24* gc.c (garbage_collect, gc_marks): move the location ofko1
clear and restore rb_objspace_t::mark_func_data from garbage_collect() to gc_marks(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24* ext/objspace/objspace.c (Init_objspace): add a new methodko1
`ObjectSpace::InternalObjectWrapper#internal_object_id' which returns an object id of a wrapped internal object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24* ext/objspace/objspace.c (ObjectSpace.reachable_objects_from):ko1
internal object support. If given object `obj' has references to internal objects (such as T_NODE objects), then this method returns instances of `ObjectSpace::InternalObjectWrapper' instead of that internal objects. This instance contains a refereance to an internal object and you can check the type of internal object using `ObjectSpace::InternalObjectWrapper#type' method. Rdoc of `InternalObjectWrapper' is not prepared yet. * gc.c (rb_objspace_reachable_objects_from), gc.h: change an interface of 'rb_objspace_reachable_objects_from()' * gc.c, gc.h: add two APIs - rb_objspace_markable_object_p(obj): check markable or not. - rb_objspace_internal_object_p(obj): check internal or not. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* vm_insnhelper.c (vm_call_method): remove `default' andko1
add a case for `VM_METHOD_TYPE_UNDEF'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* eval_error.c (error_print), vm_eval.c (eval_string_with_cref),ko1
vm_trace.c (rb_suppress_tracing): use TH_PUSH_TAG() instead of PUSH_TAG(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* vm_eval.c (vm_call0_body): remove RUBY_VM_CHECK_INTS()ko1
after method invocation using rb_call0(). * vm_eval.c (vm_call0_body): remove default section on top of switch statement and add cases for `VM_METHOD_TYPE_CFUNC_FRAMELESS' and `VM_METHOD_TYPE_UNDEF'. * vm_eval.c (vm_call0_body): remove useless brackets. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23Add test for instance_exec receiving a curried proc.tenderlove
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23test_rubyoptions.rb: --help optionnobu
* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage): now --help shows more lines. [ruby-core:48072] [Bug #7184] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* 2012-10-24svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* ChangeLog: fix typos of r37293.nagachika
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* thread.c (thread_raise_m): check interrupts after Thread#raiseko1
if a target thread is the current thread because the behavior of Thread.current.raise is expected to perform same as Kernel.raise (by rubyspec). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23ruby.c: --help optionnobu
* ruby.c (usage, process_options): show more info in --help. [EXPREIMENTAL] [ruby-core:48072] [Bug #7184] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23ruby-electric.el: fix #198nobu
* misc/ruby-electric.el using variable `last-command-event' instead of obsolete `last-command-char', so that work with Emacs trunk. a patch by Victor Deryagin <vderyagin AT gmail.com>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23configure.in: no visibility option for older GCCnobu
* configure.in (visibility_option): visibility attribute is not available before GCC 4, so do not use -fvisibility option in that case. [ruby-core:48147] [Bug #7205] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23Revert the last commit because some tests (in btest) failko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* thread.c (rb_threadptr_raise): check interrupts afterko1
Thread#raise because the behavior of Thread.current.raise is expected to perform same as Kernel.raise (by rubyspec). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-23* vm_core.h, vm_insnhelper.c, vm_eval.c (OPT_CALL_CFUNC_WITHOUT_FRAME):ko1
add a new otpimization and its macro `OPT_CALL_CFUNC_WITHOUT_FRAME'. This optimization makes all cfunc method calls `frameless', which is fster than ordinal cfunc method call. If `frame' is needed (for example, it calls another method with `rb_funcall()'), then build a frame. In other words, this optimization delays frame building. However, to delay the frame building, we need additional overheads: (1) Store the last call information. (2) Check the delayed frame buidling before the frame is needed. (3) Overhead to build a delayed frame. rb_thread_t::passed_ci is storage of delayed cfunc call information. (1) is lightweight because it is only 1 assignment to `passed_ci'. To achieve (2), we modify GET_THREAD() to check `passed_ci' every time. It causes 10% overhead on my envrionment. This optimization only works for cfunc methods which do not need their `frame'. After evaluation on my environment, this optimization does not effective every time. Because of this evaluation results, this optimization is disabled at default. * vm_insnhelper.c, vm.c: add VM_PROFILE* macros to measure behaviour of VM internals. I will extend this feature. * vm_method.c, method.h: change parameters of the `invoker' function. Receive `func' pointer as the first parameter. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* ext/psych/parser.c: just get the constant defined in Ruby.tenderlove
* ext/psych/lib/psych/syntax_error.rb: Psych::SyntaxError now inherits from StandardError rather than SyntaxError. Thanks Eric Hodel! * test/psych/test_exception.rb: tests for change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* ext/psych/lib/psych/scalar_scanner.rb: Cache symbols whiletenderlove
tokenizing. Thanks Kevin Menard! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* ext/psych/lib/psych/scalar_scanner.rb: Updated the RegExp to catchtenderlove
Strings earlier in the tokenization process. Thanks Kevin Menard! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* ext/psych/lib/psych/visitors/to_ruby.rb: Handle nil tags speciallytenderlove
to avoid slow method_missing calls. Thanks Kevin Menard! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* ext/psych/lib/psych/scalar_scanner.rb: Ignore bad timestamps. Iftenderlove
something looks like a timestamp but has an invalid component, treat it as a string instead of throwing an ArgumentError. Thanks Rhett Sutphin! * test/psych/test_scalar_scanner.rb: appropriate tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37288 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* ext/psych/lib/psych/scalar_scanner.rb: Fix scalar_scanner totenderlove
understand strings starting with an underscore and containing only digits. Thanks Kelley Reynolds. * test/psych/test_scalar_scanner.rb: test for fix git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* 2012-10-23svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* ext/psych/lib/psych.rb: Changed comment in psych.rb to update newtenderlove
home page for libyaml. Thanks to Carolyn Ann. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22* 2012-10-22svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22Supress warnings: unused variablesnaruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-21* test/ruby/test_settracefunc.rb: remove trailing spaces.ktsj
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-21* vm_trace.c (rb_threadptr_exec_event_hooks, rb_suppress_tracing):ktsj
constified. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-21* vm_core.h (rb_vm_t::trace_running): add a new fieldktsj
`trace_running' to store vm global tracing status. * vm_trace.c: fix SEGV bug. event_hook was free'd even when the hook is still used in another thread. [ruby-dev:46141] [Bug #7032] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-21* vm_core.h (rb_vm_t::trace_flag): remove `trace_flag'ktsj
which is no longer used. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-21* 2012-10-21svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-21 * ext/date/date_parse.c (date__parse): uses more tight parser iftadf
defined TIGHT_PARSER. now inactivated; because it introduces incompatibilities and it is a bit slow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-20* gc.c: fix typos in documentation.eregon
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-20* include/ruby/ruby.h: add C APIs.nari
VALUE rb_newobj_of(VALUE klass, VALUE flags) #define NEWOBJ_OF(obj,type,klass,flags) These allow to change a allocation strategy depending on klass or flags. * gc.c: ditto * array.c: use new C API. * bignum.c: ditto * class.c: ditto * complex.c: ditto * ext/socket/ancdata.c: ditto * ext/socket/option.c: ditto * hash.c: ditto * io.c: ditto * marshal.c: ditto * numeric.c: ditto * object.c: ditto * random.c: ditto * range.c: ditto * rational.c: ditto * re.c: ditto * string.c: ditto * struct.c: ditto [Feature #7177][Feature #7047] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-20* ext/socket/socket.c: Documentation for Socketzzak
Based on a patch by David Albert [Bug #7105] [ruby-core:47828] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-20* lib/open-uri.rb: Documentation for OpenURIzzak
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-19* 2012-10-20svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-19* hash.c (initialize_copy): unset the default proc if there isn't onetenderlove
for the target hash, call to_hash, check frozen status. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-19vm.c: pass through thrown objectsnobu
* vm.c (rb_vm_jump_tag_but_local_jump): pass through thrown objects. [ruby-dev:46234] [Bug #7185] * vm_eval.c (rb_eval_cmd): if state is non-zero, val should be nil and rb_vm_jump_tag_but_local_jump() just jump tag. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e