Commit graph

7022 commits

Author SHA1 Message Date
nobu
587e7ac7e7 * bignum.c (rb_cstr_to_inum): should not erase all 0s, but
squeeze into one.  [ruby-dev:19377]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-18 05:53:53 +00:00
gsinclair
b1e4030244 Added RDoc comments. See comments at EOF for TODOs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-17 15:17:20 +00:00
gsinclair
99a3e3fdfa Added RDoc comments. Several issues exist: see comments at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-17 14:06:27 +00:00
gsinclair
94d28746c2 Added RDoc comments. Several TODOs remain; see comments at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-17 09:30:11 +00:00
knu
b63bab709a 2003-01-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-16 18:52:16 +00:00
knu
b4406583e6 * sprintf.c (rb_f_sprintf): Fix a bug caused by an uninitialized
variable v, that a bignum unexpectedly gets converted into a
  string with its higher figures all filled with ./f/7/1,
  depending on the base.  This bug seems to have been introduced
  in rev.1.27.

* sprintf.c (rb_f_sprintf): Use switch instead of a sequence of
  else-if's.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-16 18:48:20 +00:00
eban
0df980f610 2003-01-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-16 14:38:04 +00:00
usa
bc9c12fcbc Update Copyright to 2003, too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-16 11:02:21 +00:00
michal
4e13d36561 -Wall cleanups (removed unused vars, no 'code has no effect' warnings)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-16 07:38:40 +00:00
michal
9df466b287 Updated Copyrights of Matz to 2003.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-16 07:34:03 +00:00
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