process.c: no method calls in async-signal-safe

* process.c (rb_execarg_run_options): do not call any methods in the
  async-signal-safe function.  mask has been checked with NUM2MODET()
  already and converted with LONG2NUM().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
fix async-signal-safe comments.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ext/readline/extconf.rb: no global names

* ext/readline/extconf.rb (readline): get rid of polluting global
  namespace.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
lib/test/unit/parallel.rb: new method to report to the parent

* lib/test/unit/parallel.rb (Test::Unit::Worker#_report): extract
  method to report to the parent process

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
[Bug #6607]

* include/ruby/backward/rubysig.h: fix visibility.  [Bug #6607]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: Fix typo in rdoc

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c (ary_reverse): use ansi style declaration.

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

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* include/ruby/missing.h: include math.h before checking INFINITY
  and NAN. Otherwise, strange macro redefinition will occur.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36142 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dir.c (dir_initialize): get rid of "unused return: argc = rb_scan_args()"
  warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* random.c (rb_random_int32): get rid of "warning: constant 0x100000000
  is so big it is long" warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby.c (rb_f_sub): use ansi style declaration.
* ruby.c (rb_f_gsub): ditto.
* ruby.c (rb_f_chomp): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* time.c (init_leap_second_info): fix non-ANSI function declaration.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
lib/test/unit.rb: workers sudden-death

* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): deal with
  sudden-death of workers.

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

* process.c (rb_execarg_addopt): always make Fixnum, and ignore higher
  bits in too large umask value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* numeric.c (positive_int_p, negative_int_p): extracted.

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

* numeric.c (positive_int_p, negative_int_p): optimize.

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

* missing/setproctitle.c (environ): use (*_NSGetEnviron()) instead of
  environ on Darwin for namespace cleanness, same as [ruby-core:00537].
  [ruby-core:45615] [Bug #6576]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* internal.h (rb_execarg_new): declared.
  (rb_execarg_get): ditto.

* process.c (mark_exec_arg): new function.
  (free_exec_arg): ditto.
  (memsize_exec_arg): ditto.
  (exec_arg_data_type): defined.
  (rb_execarg_new): new function.
  (rb_execarg_get): ditto.
  (rb_f_exec): use rb_execarg_new.
  (rb_spawn_internal): ditto.
  (rb_f_spawn): ditto.

* io.c (pipe_open_v): use rb_execarg_new.
  (pipe_open_s): ditto.

* ext/pty/pty.c (establishShell): use rb_execarg_new.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* internal.h (struct rb_execarg) moved and renamed from
  struct rb_exec_arg in intern.h.

* include/ruby/intern.h (struct rb_exec_arg): refer Data object which
  contains struct rb_execarg.

* process.c: use struct rb_execarg instead of struct rb_exec_arg
  except functions declared in intern.h.
  (rb_exec_arg_addopt): extract a pointer to struct rb_execarg from
  struct rb_exec_arg.
  (rb_exec_arg_init): ditto.
  (rb_exec_arg_fixup): ditto.
  (rb_run_exec_options_err): ditto.
  (rb_run_exec_options): ditto.
  (rb_exec_err): ditto.
  (rb_exec): ditto.

* io.c: use struct rb_execarg instead of struct rb_exec_arg.

* ext/pty/pty.c: ditto.



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