time: rearrange+pack vtm and time_object structs

struct time_object shrinks from 88 to 46 bytes on my 64-bit system.

* configure.in: use -Wno-packed-bitfield-compat for GCC 4.4+
  use __attribute__((packed)) if available
* timev.h: shrink and pack struct vtm
* time.c: pack struct time_object and adjust/introduce helpers
  [ruby-core:60794]

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/fiddle/test_function.rb: remove unused variables.
* test/fileutils/test_fileutils.rb: ditto.
* test/io/console/test_io_console.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
time: only use packed struct on x86*

* configure.in: define PACKED_STRUCT_UNALIGNED for x86*
* timev.h (struct vtm): use PACKED_STRUCT_UNALIGNED
* time.c (struct time_object): ditto
  [Bug #9558] non-x86 cannot safely access unaligned addresses

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* README.md, README.ja.md: removed (wrong) mode setting for emacs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/Makefile.sub: define PACKED_STRUCT.

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
configure.in: use PACKED_STRUCT_UNALIGNED on x64-mingw

* configure.in (PACKED_STRUCT_UNALIGNED): use on x64-mingw too.

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

* configure.in (PACKED_STRUCT_UNALIGNED): fix typo.  Intel x86
  cpus are called x86 or i386 etc, not x386.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
configure.in, win32/Makefile.sub: PACKED_STRUCT with VC

* configure.in (PACKED_STRUCT): check VC pragma too, and make
  function-style macro.

* win32/Makefile.sub (PACKED_STRUCT): enable with VC.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
use NUM2SIZET instead of NUM2INT

* ext/dl/dl.c (rb_dl_realloc): use NUM2SIZET instead of NUM2INT.

* ext/fiddle/fiddle.c (rb_fiddle_realloc): ditto.

* ext/dl/dl.c (rb_dl_malloc): use NUM2SIZET instead of NUM2INT.
  Coverity Scan found this bug.

* ext/fiddle/fiddle.c (rb_fiddle_malloc): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c (sym_find): Add Symbol.find(str), which returns whether given
  string is defined as symbol or not. [Feature #7854]

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
parse.y: refine error message

* parse.y (rb_check_id): refine error message, expected a symbol
  or a string.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
eval.c: remove unneeded GC guard

* eval.c (setup_exception): remove RB_GC_GUARD which is no longer
  needed since r41598.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
envutil.rb: move labeled_module and labeled_class

* test/ruby/envutil.rb (labeled_module, labeled_class): move from
  test/ruby/test_module.rb.

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

* eval.c (setup_exception): preserve errinfo across calling #to_s
  method on the exception.  [ruby-core:61091] [Bug #9568]

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

* eval.c (setup_exception): preserve exception class name encoding
  in debug mode messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c (heap_pages_free_unused_pages): check tomb page availability
  at first.
  And return immediately if we don't touch sorted list any more.



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

* eval.c (setup_exception): suppress a "clobbered" warning by gcc
  4.9.

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