aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* io.c (rb_io_advise): AIX currently does not support a 32-bit call tokanemoto2014-06-082-1/+10
| | | | | | | | posix_fadvise() if _LARGE_FILES is defined. Patch by Rei Odaira. [ruby-core:62968] [Bug #9914] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Show the epapsed time for failed test as well.akr2014-06-081-2/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_thread.rb: remove garbagenobu2014-06-081-1/+0
| | | | | | * bootstraptest/test_thread.rb: remove a garbage line for debug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bootstraptest/test_{fork,io,thread}.rb: reduce sleep timesnobu2014-06-073-39/+57
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* runner.rb: elapsed timesnobu2014-06-071-1/+4
| | | | | | | * bootstraptest/runner.rb (show_progress): show each elapsed times in verbose mode. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-06-08svn2014-06-071-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: update rdoc of rb_str_slice_bang()nobu2014-06-072-1/+6
| | | | | | | * string.c (rb_str_slice_bang): [DOC] update return value against a fixnum, which has changed because of M17N. [fix GH-631] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * numeric.c (do_coerce): Add a warning when an exception is raisederegon2014-06-073-1/+44
| | | | | | | | | | | | or an invalid value is returned in #coerce called by numeric comparison operators and the exception thrown by the caller has no information on the failure. In the next release such exception should not be rescued or should be the cause of the caller exception. nil is accepted as the "no possible coercion" return value. See #7688. * test/ruby/test_numeric.rb: Add corresponding test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * numeric.c (bit_coerce): remove constant parameter `err'eregon2014-06-072-7/+11
| | | | | | (always TRUE) of bit_coerce(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* cont.c : keep context.uc_stack.ss_sp and context.uc_stack.ss_size for later use.kanemoto2014-06-072-4/+18
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: truncate before appendingnobu2014-06-073-0/+23
| | | | | | | | * io.c (read_all): truncate the buffer before appending read data, instead of truncating before reading. [ruby-core:55951] [Bug #8625] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* digest.c: call to_s oncenobu2014-06-072-4/+8
| | | | | | | * ext/digest/digest.c (rb_digest_instance_equal): no need to call `to_s` twice. [Bug #9913] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * object.c (rb_mod_initialize_clone): Override Kernel#initialize_cloneakr2014-06-073-0/+23
| | | | | | | | | to avoid an exception on Class.new.freeze.clone.to_s. Reported by Andrew Grimm. [ruby-core:41858] [Bug #5828] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-06-07svn2014-06-061-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46369 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* digest.c: fix #== for non-string argumentseregon2014-06-063-1/+13
| | | | | | | | * ext/digest/digest.c (rb_digest_instance_equal): fix #== for non-string arguments. [ruby-core:62967] [Bug #9913] * test/digest/test_digest.rb: add test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* node.h: remove NODE_PRIVATE_RECVnobu2014-06-064-17/+10
| | | | | | | | * compile.c (private_recv_p): check by node type, instead of a magic number. * node.h (NODE_PRIVATE_RECV), parse.y (attrset_gen): remove git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c, parse.y: private op assignnobu2014-06-064-15/+42
| | | | | | | | * compile.c (iseq_compile_each), parse.y (new_attr_op_assign_gen): allow op assign to a private attribute. [ruby-core:62949] [Bug #9907] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_assignment.rb: assignment to private attributenobu2014-06-061-0/+23
| | | | | | | | * test/ruby/test_assignment.rb (test_assign_private_self): test for r3509, assignment to private attribute is allowed iff its receiver is literal `self`. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_assignment.rb: split test_assignnobu2014-06-061-0/+14
| | | | | | | * test/ruby/test_assignment.rb (test_assign): split by assignment forms. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: attr_receivernobu2014-06-061-2/+2
| | | | | | * parse.y (aryset_gen): use `attr_receiver()`. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46362 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* node.h: NODE_PRIVATE_RECVnobu2014-06-063-6/+17
| | | | | | | | | | * node.h (NODE_PRIVATE_RECV): name a magic number, `self` as the receiver of a setter method call. * compile.c (private_recv_p), parse.y (attr_receiver): use the named macro. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: not shorten buffer unless succeedednobu2014-06-063-4/+17
| | | | | | | * io.c (io_setstrbuf, io_read): should not shorten the given buffer until read succeeds. [ruby-core:55951] [Bug #8625] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-06-06svn2014-06-051-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/psych/lib/psych/visitors/yaml_tree.rb: dump empty symbols with atenderlove2014-06-053-1/+19
| | | | | | | tag so that they can be parsed on input. [Bug #9873] [ruby-core:62825] * test/psych/test_symbol.rb: test for change git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Join a thread.akr2014-06-051-1/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (gc_page_sweep): refactoring.ko12014-06-052-19/+34
| | | | | | | | | * gc.c (gc_page_sweep): should not set, but add final_slots into sweep_page->final_slots. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* version.c: show malloc_confnobu2014-06-053-7/+14
| | | | | | | | | * configure.in (jemalloc): check for the header regardless drop-in libjemalloc is found, for `malloc_conf` declaration. * version.c (ruby_show_version): show `malloc_conf` if set. [Feature #9113] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in, missing.h: jemalloc manglingnobu2014-06-057-2/+41
| | | | | | | | | | | | * configure.in (with-jemalloc): also check for header, for ABIs which JEMALLOC_MANGLE is needed, i.e., Mach-O and PE-COFF platforms. [ruby-core:62939] [Feature #9113] * include/ruby/missing.h: include alternative malloc header to replace memory management functions. * dln.c, io.c, parse.y, st.c: undef malloc family before re-definition to suppress warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * man/ruby.1: remove rubyforge entry.hsbt2014-06-052-2/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * misc/README: use github link instead of rubyforge.hsbt2014-06-052-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (obj_free): check also FL_PROMOTED bit by RVALUE_OLD_P().ko12014-06-052-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-06-05svn2014-06-041-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: add --with-jemalloc optionnormal2014-06-042-0/+12
| | | | | | | * configure.in: add --with-jemalloc option [ruby-core:62912] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c: introduce RZombie to manage zombie objects.ko12014-06-042-65/+108
| | | | | | | | | | Rewrite finalizing logics with this type. * gc.c (gc_verify_internal_consistency): verify zombie (finalizing) objects count. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix typo [ci skip]kazu2014-06-041-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* re.c: consider name encodingnobu2014-06-043-6/+22
| | | | | | | | * re.c (match_aref, rb_reg_regsub): consider encoding of captured names, encoding-incompatible should not match. [ruby-dev:48278] [Bug #9903] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* re.c: reduce new stringsnobu2014-06-041-12/+15
| | | | | | | * re.c (match_aref, rb_reg_regsub): reduce new strings creation for exceptions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* re.c: fix name with NULnobu2014-06-043-7/+24
| | | | | | | * re.c (match_aref): should not ignore name after NUL byte. [ruby-dev:48275] [Bug #9902] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-06-04svn2014-06-031-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm.c: return the result hashnobu2014-06-033-0/+18
| | | | | | | | * vm.c (core_hash_merge_kwd): should return the result hash, which may be converted from and differ from the given argument. [ruby-core:62921] [Bug #9898] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* + * ruby.c (load_file_internal2): Extracted from load_file_internal.akr2014-06-032-39/+71
| | | | | | | | + (load_file_internal): Invoke load_file_internal2 using rb_protect. + Close an opened FD if load_file_internal2 raises an exception. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rb_objspace_free): should not rest_sweep() here.ko12014-06-032-2/+5
| | | | | | | | Some data structures are already freed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_gc.rb: allocate more objects to invoke GC by newobj.ko12014-06-032-1/+7
| | | | | | | | GC allows extending pages depends on heap_increment. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert r46332 because RVALUE_OLD_P() returns int by r46334ko12014-06-032-7/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rb_gc_call_finalizer_at_exit): addko12014-06-032-0/+8
| | | | | | | | gc_verify_internal_consistency() when RGENGC_CHECK_MODE >= 2. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c: change the counting method for young objects.ko12014-06-032-11/+29
| | | | | | | | | | | | | clear counter at the beggining of every GC and count promoted (infant->young) objects. Some promotions (infant->young) are transition of promoting to old objects. We should not count such promotions. With this technique, we don't need to check young objects at obj_free(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c: add verifying counters code in gc_verify_internal_consistency().ko12014-06-032-2/+62
| | | | | | | | | | | | | | gc_verify_internal_consistency() counts all - live objects - young objects (if age2 promotion) - old objects in all pages and compares with objspace managing counters. * gc.c (gc_after_sweep): do gc_verify_internal_consistency() when RGENGC_CHECK_MODE >= 2. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: int for simple predicatesnobu2014-06-031-5/+5
| | | | | | * gc.c: use int for simple predicate functions instead of VALUE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ChangeLog: remove garbagesnobu2014-06-031-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rb_gc_force_recycle): we only need to know the result (0/1)ko12014-06-032-1/+7
| | | | | | | | | of RVALUE_OLD_P(). clang fails to compile it because is_old is `int' but RVALUE_OLD_P() returns VALUE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e