dl/cfunc.c: fix conversion of Bignum

* ext/dl/cfunc.c (rb_dlcfunc_call): fix conversion from Bignum to
  pointer. sizeof(DLSTACK_TYPE) is larger than sizeof(long) on
  Windows x64 and higher bits over sizeof(long) of DLSTACK_TYPE was
  zero even if a pointer value was over 32 bits which causes SEGV on
  DL::TestCPtr#test_to_ptr_io. Adding a cast solves the bug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
test_gem_installer.rb: fix a test failure

* test/rubygems/test_gem_installer.rb (test_install_extension_flat):
  use ruby in build directory in case ruby is not installed.
  [ruby-core:53265] [Bug #8058]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
test_gdbm.rb: skip a test on Windows

* test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_nolock):
  skip a failing test on Windows because flock() implementation is
  different from Unix.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41601 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
test_rinda.rb: fix for unimplemented ifindex()

* test/rinda/test_rinda.rb (RingIPv6#prepare_ipv6):
  ifindex() function may not be implemented on Windows. We use another
  check for the case.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (integer_unpack_single_bdigit): Refine code to filling
  higher bits and use BIGLO.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
	* gc.c (typedef struct rb_objspace): Change members for monitor objects.
	* gc.c (gc_marks_test): Check all WriteBarrier Errors and track them in obj-tree.
	* gc.c (rgengc_check_shady): Ditto.
	* gc.c (gc_marks): Move 2 funtion calls to gc_marks_test for test initialize.


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

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

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

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

* bignum.c (LSHIFTX): remove redundant never-true expression.


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

* bignum.c (big2ulong): suppress shorten-64-to-32 warning.  BDIGIT can
  be bigger than long now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (MSB): Removed.
  (BDIGIT_MSB): Defined using BIGRAD_HALF.
  (bary_2comp): Apply BIGLO after possible over flow of BDIGIT.
  (get2comp): Ditto.
  (bary_unpack_internal): Use BDIGIT_MSB.
  Apply BIGLO after possible over flow of BDIGIT.
  (rb_integer_unpack): Use BDIGIT_MSB.
  (calc_hbase): Use BDIGMAX.
  (big2dbl): Use BDIGMAX.
  Apply BIGLO after possible over flow of BDIGIT.
  (rb_big_neg): Apply BIGLO after possible over flow of BDIGIT.
  (biglsh_bang): Ditto.
  (bigrsh_bang): Ditto.
  (bary_divmod): Use BDIGIT_MSB.
  (bigdivrem): Ditto.
  (bigxor_int): Apply BIGLO after possible over flow of BDIGIT.

* marshal.c (shortlen): Use SIZEOF_BDIGITS instead of sizeof(BDIGIT).

* ext/openssl/ossl_bn.c (ossl_bn_initialize): Use SIZEOF_BDIGITS
  instead of sizeof(BDIGIT).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c: fix oldgen/remembered_shady counting algorithm.
* gc.c (rgengc_check_shady): increment
  `objspace->rgengc.remembered_shady_object_count' here.
* gc.c (rgengc_remember): return FALSE if obj is already remembered.
* gc.c (rgengc_rememberset_mark): make it void.
* gc.c (gc_mark_children): fix to double counting oldgen_object_count
  at minor GC.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (big2ulong): Add code specialized for SIZEOF_LONG <=
  SIZEOF_BDIGITS.
  This prevents shift witdth warning from "num <<= BITSPERDIG".



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (integer_unpack_single_bdigit): Use "1 + ~u" instead of
  "-u" to suppress warning (C4146) by Visual Studio.
  Reported by ko1 via IRC.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
fix typo by @daveworth [fix GH-340]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (big2ulong): Add a cast.
  (big2ull): Add a specialized code for SIZEOF_LONG_LONG <=
  SIZEOF_BDIGITS.



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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (LSHIFTX): Revert r41611.
  The redundant expression suppresses a warning, C4293, by Visual
  Studio.
  http://ruby-mswin.cloudapp.net/vc10-x64/ruby-trunk/log/20130625T072854Z.log.html.gz#miniruby



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (rb_big2ulong_pack): Use rb_integer_pack.
  (rb_big_aref): Call big2ulong with TRUE for "check" argument.
  It should be non-effective.



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