* test/ruby/test_struct.rb: Add regression test for question marks and
  bangs in struct members. [Closes GH-468]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 2013-12-07

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ChangeLog: fix spelling of contributor's name

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
test_struct.rb: use assert_predicate

* 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
test_struct.rb: use assert_same

* 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
hash.c: rb_hash_reject without dup

* 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
    * lib/fileutils.rb: remove unnecessary initialization. by @vipulnsward [fix GH-463]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/tk/lib/tk/canvas.rb:  [DOC] Fix typo (s/paramter/parameter/)
* ext/tk/lib/tk/text.rb:  Ditto.
* ext/tk/lib/tkextlib/blt/component.rb:  Ditto.
* ext/tk/lib/tkextlib/blt/tree.rb:  Ditto.
* ext/tk/lib/tkextlib/blt/treeview.rb:  Ditto.
* ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb:  Ditto.
* lib/xmlrpc/server.rb:  Ditto.

[ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
    * lib/net/http/header.rb: [DOC] Net::HTTP#to_hash returns pair of key and array values. Thanks @bjhaid [fix GH-467]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c (gc_mark_children): use nd_clss and nd_next for code clarity

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c (rb_ary_or): use RHASH_TBL_RAW instead of RHASH_TBL

* process.c (rb_execarg_fixup): use RHASH_TBL_RAW and insert write
  barriers where appropriate

* vm.c (kwmerge_i): use RHASH_TBL_RAW

* vm.c (HASH_ASET): use rb_hash_aset instead of calling directly into
  st_insert

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 2013-12-08

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/rubygems:  Update to RubyGems master 14749ce.  This fixes bugs
  handling of gem dependencies lockfiles (Gemfile.lock).

* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/rubygems.rb:  Update version for upcoming ruby 2.1.0 RC.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
class.c: fix uninitialized value

* class.c (rb_get_kwargs): fix returning uninitialized value when no
  optional keywords.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
parse.y: use rb_fstring() for strings stored in the symbol table

* parse.y (register_symid_str): use fstrings in symbol table
  [Bug #9171] [ruby-core:58656]
* parse.y (rb_id2str): ditto
* string.c (rb_fstring): create frozen_strings on first usage. this
  allows rb_fstring() calls from the parser (before cString is created)
* string.c (fstring_set_class_i): set klass on fstrings generated
  before cString was defined
* string.c (Init_String): convert frozen_strings table to String
  objects after boot
* ext/-test-/symbol/type.c (bug_sym_id2str): expose rb_id2str()
* test/-ext-/symbol/test_type.rb (module Test_Symbol): verify symbol
  table entries are fstrings

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
hash.c: revert r43870 and add alternative parser patch for literal keys

* hash.c (hash_aset_str): revert r43870 due to performance issue
  [Bug #9188] [ruby-core:58730]
* parse.y (assoc): convert literal string hash keys to fstrings
* test/ruby/test_hash.rb (class TestHash): expand test

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
gc.c: promote long-lived NODE_CREF objects to oldgen

* include/ruby/ruby.h: add RGENGC_WB_PROTECTED_NODE_CREF setting
  In a large app, this reduces the size of
  remembered_shady_object_count by 80%. [Bug #9225] [ruby-core:58947]
* gc.c (rb_node_newnode): add FL_WB_PROTECTED flag to NODE_CREF
* class.c (rewrite_cref_stack): insert OBJ_WRITE for NODE_CREF
* iseq.c (set_relation): ditto
* iseq.c (rb_iseq_clone): ditto
* vm_eval.c (rb_yield_refine_block): ditto
* vm_insnhelper.c (vm_cref_push): ditto
* vm_insnhelper.h (COPY_CREF): ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
hash.c: fix WB miss issue in Hash#replace

* hash.c (rb_hash_replace): add a write barrier to fix GC mark miss on
  hashes using Hash#replace [Bug #9226] [ruby-core:58948]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/xmlrpc/client.rb:  [DOC] Fix typo

s/explicitely/explicitly/
[ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e