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