aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * 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
* * lib/net/imap.rb (body_type_1part): Gmail IMAP reports a bodyshugo2014-06-033-0/+27
| | | | | | | type as "MIXED" followed immediately by params [ruby-core:62864] [Bug #9885] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (objspace_live_slot): live slot count should not include finalko12014-06-032-1/+6
| | | | | | | | slot (contains T_ZOMBIE) count. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (obj_free): fix spacing.ko12014-06-032-2/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (check_gen_consistency): fix error message.ko12014-06-032-2/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c: count old/young objects more correctly.ko12014-06-032-12/+50
| | | | | | | | | | | | | | * gc.c (RVALUE_DEMOTE_FROM_OLD): decrement old object count. * gc.c (RVALUE_DEMOTE_FROM_YOUNG): decrement young object count. * gc.c (rb_gc_resurrect): increment old object count. * gc.c (gc_marks_body): should not add old object count. This code is completely my misunderstanding. * gc.c (rb_gc_force_recycle): decrement young or old object count correctly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/memory_status.rb: add $LOAD_PATH to load test/unitko12014-06-032-1/+7
| | | | | | | | correctly for fiddle/import unavailable environments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/openssl/test_ssl.rb (OpenSSL::TestSSL#test_verify_result):usa2014-06-032-0/+11
| | | | | | | | | shouldn't use same server for respective tests, because the 1st test sometimes kills the server main loop silently. [Bug #9881] [ruby-dev:48266] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c (rb_w32_conv_from_wchar): follow nobu's previous commit.usa2014-06-021-1/+1
| | | | | | | hey nobu, why don't you write Changelog for such serious changes? git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* encoding.c: move ruby_encoding_index stuffnobu2014-06-022-15/+22
| | | | | | | * encoding.c: move `ruby_encoding_index` stuff from include/ruby/encoding.h to hide the extra field. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* encoding.h: constify rb_encodingnobu2014-06-0211-155/+158
| | | | | | | * include/ruby/encoding.h: constify `rb_encoding` itself, not only arguments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-06-03svn2014-06-021-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * README.EXT: [DOC] Add rb_call_super when subclassing from @robin850zzak2014-06-022-0/+10
| | | | | | | [Fixes GH-623] https://github.com/ruby/ruby/pull/623 [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e