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

2162 Коммитов

Автор SHA1 Сообщение Дата
matz a973f9698f * enum.c (enum_all): now works without block.
* enum.c (enum_any): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-15 08:07:41 +00:00
nobu ed8fb0876d 2003-01-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-15 06:44:53 +00:00
nobu 08771defc6 * configure.in (ARCHFILE): set even unless --enable-shared on
AIX.  [ruby-talk:61466]

* marshal.c (math.h): should be included after ruby.h on AIX.
  [ruby-talk:61366]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-15 06:29:05 +00:00
nobu 17bb511df2 * eval.c (rb_f_require): do not search adding .rb/.so suffixes if
the suffix specifiched.  [ruby-dev:18702]
  http://moonrock.jp/~don/d/200211.html#d08_t1


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-14 12:56:34 +00:00
matz 6e1f15fc8b * parse.y (list_append): avoid O(n) search using node->nd_next->nd_end.
* parse.y (list_append): ditto.

* eval.c (rb_eval): NODE_ARRY nd_end adoption.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-14 07:45:19 +00:00
eban 8c900ac9bf 2003-01-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-14 04:06:14 +00:00
nobu 51308528f2 * io.c (next_argv): not always set binmode.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-13 16:24:40 +00:00
eban ada8110f7f * ext/dl/lib/dl/win32.rb: elimitate unnecessary "A" adding.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-12 17:36:24 +00:00
ttate 0af783bef4 Check the return value of dlopen().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-12 13:11:32 +00:00
eban 7af9f79560 * io.c (next_argv): inherit binmode from $defout.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-12 09:24:28 +00:00
ttate 81dded0d17 Correct the description about type specifiers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-11 17:28:59 +00:00
eban 3074716cad * ext/dl/lib/dl/win32.rb: compatibility improvement.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-11 15:00:56 +00:00
eban d15f5e8d55 2003-01-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-11 07:06:39 +00:00
nobu 4e6dbec8c8 * configure.in (RUBY_CHECK_IO_NEED): added more tests.
* io.c (rb_io_check_readable): seek after synchronized write.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-10 16:47:03 +00:00
nobu 5fd433efbb * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): syntax
classes are not allowed inside character classes.
  [ruby-talk:60996]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 16:26:43 +00:00
nobu bd86e81602 * configure.in: AC_MSG_FAILURE is a new macro in 2.54b or later.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 14:46:09 +00:00
nobu 00eedd2da9 adjust indentation
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 08:20:32 +00:00
nobu 99628bf1f0 * configure.in (RUBY_CHECK_IO_NEED): check whether fseek() and
fflush() are needed.

* io.c (flush_before_seek): flush write stream only.

* io.c (rb_io_check_readable): seek instead of flush if the last
  operation was write.

* io.c (rb_io_check_writable): seek instead of flush if the last
  operation was read.

* bcc32/Makefile.sub, win32/Makefile.sub: needs to seek between
  R/W.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 08:05:32 +00:00
matz 639ec76858 * eval.c (rb_eval): should not discard nested NODE_BLOCK.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 07:33:27 +00:00
eban 8916851b50 2003-01-09
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 06:53:38 +00:00
matz dadb16d894 * parse.y (stmt): NODE_NOT elimitation for if/unless/while/until node.
* parse.y (primary): ditto.

* eval.c (rb_eval): reduce recursive rb_eval() call by using sort
  of continuation passing style.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 06:16:43 +00:00
knu e29b4b4862 * st.h, st.c: Back out the introduction of st_*_func_t. Some
compilers complain about function type mismatch.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-09 04:28:28 +00:00
usa c65638ce29 * ext/Win32API/lib/win32/registry.rb: added. [new]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-08 08:12:16 +00:00
eban d6cba99ea5 2003-01-08
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-08 08:03:45 +00:00
matz 9796a9bc1c * eval.c: remove ruby_last_node and assignments seems to be
unnecessary

* intern.h: debug does not run if ID_ALLOCATOR is zero.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-08 06:59:38 +00:00
matz 17065d47a6 * range.c (range_each): treat fixnums specially to boost.
* numeric.c (num_step): remove rb_scan_args() for small speedup.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-08 06:05:08 +00:00
matz a89ac45548 * eval.c (svalue_to_avalue): should return converted array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-07 08:56:51 +00:00
matz 6d481a4ae4 * hash.c (env_clear): new Hash compatible method.
* 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
2003-01-07 07:36:40 +00:00
eban 954826f7a8 2003-01-07
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-07 04:12:52 +00:00
nobu 520416fdc5 * eval.c (rb_f_local_variables): skip $_, $~ and flip states in
dynamic variables.  [ruby-core:00681]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 22:50:18 +00:00
knu 220649ca78 [Forced commit]
I was wrong about something.  It was a return value,
not arguments that are not covered by the int-to-long promotion rule
on IA64, if the function is not explicitly declared.

The commit itself was generally a right thing to do, but just let me
correct my commit message.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 16:37:29 +00:00
knu 91b9d37a85 * st.h, st.c: Introduce new conventional typedef's, st_data_t,
st_compare_func_t, st_hash_func_t and st_each_func_t.

* st.h, st.c: Do explicit function declarations and do not rely on
  implicit declarations.  On such platforms as IA64, int argument
  values are NOT automatically promoted to long (64bit) values, so
  explicit declarations are mandatory for those functions that
  take long values or pointers.  This fixes miniruby's coredump on
  FreeBSD/IA64.

* class.c, eval.c, gc.c, hash.c, marshal.c, parse.y, variable.c:
  Add proper casts to avoid warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 15:55:43 +00:00
knu 8eba058079 * intern.h (rb_check_array_type): Declare rb_check_array_type().
* ext/digest/md5/md5ossl.c: Include stdio.h for sprintf() and
  string.h for memcmp().

* ext/dl/ptr.c: Include ctype.h for isdigit().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 11:47:53 +00:00
usa 2b442c240a * file.c: improve DOSISH drive letter support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 09:44:15 +00:00
eban 4de3dfd8d3 2003-01-06
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 09:35:51 +00:00
eban 6254d7103b * lib/fileutils.rb (ln): add ' -f' in the verbose message.
* lib/fileutils.rb (cp_r): add 'p' in the verbose message.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 09:34:16 +00:00
usa a8bb4ed577 * process.c (proc_exec_v): follow to proc_spawn_v(). call do_aspawn()
on Win32.

* process.c (rb_proc_exec): call do_spawn() on Win32.

* win32/win32.c, win32/win32.h (do_spawn, do_aspawn): add mode flag.

* process.c (proc_spawn_v, rb_f_system): follow above change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-06 04:30:27 +00:00
nobu 6a29dec1fd commit miss
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 22:16:45 +00:00
nobu a01112eafe *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 20:11:20 +00:00
nobu e1949185d3 * struct.c (make_struct): needs meta class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 17:40:29 +00:00
eban 27ff93a4ee * lib/fileutils.rb (ln): `argv' is not a argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 14:00:57 +00:00
nobu 1fbea3bef7 * ext/extmk.rb (extmake): set $0 temporarily while loading
extconf.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 08:50:21 +00:00
eban 15774ab1fb * instruby.rb: need paren in regexp(make -n install).
* 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
2003-01-05 07:04:10 +00:00
nobu a287a10df7 2003-01-05
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 03:06:51 +00:00
nobu 10c93d6c74 * ruby.c (ruby_init_loadpath): under Windows, get the module
path from an internal address instead of hard coded library
  name.

* cygwin/GNUmakefile.in, bcc32/Makefile.sub,
  win32/Makefile.sub (CPPFLAGS): removed LIBRUBY_SO macro.

* bcc32/Makefile.sub, win32/Makefile.sub (config.h): no longer
  depends on makefiles.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-05 01:40:24 +00:00
knu af8250ec34 FLUSH_REGISTER_WINDOWS must not be empty. Set to NULL instead.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3288 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 18:57:37 +00:00
knu 50e62191ec * defines.h (FLUSH_REGISTER_WINDOWS): Make the flushw call an
inline function instead so it can be used as an expression.

* eval.c (EXEC_TAG, THREAD_SAVE_CONTEXT): Consistently call
  FLUSH_REGISTER_WINDOWS before calling setjmp(). (I suspect that
  every setjmp() implementation should take care of register
  windows, though)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 18:48:24 +00:00
usa b369eea79f * file.c (utimbuf): use utimbuf instead of _utimbuf if defined _WIN32.
* win32/Makefile.sub (LIBS): use oldnames.lib.

* win32/win32.c (rb_w32_getcwd): follow above change.

* win32/win32.h: ditto.

* wince/direct.c, wince/direct.h (getcwd): ditto.

* wince/io.h: ditto.

* wince/string.c, wince/wince.h (stricmp, strnicmp): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 18:17:30 +00:00
usa d80285a9fe * process.c (rb_proc_exec): use same logic as DJGPP on win32 ports.
* process.c (rb_f_system): ditto.

* win32/win32.c, win32/win32.h (do_aspawn): [new]. for arrayed
  arguments.

* win32/win32.c (CreateChild): add new argument for real filename of
  executing process.

* win32/win32.c (NtHasRedirection, pipe_exec): follow above change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 06:26:10 +00:00
usa c471e19f22 * configure.in: set rb_cv_need_io_flush_between_seek=yes.
* win32/Makefile.sub (config.h): define NEED_IO_FLUSH_BETWEE_SEEK.
  (pointed out by moriq [ruby-dev:19299])


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04 05:33:29 +00:00