aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* hash.c: rb_hash_reject without dupnobu2013-12-073-4/+30
| | | | | | | | * hash.c (rb_hash_reject): copy unrejected elements only to new hash, so that the change on the original receiver can affect. [ruby-core:58914] [Bug #9223] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_struct.rb: use assert_samenobu2013-12-071-4/+6
| | | | | | | | | * test/ruby/test_struct.rb (test_question_mark_in_member): true value has no meanings itself. use assert_same instead. * test/ruby/test_struct.rb (test_bang_mark_in_member): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_struct.rb: use assert_predicatenobu2013-12-071-2/+2
| | | | | | | | | * test/ruby/test_struct.rb (test_question_mark_in_member): assert_true is a method in test-unit. use assert_predicate instead. * test/ruby/test_struct.rb (test_bang_mark_in_member): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: fix spelling of contributor's namecharliesome2013-12-061-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2013-12-07svn2013-12-061-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_struct.rb: Add regression test for question marks andcharliesome2013-12-062-0/+17
| | | | | | bangs in struct members. [Closes GH-468] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* class.c: move kwarg functionsnobu2013-12-063-92/+97
| | | | | | | * class.c (rb_extract_keywords, rb_get_kwargs): move from vm_insnhelper.c. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c: change oldmalloc meaning.ko12013-12-062-16/+20
| | | | | | | | | | Increase oldmalloc_increase with malloc_increase instead of using obj_memsize_of(). This change will avoid the danger of memory full without major GC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (atomic_sub_nounderflow): not 0 but val itself.ko12013-12-062-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rb_objspace_alloc, Init_heap): initializeko12013-12-062-3/+11
| | | | | | | | | oldmalloc_increase_limit at Init_heap. rb_objspace_alloc() is not called on some platforms. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (garbage_collect_body): bug fix.ko12013-12-062-1/+6
| | | | | | | | initialize after recording. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (atomic_sub_nounderflow): added to simplify atomic sub withko12013-12-062-26/+29
| | | | | | | | | care about underflow. * gc.c (objspace_malloc_increase): use it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_insnhelper.c: rb_get_kwargsnobu2013-12-065-21/+43
| | | | | | | | | * vm_insnhelper.c (rb_get_kwargs): get keyword argument values from an option hash, not only checking keys. * dir.c (dir_initialize): use rb_get_kwargs. * gc.c (gc_start_internal): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c: compare_by_idnobu2013-12-061-2/+12
| | | | | | | * thread.c (recursive_list_access): let symbol only hashes compare the elements by id. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby-mode.el: expand/unexpand blocknobu2013-12-062-4/+51
| | | | | | | | * misc/ruby-mode.el (ruby-brace-to-do-end): split single line block. * misc/ruby-mode.el (ruby-do-end-to-brace): shrink single line block to one line. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: indentnobu2013-12-061-2/+2
| | | | | | * gc.c (gc_start_internal): adjust indent. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (gc_start_internal): do not use rb_gc_start() and rb_gc().ko12013-12-062-14/+17
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.nobu2013-12-061-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (gc_start_internal, rb_gc): do not needko12013-12-062-3/+9
| | | | | | | | | | heap_pages_free_unused_pages() here. It was done in after_sweep(). * gc.c (rb_gc): The reason is now GPR_FLAG_CAPI. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: add note about experimental nature of new GC.start flagstmm12013-12-061-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: add minor marking and lazy sweeping options to GC.starttmm12013-12-063-3/+71
| | | | | | | | | | | * gc.c (gc_start_internal): GC.start() now accepts two optional keyword arguments. These can be used to disable full_mark (minor mark only) or disable immediate_sweep (use lazy sweep). These new options are useful for benchmarking GC behavior, or performing minor GC out-of-band. * test/ruby/test_gc.rb (class TestGc): tests for new options. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/webrick/httpstatus.rb: [DOC] Fix typoa_matsuda2013-12-061-1/+1
| | | | | | | s/sucess/success/ [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/erb.rb: [DOC] fix broken link.hsbt2013-12-062-1/+7
| | | | | | Use rubygems.org and www.ruby-toolbox.com instead of RAA. [Bug #9197] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/webrick/compat.rb, lib/xmlrpc/datetime.rb: [DOC] fix typo by ↵hsbt2013-12-062-2/+2
| | | | | | @vipulnsward [fix GH-464] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/webrick/httprequest.rb: [DOC] Fix broken link of CGI specification ↵hsbt2013-12-062-1/+6
| | | | | | by @udzura [fix GH-466] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2013-12-06svn2013-12-051-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec):mrkn2013-12-054-2/+31
| | | | | | | | | | | | treat 0.0 and -0.0 of floating-point numbers specially for an optimization and to correctly propagate its signbit to the result. [Bug #9214] [ruby-core:58858] * test/bigdecimal/test_bigdecimal.rb: add tests case for the above change. * test/bigdecimal/test_bigdecimal_util.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_objspace.rb: show errornobu2013-12-051-0/+1
| | | | | | | * test/objspace/test_objspace.rb (test_dump_all): show error output if nothing dumped. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: strip destdir from prefixnobu2013-12-052-0/+7
| | | | | | | | * lib/mkmf.rb (configuration): strip destdir part from prefix to get rid of duplication. a patch by arton at [ruby-core:58859]. [ruby-core:58856] [Bug #9213] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * string.c (rb_str_scrub): [DOC] add param str.nobu2013-12-051-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strip-rdoc.rb: binmodenobu2013-12-051-0/+1
| | | | | | | * tool/strip-rdoc.rb: read in binary mode to get rid of errors by non-ascii characters. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix matchingnobu2013-12-051-1/+1
| | | | | | * bootstraptest/test_thread.rb: String#=~ does not accept String. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: prefer lhs elementsnobu2013-12-053-1/+37
| | | | | | | | | * array.c (rb_ary_or): lhs elements are prefered, so should not replace with rhs elements. * test/ruby/test_array.rb (test_OR_in_order): import the test failed by r43969 from rubyspec/core/array/union_spec.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.nobu2013-12-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: [DOC] minor typotmm12013-12-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (gc_info_decode): fix to avoid syntax error on VS2012.ko12013-12-052-9/+14
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_gc.rb: expand timeoutnobu2013-12-051-1/+1
| | | | | | | * test/ruby/test_gc.rb (test_sweep_in_finalizer): expand timeout for slower machines. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/webrick/httpresponse.rb: [DOC] Fix typoa_matsuda2013-12-051-1/+1
| | | | | | | s/resopnse/response/ [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* st.c: tweaked commentduerst2013-12-052-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: add GC.latest_gc_info()tmm12013-12-055-80/+146
| | | | | | | | | | | | | | | | | | * gc.c (struct rb_objspace): rename internal last_collection_flags to latest_gc_info * gc.c (gc_latest_collection_info): add GC.latest_gc_info() with similar behavior to GC.stat() * gc.c (rb_gc_latest_gc_info): new c-api for above * gc.c (gc_stat_internal): remove :last_collection_flags from GC.stat * gc.c (gc_profile_decode_flags): remove GC::Profiler.decode_flags * include/ruby/intern.h (rb_gc_latest_gc_info): export new c-api * test/ruby/test_gc.rb (class TestGc): test for new behavior * NEWS: note about new api * gc.c (gc_stat_internal): raise TypeError on wrong type * gc.c (gc_stat): fix error message git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/objspace: remove OS.after_gc_start_hook= and move internal testtmm12013-12-056-47/+44
| | | | | | | | | | | * ext/objspace/gc_hook.c: remove this file * ext/-test-/tracepoint/gc_hook.c: new filename for above * ext/objspace/objspace.c: remove ObjectSpace.after_gc_start_hook= * test/objspace/test_objspace.rb: remove test * test/-ext-/tracepoint/test_tracepoint.rb: add above test for tracepoint re-entry git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c: change function names vm_ prefix to objspace_ prefix.ko12013-12-052-28/+33
| | | | | | | | They are objspace_ functionality. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: expose GC.stat() to C-api via rb_gc_stat()tmm12013-12-055-57/+126
| | | | | | | | | | | | | | | * include/ruby/intern.h: add rb_gc_stat() for access to GC.stat variables from c-api * gc.c (rb_gc_stat): new c-api method. accepts either VALUE hash like GC.stat, or VALUE symbol key and returns size_t directly. the second form is useful to avoid allocations, i.e. for usage inside INTERNAL_EVENT_GC tracepoints. * gc.c (gc_stat): add GC.stat(:key) to return single value instead of hash * gc.c (gc_stat_internal): helper method to retrieve single or all stat values * test/ruby/test_gc.rb (class TestGc): test for new behavior * NEWS: note about this new api git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ChangeLog: about malloc_size(3) availabilitynobu2013-12-051-2/+2
| | | | | | | | * ChangeLog: malloc_size(3) on MacOS X says it's a BSD Library Function, so possibly some other BSDs may have but seems unavailable on FreeBSD at least. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c: bail out to the outermost framenobu2013-12-052-71/+8
| | | | | | | * hash.c (rb_hash): revert r43981 and bail out to the outermost frame when recursion is detected. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_hash.rb: import tests from rubyspecnobu2013-12-051-0/+26
| | | | | | | * test/ruby/test_hash.rb: import tests for recursive hash values from rubyspec/core/{array,hash}/hash_spec.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_hash.rb: move testsnobu2013-12-052-14/+36
| | | | | | * test/ruby/test_hash.rb: move hash value tests from test_array.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_gc.rb: shortennobu2013-12-051-1/+1
| | | | | | * test/ruby/test_gc.rb (test_sweep_in_finalizer): omit iteration number to 2. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_eval.c: suppress warningnobu2013-12-051-1/+1
| | | | | | * vm_eval.c (rb_catch_obj): add cast to suppress warning by VC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (vm_malloc_size): added.ko12013-12-052-46/+113
| | | | | | | | | | | | | | | | return malloc_usable_size() if possible. * gc.c (MALLOC_ALLOCATED_SIZE): add new setting macro to enable GC.allocated_size. If platform supports `malloc_usable_size()' (or similar one), GC.allocated_size can be implemented with this function. Default is 0. * gc.c (vm_xmalloc, vm_xrealloc, vm_xfree): use vm_malloc_size() to detect collect allocated size. * gc.c (vm_malloc_increase): refactoring. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e