Commit graph

2361 commits

Author SHA1 Message Date
akr
951e8de1ad new method is Process.detach, not Proc#detach.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-08 03:54:58 +00:00
nobu
e4f5562f17 * eval.c (massign): fix a bug not to expand in assigment to sole
lhs.  [ruby-dev:19766]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-08 02:31:02 +00:00
akr
03e45b46ea * lib/pp.rb (Kernel.pp): module function.
(MatchData#pretty_print): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-07 13:02:29 +00:00
nobu
1cf8e92801 * ext/tcltklib/extconf.rb (find_tcl, find_tk): return true if
non-versioned found.  [ruby-dev:19759]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-07 11:45:01 +00:00
eban
51bea808f3 * ext/dbm/extconf.rb: add QDBM support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-07 06:06:58 +00:00
matz
9d77639f30 * parse.y (dsym): :"symbol string" style should not contain `\0'.
* process.c (proc_detach): new method Proc#detach(pid) which
  create background watcher thread to issue waitpid. [new]

* process.c (rb_detach_process): utility function to detach
  process from C code.

* ext/pty/pty.c (pty_finalize_syswait): terminate watcher thread,
  and detach child process (by creating new idle waitpid watcher
  thread).

* ext/pty/pty.c (pty_syswait): may lost signal stopped child.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-07 05:59:42 +00:00
eban
5208fec1cf * ext/Win32API/Win32API (Win32API_initialize): should check number of
papameters.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-06 16:26:43 +00:00
eban
280039eb20 * ext/Win32API/Win32API.c: no longer use inline-asms.
* ext/Win32API/extconf.rb: no need to add gcc options.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-06 15:45:14 +00:00
eban
2b214ff6a3 * configure.in: better YACC support on HP-UX.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-05 03:15:06 +00:00
nobu
33deae5069 commit miss
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-04 14:13:47 +00:00
nobu
f3bdfcc416 * configure.in, bcc32/Makefile.sub, win32/Makefile.sub: define
RUBY_EXPORT to export symbols.

* defines.h: use RUBY_EXTERN instead of EXTERN.

* intern.h, re.h, ruby.h, rubysig.h: ditto.

* win32/win32.h: remove EXTERN definition.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-04 14:12:19 +00:00
matz
72dfee9a96 * array.c (rb_ary_aref): give warning if index is a symbol.
[ruby-list:37217]

* array.c (rb_ary_aset): raise TypeError if index is a symbol.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-04 09:31:02 +00:00
eban
f9833b7d5f * missing/strftime.c: HP-UX support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-04 09:16:17 +00:00
matz
d37e836a58 * io.c (rb_io_popen): do not call rb_io_close() directly, call
"close" method instead. [ruby-dev:19717]

* io.c (rb_io_s_open): ditto.

* hash.c (rb_any_hash): remove DEFER_INTS.  all do_hash() calls in
  st.c are at the top of functions.  No reentrant problem.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-04 07:04:11 +00:00
eban
a38c2ac2dd * configure.in: better HP-UX support.
* missing/strftime.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-04 06:13:24 +00:00
knu
196583d6eb * ext/dl/MANIFEST: Exclude .cvsignore. [found by: eban]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-03 16:20:45 +00:00
knu
904a3a2e28 * ext/Win32API/MANIFEST: Belatedly add lib/win32/registry.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-03 16:18:06 +00:00
knu
10a8d5462b * MANIFEST: Belatedly add Test::Unit files. D'oh!
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-03 15:35:04 +00:00
matz
3738f871aa * parse.y (yycompile): zero clear ruby_eval_tree_begin if
compilation failed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-03 07:34:24 +00:00
matz
6d0b44501e * marshal.c (w_nbyte): should output always via rb_io_write().
* marshal.c (dump_ensure): ditto.

* marshal.c (marshal_dump): should call "binmode" method, if it
  responds to.

* marshal.c (r_byte): should input always via "getc" method.

* marshal.c (r_bytes0): should input always via "read" method.

* marshal.c (marshal_load): need not to set up FILE* fp;


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-03 07:20:17 +00:00
matz
6a6d0ad220 * parse.y (arg): parse 'lhs = a rescue b' as 'lhs=(a rescue b)'.
* io.c (rb_io_fread): should not clearerr() if there's no filled
  buffer (i.e. rb_io_fread() returning zero).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-03 05:17:39 +00:00
nobu
0cd0eab641 * misc/ruby-mode.el (ruby-expr-beg): escaped char syntax.
* misc/ruby-mode.el (ruby-parse-partial): ditto.

* misc/ruby-mode.el (ruby-parse-partial): no deep indent for
  block.

* misc/ruby-mode.el (ruby-backward-arg): skip arguments backward.

* misc/ruby-mode.el (ruby-calculate-indent): too deep indentation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-03-02 16:42:39 +00:00
usa
63f3bb891c * win32/win32.c (map_errno): map OS error to errno. [new]
* win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
	  kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime): use
	  map_errno() instead of using GetLastError() directly.

	* win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
	  rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
	  rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
	  rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
	  rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
	  rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
	  rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
	  rb_w32_fclose, rb_w32_close): map winsock error to errno.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-28 15:01:56 +00:00
nobu
a7447572dd 2003-02-28
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-28 13:55:07 +00:00
nobu
801406cb5d * win32/win32.c (flock): supports larger files, and maps error
code.

* win32/win32.c (rb_w32_asynchronize): returns errno from child
  thread.

* win32/win32.c (rb_w32_fclose, rb_w32_close): ensures unlocked.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-28 13:54:14 +00:00
eban
f649db5b16 2003-02-27
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-27 11:32:09 +00:00
matz
e5c5576aeb * string.c (str_new): need no MEMZERO().
* numeric.c (fix_gt): use rb_num_coerce_cmp() instead of
  rb_num_coerce_bin.

* numeric.c (fix_ge, fix_lt, fix_le): ditto.

* numeric.c (flo_gt, flo_ge, flo_lt, flo_le): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-27 08:04:32 +00:00
akr
780e1aa291 * lib/open-uri.rb: replace Kernel.open as well.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-26 08:39:05 +00:00
nahi
ecc5c37818 * lib/debug.rb (DEBUGGER__::Context#debug_command): bp filename must
be the basename of it.  [ruby-talk:65644]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-25 14:11:40 +00:00
eban
8d5ad9c1b3 * lib/fileutils (fu_stream_blksize): wrong logial condition.
(and -> or).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-23 09:00:51 +00:00
eban
a068f1cc07 2003-02-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-22 06:03:38 +00:00
matz
8327de7c84 * eval.c (rb_thread_create): may called from place higher than
rb_gc_stack_start.

* gc.c (Init_stack): update rb_gc_stack_start if it is lower (or
  higher if stack grows down) than the previous value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 18:02:19 +00:00
aamine
77923d719f * lib/fileutils.rb: new method FileUtils#copy_stream.
* lib/fileutils.rb: new method FileUtils#compare_file.
* lib/fileutils.rb: new method FileUtils#compare_stream.
* lib/fileutils.rb: new method FileUtils#rmtree (alias of rm_rf).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 11:57:31 +00:00
matz
ca014ae071 * string.c (rb_str_cmp_m): should use LONG2NUM().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 09:32:18 +00:00
eban
5527d3ae59 * eval.c (rb_f_require): do not need to abort if a DLEXT file
is not found.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 08:25:18 +00:00
matz
b3686317a7 * string.c (rb_str_cmp_m): two small bugs fixed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 03:52:27 +00:00
matz
8fc299e8bc * eval.c (rb_thread_remove): back outt changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 03:33:29 +00:00
eban
973b1eb274 2003-02-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 01:20:54 +00:00
matz
f11cb24556 * gc.c (rb_gc_mark): inline rb_gc_mark_children().
* gc.c (gc_sweep): new tactics to increase malloc_limit mildly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21 00:28:04 +00:00
matz
64db238388 * string.c (rb_str_cmp_m): return nil if str2 does not respond to
both "to_str" and "<=>".

* compar.c (cmp_gt): return nil if "<=>" returns nil (means
  incomparable).

* compar.c (cmp_ge): ditto.

* compar.c (cmp_lt): ditto.

* compar.c (cmp_between): use RTEST(), since cmp_lt and cmp_gt may
  return nil.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 20:40:20 +00:00
knu
697462490a This '$destdir' was meant to be a local variable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-20 14:15:57 +00:00
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