string.c (rb_str_format_m): trade volatile for RB_GC_GUARD

* string.c (rb_str_format_m): trade volatile for RB_GC_GUARD
  RB_GC_GUARD meaning is clear and has better code generation.
  [ruby-core:60688]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* include/ruby/intern.h,
  include/ruby/io.h,
  include/ruby/ruby.h,
  include/ruby/win32.h,
  include/ruby/backward/rubysig.h,
  bignum.c,
  gc.c,
  io.c,
  process.c,
  safe.c,
  struct.c,
  thread.c,
  ext/socket/rubysocket.h,
  ext/-test-/old_thread_select: Remove deprecated definitions
  [ruby-core:60581] [Feature #9502]



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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* include/ruby/ruby.h,
  internal.h,
  ext/-test-/bignum/bigzero.c: Hide a Bignum definition.
  [ruby-core:42891] [Feature #6083]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enum.c: Enumerable#{min,min_by,max,max_by} extended to take an
  optional argument.
  (nmin_cmp): New function.
  (nmin_block_cmp): Ditto
  (nmin_filter): Ditto.
  (nmin_i): Ditto.
  (nmin_run): Ditto.
  (enum_min): Call nmin_run if the optional argument is given.
  (nmin_max): Ditto.
  (nmin_min_by): Ditto.
  (nmin_max_by): Ditto.

* range.c: Range#{min,max} extended to take an optional argument.
  (range_min): Call range_first if the optional argument is given.
  (range_max): Call rb_call_super if the optional argument is given.

[ruby-core:57111] [Feature #8887]



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

* load.c (register_init_ext): call initialization function.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Range#bsearch: fix typo in rdoc

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
fd_setsize/depend: fix wrong dependencies

* ext/-test-/win32/fd_setsize/depend: fix wrong dependencies.
  [ruby-dev:47253]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Describe "Deprecated APIs removed." and "struct RBignum is hidden."


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Add note about "struct RBignum is hidden.".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (rb_big_cmp): Avoid bignum allocation for comparison
  between bignum and fixnum.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
probes_helper.h (RUBY_DTRACE_HOOK): correct type for _id

* probes_helper.h (RUBY_DTRACE_HOOK): correct type for _id
  I want to experiment with uint32_t ID

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in (FILE_READEND): Don't detect it because it is not used.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* internal.h: Rename macro names: RBIGNUM_FOO to BIGNUM_FOO.
  (BIGNUM_EMBED_LEN_NUMBITS): Renamed from RBIGNUM_EMBED_LEN_NUMBITS.
  (BIGNUM_EMBED_LEN_MAX): Renamed from RBIGNUM_EMBED_LEN_MAX.
  (BIGNUM_SIGN_BIT): Renamed from RBIGNUM_SIGN_BIT.
  (BIGNUM_SIGN): Renamed from RBIGNUM_SIGN.
  (BIGNUM_SET_SIGN): Renamed from RBIGNUM_SET_SIGN.
  (BIGNUM_POSITIVE_P): Renamed from RBIGNUM_POSITIVE_P.
  (BIGNUM_NEGATIVE_P): Renamed from RBIGNUM_NEGATIVE_P.
  (BIGNUM_EMBED_FLAG): Renamed from RBIGNUM_EMBED_FLAG.
  (BIGNUM_EMBED_LEN_MASK): Renamed from RBIGNUM_EMBED_LEN_MASK.
  (BIGNUM_EMBED_LEN_SHIFT): Renamed from RBIGNUM_EMBED_LEN_SHIFT.
  (BIGNUM_LEN): Renamed from RBIGNUM_LEN.
  (RBIGNUM_DIGITS): Renamed from RBIGNUM_DIGITS.
  (BIGNUM_LENINT): Renamed from RBIGNUM_LENINT.

* bignum.c: Follow the above change.

* gc.c: Ditto.

* marshal.c: Ditto.

* math.c: Ditto.

* numeric.c: Ditto.

* random.c: Ditto.

* rational.c: Ditto.

* sprintf.c: Ditto.

* ext/-test-/bignum/bigzero.c: Ditto.

* ext/-test-/bignum/intpack.c: Ditto.

* ext/bigdecimal/bigdecimal.c: Ditto.



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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44990 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/bigdecimal/bigdecimal.c (BIGNUM_ZERO_P): Unused macro removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* README.EXT.ja: [DOC] Fix typo by @utenmiki [Fixes GH-534] [ci skip]
  https://github.com/ruby/ruby/pull/534


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
marshal.c: use rb_gc_force_recycle for GC-safety

Putting rb_gc_force_recycle at the end of the function has a nice
side-effect of keeping wrapper visible to GC until the moment of
recycle, preventing GC from prematurely killing live objects.
volatile is a common source of compiler bugs/differences, avoid it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
io.c (rb_f_backquote): trade volatile for manual recycle

* io.c (rb_f_backquote): trade volatile for manual recycle
  rb_gc_force_recycle ensures object is visible until recycle

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