parse.y: pin down dynamic symbol only

* parse.y (rb_id_attrset): pin down dynamic symbol only. it is
  possibe that attrset ID can be registered as a static symbol
  after the corresponding attrget ID has been registered as a
  dynamic, and then the latter may be collected.
  [ruby-core:62226] [Bug #9787]

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm.c (invoke_block_from_c): add VM_FRAME_FLAG_BMETHOD to record
  it is bmethod frame.
* vm.c (vm_exec): invoke RUBY_EVENT_RETURN event if rollbacked frame
  is VM_FRAME_FLAG_BMETHOD.
  [Bug #9759]
* test/ruby/test_settracefunc.rb: add a test for TracePoint/set_trace_func.
* vm_core.h: renmae rb_thread_t::passed_me to
  rb_thread_t::passed_bmethod_me to clarify the usage.
* vm_insnhelper.c (vm_call_bmethod_body): use renamed member.



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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c (gc_after_sweep): suppress unnecessary expanding heap.
  Tomb heap pages are freed pages here, so expanding heap is
  not required.

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

* parse.y (next_id): use rb_str_ellipsize to preserve encoding and
  get rid of incomplete multibyte sequence.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
test_inadvertent_creation.rb: use Symbol.find

* ext/-test-/symbol/intern.c: Symbol.find is available now.

* test/-ext-/symbol/test_inadvertent_creation.rb (noninterned_name):
  use Symbol.find instead.

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

* parse.y (rb_id_attrset): use rb_id2str to get rid of method call.

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
parse.y: raise with numeric ID type

* parse.y (rb_id_attrset): all valid ID types are handled
  properly, raise with numeric ID type which may be broken for
  GCed static symbol.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
parse.y: show name as possible

* parse.y (rb_id_attrset): show the name of broken ID if it is
  still registered.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c (FSTATFS): check availability of struct statfs and
  struct statvfs in addition to fstatfs(2) and fstatvfs(2).
  This fixes error in Solaris. [Bug #9788] [ruby-dev:48145]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
win32.c: declare for old VC

* win32/win32.c (ustatfs): declare GetVolumePathNameW for old VC.

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

* win32/win32.c (ustatfs): need a linkage to get rid of conflict.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
parse.y: show symbol name

* parse.y (must_be_dynamic_symbol): show the name if it is a
  static symbol.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45771 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* file.c: Change AND condition to nested condition.

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

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
parse.y: abort at inappropriate symbol

* parse.y (must_be_dynamic_symbol): abort if inappropriate symbol
  is given, which should never happen.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
symbol/type.c: bug_static_p bug_dynamic_p

* ext/-test-/symbol/type.c (bug_static_p, bug_dynamic_p): methods
  for debug, which predicate the given symbol type.

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