merge revision(s) 45488: [Backport #9631]

	* ext/readline/extconf.rb: fix typo, `$defs` not `$DEFS`.
	  [ruby-core:61756] [Bug #9578]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 43682,43727,43752,43759: [Backport #9560]

	* lib/delegate.rb (Delegator#send): override to get rid of global function interference.
	  [Fixes GH-449]

	* lib/delegate.rb (Delegator#send): separate from method_missing so
	  that super calls proper method.

	* lib/delegate.rb (Delegator#method_missing): try private methods defined in
	  Kernel after the target.  [Fixes GH-449]

	* lib/delegate.rb (SimpleDelegator#__getobj__): target object must be set.

	* lib/delegate.rb (DelegateClass#__getobj__): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 45320,45321: [Backport #9622]

	* vm_insnhelper.c (vm_callee_setup_arg): turn a macro into an
	  inline function.

	* vm_insnhelper.c (vm_callee_setup_arg): disable fastpath if splat
	  argument, since argc may differ for each calls.
	  [ruby-core:61422] [Bug #9622]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
missed at previous commit.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 45367,45387,45388,45389: [Backport #9475]

* vm_method.c (rb_method_entry_get_without_cache): me->klass is 0
  for a method aliased in a module.  [ruby-core:61636] [Bug #9663]

* vm_method.c (rb_method_entry_get_without_cache): get rid of
  infinite recursion at aliases in a subclass and a superclass.
  return actually defined class for other than singleton class.
  [ruby-core:60431] [Bug #9475]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 45365: [Backport #9656]

	dl/extconf.rb: check for -fno-defer-pop option

	* ext/dl/extconf.rb: check for -fno-defer-pop option, since clang
  5.1 no longer support -fno-defer-pop option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 45364,45395,45396,45403,45406: [Backport #9652]

	* time.c (time_mload): freeze and preserve marshal-loaded time zone

	* test/ruby/test_time.rb: add test for GC on loaded object
	  [Bug #9652]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 45471: [Backport #9688]

	* win32/win32.c (rb_w32_accept, open_ifs_socket, socketpair_internal):
	  reset inherit flag of socket to avoid unintentional inheritance of
	  socket.  note that the return value of SetHandleInformation() is not
	  verified intentionally because old Windows may return an error.
	  [Bug #9688] [ruby-core:61754]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 45518: [Backport #9702]

	* ext/readline/extconf.rb (rl_hook_func_t): check pointer type.
	  [ruby-dev:48089] [Bug #9702]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
revert r45747 because it introduced severe incompatibility.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@45755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
missed at r45748.


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