Граф коммитов

130 Коммитов

Автор SHA1 Сообщение Дата
knu 4dfc822aec * ext/extmk.rb.in, lib/mkmf.rb: (dir_config) do not add the
specified include directory if already included in $CPPFLAGS.

* ext/extmk.rb.in, lib/mkmf.rb: (dir_config) return a more useful
value, [include_dir, lib_dir].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-24 06:21:58 +00:00
eban e2de605439 * ext/extmk.rb.in (create_makefile): create def file only if
it does not yet exist.
* lib/mkmf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-04-03 01:16:14 +00:00
knu 65579c6b31 * ext/extmk.rb.in, lib/mkmf.rb: add C++ rules in addition to C
rules for the mswin32 platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-28 14:47:44 +00:00
knu 03f06165b8 * ext/extmk.rb.in, lib/mkmf.rb: move C++ rules to the right place.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-28 10:35:40 +00:00
matz b60a365763 * eval.c (rb_mod_define_method): should have clear method cache.
* eval.c (rb_mod_define_method): should have raised exception for
  type error.

* ruby.h: changed "extern INLINE" to "static inline".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-27 07:10:58 +00:00
eban 4beca99d16 * ext/md5/md5init.c (md5i_new): remove rb_scan_args().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 09:27:18 +00:00
matz de51a663b4 * eval.c: remove TMP_PROTECT_END to prevent C_ALLOCA crash.
* file.c (rb_file_flock): do not trap EINTR.

* missing/flock.c (flock): returns the value from lockf(2)
  directly.

* eval.c (ev_const_defined): should ignore toplevel cbase (Object).

* eval.c (ev_const_get): ditto.

* ext/md5/md5.h: replace by independent md5 implementation
  contributed by L. Peter Deutsch (thanks).

* ext/md5/md5init.c: adopted to Deutsch's md5 implementation.

* pack.c (pack_unpack): string from P/p should be tainted.

* ext/curses/curses.c: curses on Mac OS X public beta does not
  have _maxx etc.

* marshal.c (w_object): should truncate trailing zero short for
  bignums.

* object.c (sym_intern): new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 08:57:16 +00:00
eban c8e0e1114a * ext/Win32API/Win32API.c: remove Init_win32api().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-26 05:11:18 +00:00
eban 9c33e4e6b4 * ext/Win32API/extconf.rb: add -fno-omit-frame-pointer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-22 13:23:36 +00:00
matz 9910feef4f * gc.c (id2ref): sometimes confused symbol and reference.
* dir.c (glob_helper): breaks loop after calling recusive
  glob_helper; all wild cards should be consumed; no need for
  further match.

* dir.c (dir_s_glob): gives warning if no match found.

* object.c (sym_inspect): did allocate extra byte space.

* marshal.c (shortlen): shortlen should return number of bytes
  written.

* eval.c (ev_const_defined): need not to check if cbase->nd_class
  is rb_cObject.

* eval.c (ev_const_get): ditto.

* time.c (time_zone): return "UTC" for UTC time objects.

* eval.c (THREAD_ALLOC): flags should be initialized.

* signal.c (rb_f_kill): should use FIX2INT, not FIX2UINT.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-21 03:41:45 +00:00
eban a84d087d3c * win32/win32.c (win32_stat): UNC support.
* dir.c (extract_path): fix "./*" problem.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-03-20 14:50:43 +00:00
matz df2d69b49a * eval.c (proc_call): should not modify ruby_block->frame.iter
based on ruby_frame->iter altered by PUSH_ITER().

* eval.c (rb_thread_fd_close): should save current context before
  raising exception.

* io.c (set_stdin): preserve original stdin.

* io.c (set_outfile): preserve original stdout/stderr.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-26 05:29:06 +00:00
eban 99ee3b0038 * ext/curses/extconf.rb: add dir_config.
quote> * missing/flock.c: use fcntl(2) instead of lockf(2).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-18 08:18:47 +00:00
matz e1c29a3f13 * io.c (set_outfile): f should be the FILE* from the assigning value.
* ext/socket/socket.c (tcp_s_open): should not give default value
  to local_host.

* time.c (time_s_times): move to Process::times.

* file.c (rb_file_s_lchmod): new method File::lchmod.

* file.c (rb_file_s_lchown): new method File::lchown.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-16 07:53:21 +00:00
matz 011ed67616 * process.c (proc_waitall): new method based on a patch from Brian
Fundakowski Feldman <green@green.dyndns.org>.

* process.c (last_status_set): objectify $? value (Process::Status).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-15 06:01:00 +00:00
matz 8e5c3b23f2 * dir.c (dir_s_glob): supprt backslash escape of metacharacters
and delimiters.

* dir.c (remove_backslases): remove backslashes from path before
  calling stat(2).

* dir.c (dir_s_glob): call rb_yield directly (via push_pattern) if
  block is given to the method.

* dir.c (push_pattern): do not call rb_ary_push; yield directly.

* eval.c (blk_copy_prev): reduced ALLOC_N too much.

* eval.c (frame_dup): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-14 05:52:06 +00:00
matz fa3eb5373e gdbm typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-13 06:05:14 +00:00
matz 8be410f065 * io.c (rb_io_ctl): do not call ioctl/fcntl for f2, if f and f2
have same fileno.

* eval.c (rb_load): raise LocaJumpError if unexpected local jumps
  appear during load.

* ext/socket/socket.c (bsock_close_read): don't call rb_thread_fd_close();
  it's supposed to be called by io_io_close().

* ext/socket/socket.c (bsock_close_read): do not modify f and f2.

* ext/socket/socket.c (bsock_close_write): ditto.

* ext/socket/socket.c (sock_new): avoid dup(2) on sockets.

* parse.y (primary): preserve and clear in_single and in_def using
  stack to prevent nested method errors in singleton class bodies.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-13 05:09:11 +00:00
matz ed520cf6e9 * parse.y (parse_quotedwords): %w should allow parenthesis escape.
* parse.y (parse_qstring): %q should allow terminator escape.

* re.c (rb_reg_options): new method to give an option values.

* parse.y (cond0): disable special treating of integer literal in
  conditional unless option -e is supplied.  changes current
  behavior.  experimental.

* parse.y (cond0): give warning for string/integer literals and
  dot operators in conditionals unless option -e is supplied.

* re.c (rb_reg_equal): all option flags should be same to be equal.

* error.c (Init_Exception): make Interrupt a subclass of
  SignalException.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-08 09:19:27 +00:00
matz 0b3092922d * io.c (rb_io_s_read): new method to call IO#read from
pathname.  In addition, it accepts third optional argument to
  specify starting point.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-18 08:43:14 +00:00
knu cf4d89f23b Add .cvsignore's.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-09 17:11:36 +00:00
matz 87beea4496 * enum.c (enum_inject): new method.
* gc.c (rb_gc_call_finalizer_at_exit): clear klass member of
  terminating object.

* eval.c (rb_call): raise exception for terminated object.

* bignum.c (bigdivrem): t2 might be too big for signed long; do
  not use rb_int2big(), but rb_uint2big().

* error.c (rb_load_fail): new func to report LoadError.

* ruby.c (load_file): use rb_load_fail.

* eval.c (ruby_finalize): should enclosed by PUSH_TAG/POP_TAG.

* gc.c (rb_gc_mark): link 2 of NODE_IFUNC should not be explicitly
  marked.  it may contain non object pointer.

* re.c (reg_s_last_match): Regexp::last_match(nth) returns nth
  substring of the match  (alternative for $& and $<digit>).

* eval.c (rb_mod_define_method): wrong comparison for blocks.

* gc.c (id2ref): should handle Symbol too.

* gc.c (id2ref): should print original ptr value

* eval.c (rb_iterate): NODE_CFUNC does not protect its data
  (nd_tval), so create new node NODE_IFUNC for iteration C
  function.

* eval.c (rb_yield_0): use NODE_IFUNC.

* gc.c (rb_gc_mark): support NODE_IFUNC.

* gc.c (mem_error): prohibit recursive mem_error().
  (ruby-bugs-ja:PR#36)

* eval.c (rb_thread_fd_writable): should not switch context if
  rb_thread_critical is set.

* eval.c (rb_thread_wait_fd): ditto.

* eval.c (rb_thread_wait_for): ditto.

* eval.c (rb_thread_select): ditto.

* eval.c (rb_thread_join): join during critical section causes
  deadlock.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-09 07:26:21 +00:00
matz 2cafd39ed2 thread_critical bug reported by Dave - matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-29 02:46:12 +00:00
matz 08ec02b92b changes from personal modifies -- matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-28 05:00:47 +00:00
matz ceec42bf8c matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-27 05:59:03 +00:00
matz 0e47c138c9 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-22 03:22:25 +00:00
eban bc722c84cd eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-05 11:07:49 +00:00
matz f54418b71f matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-27 09:23:38 +00:00
matz 39563af994 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-20 07:31:55 +00:00
matz c12c7ab1dc matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-17 09:09:03 +00:00
matz 21efb309e7 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-17 04:41:19 +00:00
matz 46608d361a 001117
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-16 16:56:59 +00:00
matz 074203d270 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-16 07:24:21 +00:00
eban 13f2744b2e eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-09 02:29:45 +00:00
matz af328b152b matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-08 05:29:37 +00:00
eban ef45458e94 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-06 06:13:52 +00:00
matz 1e1b5cdd25 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-03 08:56:50 +00:00
matz e4fae8da4b matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-09-22 18:15:52 +00:00
eban d8b6e0896e eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-09-22 05:00:23 +00:00
eban ca13525d5d eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-09-21 10:08:57 +00:00
eban ef405dfa04 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-09-12 13:56:52 +00:00
matz fbcc6dea0c matz: 1.6.0 final (hopufully)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-09-12 05:37:38 +00:00
eban 5b3ed19660 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-30 08:16:36 +00:00
eban db3e830f84 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-30 05:34:05 +00:00
eban 3c89a278e3 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-30 02:36:07 +00:00
matz 4e560cffd6 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-29 02:52:41 +00:00
eban d68d1d1584 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-24 06:29:30 +00:00
matz dea6ce41b4 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-24 06:21:43 +00:00
eban a85a9d31db eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-18 16:46:18 +00:00
eban 1732b6fa4e eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-08-09 21:27:10 +00:00