Add tests for r36415.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Add documentation about Array#join(nil). [Bug#5915]

We talked about this and it is like following:
* maybe ary.join(nil) should always use empty string as a separator,
  but it disables to specify $, as a seprator through variables.
* if nil means '', the conversion is to_s. to_s is not accepted.
* nil is a special value, so special behavior is allowed.
* use of $ variables is not recommended, so it is not worth to change
  current behavior.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Wed Jul 18 07:59:29 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>

  * lib/cgi/util.rb (CGI.escapeHTML,unescapeHTML): Add &apos; for HTML5 escaping.
    [Feature #6620]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Wed Jul 18 08:01:10 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>

  * test/rss/test_dublincore.rb: update test for CGI.escapeHTML.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/logger.rb:  Updated typos and output to match modern Logger
  output.  Patch by Marcus Stollsteimer.  [Bug #6738]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/win32ole/test_win32ole_event.rb (TestWIN32OLE_EVENT): use
  standard skip method to skip tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/debug.rb:  Added toplevel documentation.  Based on patch by Oscar
  Del Ben.  [Bug #6743], fixes #146 on github.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/benchmark.rb: Fix Benchmark.benchmark output with an empty
  caption.  patched by Benoit Daloze. [ruby-core:45719] [Bug #6610]

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

* encoding.c (load_encoding): explicit cast  to suppress  warning.
  Though the  cast truncates some bits, from  heuristic analysis I
  believe it is OK to do so here.

* bignum.c (rb_cstr_to_inum): ditto.


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

* pack.c: (ditto) bitwise operations are not char.  Apply explicit
  casts on them.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c (rb_threadptr_async_errinfo_*): manage async errors queue.
  Async events such as an exception throwed by Thread#raise,
  Thread#kill and thread termination (after main thread termination)
  will be queued to th->async_errinfo_queue.
  - clear: clear the queue.
  - enque: enque err object into queue.
  - deque: deque err object from queue.
  - active_p: return 1 if the queue should be checked.
  rb_thread_t#thrown_errinfo was removed.
* vm_core.h: add declarations of rb_threadptr_async_errinfo_*.
  remove rb_thread_t#thrown_errinfo field and
  add rb_thread_t#async_errinfo_queue (queue body: Array),
  rb_thread_t#async_errinfo_queue_checked (flag),
  rb_thread_t#async_errinfo_mask_stack(Array, not used yet).
* vm.c (rb_thread_mark): fix a mark function.
* cont.c (rb_fiber_start): enque an error.
* process.c (after_fork): clear async errinfo queue.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c: fix last commit miss.



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

* configure.in (EXTDLDFLAGS): split options for each extension
  libraries, and unused in ruby.pc.  [Bug #6734]
* lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c (rb_thread_call_without_gvl2): added.
  it can skip last CHECK_INTS.  See document for more details.
  Document about it was updated a bit.
* include/ruby/thread.h (decl. of rb_thread_call_without_gvl2): added.
* thread.c (rb_thread_call_with_gvl): remove "EXPERIMENTAL!"
  warning from a document.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y (primary): allow an empty grouped expression as the
  operand of the not operator (e.g., not ()).
  [ruby-core:45976] [Bug #6674]

* parse.y (parser_yylex): show no warning for a grouped expression
  as the operand of the not operator (e.g., not (a)) or as an
  argument of a method call without parentheses (e.g., foo (a)).
  [ruby-core:39050] [Bug #5214]

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/curses/extconf.rb: support PDCurses.  patched by Luis Lavena.
  [ruby-core:46485] [Feature #6735]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
mkmf.rb: hack for -framework

* lib/mkmf.rb (have_framework): get rid of separating -framework
  option and its argument and dealing with the argument as a library
  or an object name.  if $LDFLAGS were an array...


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

* ext/dbm/dbm.c (fdbm_empty_p): not empty if first key exists.
  suppress warnngs by gcc 4.7 -Wstrict-overflow.
* ext/sdbm/init.c (fsdbm_empty_p): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
vm.c: remove unused variables

* vm.c (invoke_block_from_c), vm_insnhelper.c (vm_call_cfunc): remove unused variables.


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