* lib/shellwords.rb (shellwords): Use String#lstrip!.
* lib/shellwords.rb (shellwords): Recognize an object that
responds to to_str() by using String.new().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* numeric.c (num_quo): should return most exact quotient value,
i.e. float by default, rational if available.
* numeric.c (num_div): "div" should return x.divmod(x)[0].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
tempfile as an argument and automatically close the tempfile
when the block terminates.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/mkmf.rb (dir_config): prior configured directories to
defaults.
* lib/mkmf.rb (dir_config): extract first word to determin
make command type.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
quotes should not be regarded as meta character. This bug or
maybe feature was inherited from Perl's shellwords.pl.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* hash.c (env_shift): ditto.
* hash.c (env_invert): ditto.
* hash.c (env_replace): ditto.
* hash.c (env_update): ditto.
* array.c (rb_ary_join): dispatch based on "to_str".
* array.c (rb_ary_times): ditto.
* array.c (rb_ary_equal): ditto.
* process.c (rb_f_exec): dispatch based on "to_ary".
* eval.c (umethod_bind): exact class match is not required. relax
the restriction to subclasses.
* eval.c (rb_eval): call "inherited" before executing class body.
* class.c (rb_define_class): call "inherited" after defining the
constant.
* class.c (rb_define_class_under): ditto.
* eval.c (massign): expand first element if RHS is an array and
its size is 1, and LHS has concrete assignment target (i.e. LHS
has target(s) other than *var).
* eval.c (massign): avoid unnecessary avalue/svalue conversion.
* eval.c (rb_yield_0): ditto
* array.c (rb_ary_update): do not allocate unused array if rpl is
nil (i.e. merely removing elements).
* io.c (io_read): should resize supplied string if it's shorter
than expected.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/extmk.rb (sysquote): do not need to quote on mswin/bccwin/mingw.
* ext/extm.rb ($mflags): uniq items and remove '-' and '--'.
move options to the lead.
* lib/fileutils.rb (install): model on the real install
command(message).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/mkmf.rb (create_makefile): remove a trouble library
before making a shared library.
* win32/Makefile.sub: invoke instruby.rb with the --make-flags option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3233 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
pass to split() a bare string longer than 2 characters as
separator.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/profiler.rb: separate profiling functions, without
trace_func and at_exit setting.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y (cmd_brace_block): new tLBRACE_ARG block rule
* parse.y (command): can take optional cmd_brace_block; use %prec
to resolve shift/reduce conflict. (ruby-bugs-ja PR#372)
* eval.c (ruby_finalize): trace_func should be cleared here (after
executing exit procs and finalizers).
* eval.c (rb_define_alloc_func): new allocation framework, based
on Nobu's work [ruby-dev:19116]. "allocate" method is no longer
used for object allocation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
and telnet.rb. It has been quite some time sinc they were
obsoleted and made to emit warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e