re.c: fix name with NUL

* 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
re.c: reduce new strings

* 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: consider name encoding

* 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
fix typo [ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: introduce RZombie to manage zombie objects.
  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
configure.in: add --with-jemalloc option

* 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
* 2014-06-05

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c (obj_free): check also FL_PROMOTED bit by RVALUE_OLD_P().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* misc/README: use github link instead of rubyforge.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* man/ruby.1: remove rubyforge entry.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
configure.in, missing.h: jemalloc mangling

* 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
version.c: show malloc_conf

* 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
* gc.c (gc_page_sweep): refactoring.
* 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
Join a thread.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/psych/lib/psych/visitors/yaml_tree.rb: dump empty symbols with a
  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
* 2014-06-06

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
io.c: not shorten buffer unless succeeded

* 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
node.h: NODE_PRIVATE_RECV

* 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
parse.y: attr_receiver

* parse.y (aryset_gen): use `attr_receiver()`.

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

* 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