2320 Commits

Author SHA1 Message Date
matz
2cd6d0f597 * eval.c (rb_thread_remove): thread may die in the process of
rb_thread_die().  this change was suggested by Rudi Cilibrasi
  <cilibrar@drachma.ugcs.caltech.edu>.

* eval.c (rb_thread_start_0): main thread swapped by fork() may
  terminate rb_thread_start_0() successfully. call ruby_stop(0);
  this change too was suggested by Rudi.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 10:09:31 +00:00
nobu
79d91e3608 * file.c (file_expand_path): fix wrong behavior for root file.
expand_path("..", "//machine/share") => "//machine/share"
  expand_path("..", "c:/a") => "c:/"
  expand_path("..", "/a") => "/"


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 09:44:54 +00:00
nobu
42de8af413 * file.c (file_expand_path): should not upward beyond share name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 09:11:05 +00:00
eban
db0539c447 * missing.h (strtoul): fix prototype of strtoul.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 06:49:00 +00:00
nobu
2e13a4ff37 *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 06:23:39 +00:00
matz
d88376b135 * parse.y (clhs): allow "Foo::Bar = x".
* parse.y (primary): "self[n]=x" can be legal even when "[]=" is
  private.  changes submitted in [ruby-talk:63982]

* parse.y (aryset): ditto.

* parse.y (attrset): "self.foo=x" can be legal even when "foo="
  is private.

* eval.c (is_defined): private "[]=" and "foo=" support.

* eval.c (rb_eval): ditto.

* eval.c (assign): ditto.

* eval.c (rb_eval): "foo=" should not always be public.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 03:35:44 +00:00
nobu
afca4f0cfd * eval.c (rb_thread_restore_context): inhibit interrupts in
critical section while context switching.  [ruby-talk:64785]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-19 16:27:47 +00:00
nobu
0b78e04234 2003-02-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-19 09:40:49 +00:00
nobu
884efe7c5e * node.h (nd_cpath): nested class/module declaration.
[EXPREIMENTAL]

* eval.c (rb_eval): ditto.

* gc.c (rb_gc_mark_children): ditto.

* parse.y (cpath): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-19 09:27:49 +00:00
eban
d22fc7c4d8 2003-02-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-18 14:51:12 +00:00
matz
ddd9d609dc * eval.c (rb_call0): should not report uninitialized warning by
attribute reader method.

* variable.c (rb_attr_get): new function to get instance variable
  without uninitialized warning.

* io.c (argf_to_io): should prefetch argv.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-18 14:30:17 +00:00
nobu
b4f940b767 * misc/ruby-mode.el (ruby-comment-column): customize comment
column.  [new]

* misc/ruby-mode.el (ruby-deep-indent-paren): deep indentation
  parentheses.  [new]

* misc/ruby-mode.el (ruby-expr-beg): fix for / after $?.

* misc/ruby-mode.el (ruby-parse-partial, ruby-calculate-indent):
  deep indentation support.

* misc/ruby-mode.el (ruby-forward-sexp, ruby-backward-sexp):
  move forward/backward across one balanced expression.  [new]

* misc/ruby-mode.el (ruby-indent-exp): indent balanced
  expression.  [new]

* misc/ruby-mode.el (ruby-electric-brace): indent before
  show matching parenthesis.  (contributed by NABEYA Kenichi)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 15:13:54 +00:00
nobu
d019ce0ad1 * win32/win32.c (rb_w32_opendir, rb_w32_utime): need parens.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 05:36:59 +00:00
usa
396f32c98e * win32/win32.c (link): implement with CreateHardLink().
* win32/win32.c, win32/win32.h (rb_w32_utime): enable utime() to
  directory if on NT. [new] (ruby-bugs-ja:PR#393)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 05:17:46 +00:00
nobu
c510198c3b 2003-02-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 04:30:38 +00:00
nobu
b97db4b7ad commit error.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 04:29:14 +00:00
nobu
8fe2085eb7 *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-17 04:27:45 +00:00
nobu
d0d70d648d * file.c (file_expand_path): buffer might be reallocated while
expanding default directory.

* file.c (file_expand_path): default directory was being
  ignored if path was full path with no drive letter, under
  DOSISH.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-16 10:22:36 +00:00
eban
2f7275db77 * io.c (prep_stdio, Init_io): always set binmode on Cygwin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-15 18:16:52 +00:00
nobu
f2d07eb82d * file.c (file_expand_path): fix surplus path separators while
expanding at root directory.  [ruby-dev:19572]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-14 16:09:07 +00:00
akira
bfa0275833 * lib/uri/generic.rb, lib/uri/ldap.rb, lib/uri/mailto.ldap: all foo=()
returns arguments passed by caller.

* lib/uri/generic.rb (Generic#to_str, Generic#to_s): removed to_str.
  Suggested by Tanaka Akira <akr@m17n.org> at [ruby-dev:19475].

* lib/uri/generic.rb (Generic#==): should not generate an URI object
  from argument. Suggested by Tanaka Akira <akr@m17n.org> at
  [ruby-dev:19475].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-14 05:32:48 +00:00
nobu
246800d42b *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-13 09:58:57 +00:00
matz
937092b820 * range.c (range_step): step might be float 0 < x < 1.
* eval.c (rb_thread_schedule): pause if no runnable thread when
  there's only one thread.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-13 09:11:11 +00:00
nobu
050f2d8460 * ruby.c (proc_options): script argument is in effect only when -e is not given.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-13 03:02:19 +00:00
nobu
2f7ee35065 2003-02-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-13 00:59:22 +00:00
nobu
2f6595c1ed * ruby.c (ruby_init_loadpath): ensures buffer terminated
before use strncpy().

* ruby.c (proc_options): avoid SEGV at -S with no arguments.
  (ruby-bugs-ja:PR#391)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-13 00:59:00 +00:00
nobu
168f2f470f * eval.c (rb_thread_schedule): current thread may be dead when
deadlock.  (ruby-bugs:PR#588)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-12 16:30:13 +00:00
nobu
4ef1062c6f * file.c (rb_file_s_dirname): append "." if drive only.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-12 15:10:51 +00:00
nobu
6f780a30fc 2003-02-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-12 14:56:49 +00:00
nobu
7dd303419e * file.c (strrdirsep): ignore trailing directory separators.
* file.c (rb_file_s_expand_path): File.expand_path(".","/") should
  return "/".  (ruby-bugs-ja:PR#389)

* file.c (rb_file_s_basename): also ignore trailing directory
  separators, in compliance with SUSv3.  (ruby-bugs-ja:PR#390)

* file.c (rb_file_s_dirname, rb_file_s_extname): ditto.

* file.c (rb_file_s_split): get rid of converting twice.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-12 14:56:45 +00:00
nobu
b3ec759e4b convert EOL code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-12 06:20:19 +00:00
ntalbott
f29a009cc1 This commit was generated by cvs2svn to compensate for changes in r3481,
which included commits to RCS files with non-trunk default branches.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-12 04:22:38 +00:00
ntalbott
04f2b8f7bf Initial revision
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-12 03:12:14 +00:00
eban
4a44a6d474 * typo fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-10 12:01:22 +00:00
eban
986bfd904c * ext/extmk.rb (parse_args): add '-n' to $mflags BEFORE "--".
do not add DESTDIR if already included in $fmlags.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-10 11:59:26 +00:00
aamine
dc502aea7e * lib/fileutils.rb (FileUtils#uptodate?): use mtime for comparison.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-10 10:48:38 +00:00
matz
ab24be4e98 * array.c (rb_ary_to_a): return value should be an Array if the
receiver is an instance of subclass of Array.

* string.c (rb_str_to_s): return value should be a String if the
  receiver is an instance of subclass of String.

* eval.c (rb_call): calls method_missing when superclass method
  does not exist.

* eval.c (rb_f_missing): now handles "no super" case.

* object.c (rb_obj_ivar_get): Object#instance_variable_get: new
  method to get instance variable value without eval(). [new]

* object.c (rb_obj_ivar_set): Object#instance_variable_set: new
  method to set instance variable value without eval(). [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-10 09:40:13 +00:00
eban
b53549941d * io.c (rb_file_sysopen): rb_file_sysopen_internal() needs four
arguments.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-09 18:36:22 +00:00
eban
7f9964c14e 2003-02-09
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-09 06:58:31 +00:00
nobu
8fc90b887b * intern.h (HAVE_RB_DEFINE_ALLOC_FUNC, RB_CVAR_SET_4ARGS):
define to 1.

* ruby.h (NORETURN_STYLE_NEW): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-09 06:16:08 +00:00
nobu
7aa4cb1f06 * lib/mkmf.rb (init_mkmf): add libdir to LIBPATH unless cross
compiling.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-09 03:28:22 +00:00
aamine
e3ab724e00 * lib/net/http.rb: 4xx raises Net::ProtoServerError, 5xx raises Net::ProtoFatalError (for backward compatibility).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-08 23:29:07 +00:00
aamine
9952524a74 * lib/fileutils.rb: new method FileUtils.pwd (really).
* lib/fileutils.rb: FileUtils.pwd, cmp, identical?, uptodate? does not accept any option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-08 22:01:53 +00:00
akr
a9da9667d0 fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-08 10:37:43 +00:00
nobu
8f9e39b141 Sorry, missed contributer's name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-08 09:57:32 +00:00
nobu
075e9a5555 * misc/ruby-mode.el (ruby-forward-string): fixed void variable
error.

* misc/ruby-mode.el (ruby-font-lock-keywords): method name can
  be delimited by tab.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-08 09:35:36 +00:00
knu
718b4e9ea0 * lib/irb/workspace.rb, lib/irb/ext/math-mode.rb,
lib/irb/ext/multi-irb.rb, lib/irb/lc/error.rb,
  lib/irb/lc/help-message, lib/irb/lc/ja/error.rb,
  lib/shell/command-processor.rb, lib/shell/error.rb,
  lib/shell/filter.rb: Fix typos and grammos. [approved by: keiju]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-07 19:00:21 +00:00
knu
916f41d717 2003-02-08
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-07 18:47:06 +00:00
knu
9a4111c794 s/Mon 01/Mon 1/.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-07 18:45:54 +00:00
knu
0644ac3f8e * intern.h (HAVE_RB_DEFINE_ALLOC_FUNC): New boolean macro to make
it easier to write extensions that work with both ~1.6 and 1.8~.

* intern.h (RB_CVAR_SET_4ARGS): Ditto.

* ruby.h (NORETURN_STYLE_NEW): Ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-07 18:37:03 +00:00