merge revision(s) 48102: [Backport #10413]

	* class.c (unknown_keyword_error): delete expected keywords
	  directly from raw table, so that the given block is not called.
	  [ruby-core:65837] [Bug #10413]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@48284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c (compile_data_alloc): add padding when strict alignment
  is required for memory access. Currently, the padding is enabled
  only when the CPU is 32-bit SPARC and the compiler is GCC.
  [Bug #9681] [ruby-core:61715]

* compile.c (STRICT_ALIGNMENT): defined if strict alignment is required

* compile.c (ALIGNMENT_SIZE, ALIGNMENT_SIZE_MASK, PADDING_SIZE_MAX):
  new macros for alignemnt word size, bit mask, max size of padding.

* compile.c (calc_padding): new function to calculate padding size


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@48296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 48402:

	* lib/rexml/document.rb: add REXML::Document#document.
	  reported by Tomas Hoger <thoger@redhat.com> and patched by nahi.


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