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

1293 Коммитов

Автор SHA1 Сообщение Дата
eban b3a426e70a * win32/win32.h (S_I?USR): define only if not mingw32.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-09 14:48:21 +00:00
nobu 23fb79a290 * ext/stringio/stringio.c (strio_set_string): reinitialize
properly.

* ext/stringio/stringio.c (strio_become): added self-assign check
  and experimental auto-conversion to StringIO.

* ext/stringio/stringio.c (strio_reopen): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-09 02:27:01 +00:00
eban 73d4f4b0bb * time.c (time_free): prototype; struct time_object -> void *.
avoid GCC warnings.
* lib/mkmf.rb, ext/extmk.rb ($LINK, $CPP): move to lib/mkmf.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 12:59:08 +00:00
usa 43241ab269 * ext/tcltklib/tcltklib.c: prototype; invoke_queue_handler() to avoid
VC++ warning.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 10:33:12 +00:00
usa d1a4bf7d3a * time.c: prototype; time_free() to avoid VC++ warnings.
* win32/win32.c (rb_w32_stat): remove S_IWGRP and S_IWOTH bits from
  st_mode.

* win32/win32.h (S_I*): define if not defined.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 10:06:40 +00:00
eban b8ff4a843e * lib/mkmf.rb (have_struct_member): moved from ext/socket/extconf.rb.
* ext/socket/extconf.rb: use macro_defined? instead of egrep_cpp.
* ext/etc/extconf.rb: use have_struct_member.
* ext/etc/etc.c: add prefix HAVE_ST_ to PW_ macros.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 10:00:43 +00:00
eban 4f26f3b890 * configure.in: modify program_prefix only if specified
--program-prefix.

* configure.in: don't generate ext/extmk.rb.

* Makefile.in: execute directly $(srcdir)/ext/extmk.rb.
  remove -Cext option, "Dir::chdir 'ext'" in ext/extmk.rb.

* {win32,bccwin32}/Makefile.sub: ditto.

* instruby.rb: ditto.

* ext/extmk.rb: renamed from ext/extmk.rb.in.

* lib/mkmf.rb (module Logging): create log files (mkmf.log)
  in each extension module directories.

* ext/extmk.rb: ditto.

* lib/mkmf.rb (macro_defined?): new method.

* ext/.cvsignore: remove extmk.rb.

* ext/*/.cvsignore: add "*.def".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 09:08:15 +00:00
H_Konishi 275d1a12e6 bcc32/configure.bat : Control of a message.
bcc32/makefile.sub  : @(sitearch) typo.
ext/extmk.rb.in     : [bccwin32] libdir is added to a library path.
lib/mkmf.rb         : ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-08 05:46:29 +00:00
nobu 75821a5afb * misc/inf-ruby.el (inferior-ruby-error-regexp-alist): regexp
alist for error message from ruby.

* misc/inf-ruby.el (inferior-ruby-mode): fixed for Emacs.

* misc/inf-ruby.el (ruby-send-region): compilation-parse-errors
  doesn't parse first line, so insert separators before each
  evaluations.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-07 14:37:26 +00:00
knu d29143b99e * lib/set.rb: Disallow Set.new(false). Add even more tests.
[Submitted by: "Christoph" <chr_news@gmx.net>]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-07 10:48:14 +00:00
knu 6954ba398a * lib/set.rb: Fix a bug in flatten()'s recursive set detection.
[Submitted by: "Christoph" <chr_news@gmx.net>]  Some tests
  against the bug are added.

* lib/set.rb: Resurrect the test suite by putting it after
  __END__ and executing `eval DATA.read'.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-07 10:32:23 +00:00
aamine 7622095d17 * parse.y (rb_gc_mark_parser): ruby_eval_tree is marked in eval.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-06 23:41:43 +00:00
nobu a449f78c89 * lib/mkmf.rb ($CC): command to compile C source.
* lib/mkmf.rb (try_compile): added.

* lib/mkmf.rb (egrep_cpp): use internal grep when pattern is
  Regexp, otherwise use external egrep command but get rid of
  pipe of command.com.

* lib/mkmf.rb (have_func): local variable should be volatile not
  to be eliminated by optimization.

* lib/mkmf.rb (create_makefile): link with CONFIG["LIBS"].

* lib/mkmf.rb (create_makefile): emit .SUFFIXES:.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-06 11:23:14 +00:00
matz 7881363731 * gc.c (ruby_xmalloc): remove MALLOC_LIMIT to avoid frequent
garabage collection.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-06 08:59:41 +00:00
aamine 95d65e34e1 * parse.y (rb_gc_mark_parser): should mark lex_input and ruby_debug_lines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-06 03:09:07 +00:00
aamine e389d3d153 * parse.y (rb_gc_mark_parser): should mark parse.y global variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-06 02:44:51 +00:00
aamine 5ef74b512c * io.c (rb_io_puts): RSTRING(line)->ptr might be NULL.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-06 01:58:32 +00:00
aamine 4ebc9ec226 * parse.y: should not use non-NODE VALUEs in the semantic stack.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-06 01:24:41 +00:00
nobu 458673dd8a * file.c (rb_path_check): nothing to check under DOSISH.
[ruby-list:35772]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-05 20:53:31 +00:00
aamine 4464544e05 modify function name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-05 20:09:52 +00:00
aamine 7ac3b71611 * gc.c (gc_sweep): should mark parser.
* parse.y (rb_gc_mark_parser): new function.
* intern.h (rb_gc_mark_parser): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-05 20:00:52 +00:00
matz 49cd091cf2 * variable.c (rb_path2class): should not use rb_eval_string().
* marshal.c (w_extended): should allow marshaling of object which
  is extended by named module.

* class.c (rb_make_metaclass): super may be T_ICLASS, need to skip.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-05 09:42:56 +00:00
michal 61ec0281a4 fix mem leaks (ruby-core:405, ruby-core:407)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-05 09:17:48 +00:00
nobu 1ec2805c4f * eval.c (rb_eval): overriding false constant with class/module
definition should be error.  (PR#327)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-05 04:15:50 +00:00
eban 8ed2c6fc8a * extmk.rb (create_makefile): add macro MAKEDIRS, INSTALL_PROG,
INSTALL_DATA.
* extmk.rb (create_makefile): support for building to any directory.
* extmk.rb (xsystem): move to mkmf.rb.
* mkmf.rb (xsystem): support for extmk.rb
* mkmf.rb ($CPP): remove '-E' option.  add CPPFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-04 16:52:53 +00:00
arai 0e7b1e2632 refined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-04 11:25:27 +00:00
matz 64901cd69b * class.c (rb_make_metaclass): obj.meta.super.meta should be equal
to obj.meta.meta.super (ruby-bugs-ja:PR#324).

* parse.y (yylex): the warning message "invalid
  character syntax" was never issued.

* marshal.c (r_bytes): do not use alloca (ruby-bugs:PR#382).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-04 06:37:39 +00:00
eban c10890f6d8 * extmk.rb: require mkmf.rb. remove duplicate methods.
use Config::CONFIG["FOO"] instead of @FOO@.
* mkmf.rb: extmk.rb support.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-03 08:40:47 +00:00
matz 6f484e4930 * variable.c (rb_copy_generic_ivar): remove old generic instance
variable table if it existes.

	* class.c (rb_make_metaclass): metaclass of a metaclass is a
	  metaclass itself.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-03 05:20:14 +00:00
nobu 20254d4e13 * re.c (rb_reg_search): MatchData must be rb_cMatch. (ruby-bugs-ja:PR#319)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-02 14:04:19 +00:00
aamine 10c4364287 * gc.c (gc_sweep): does reclaim nodes in also compile time, if we can.
* ruby.c (load_file): omit GC if we can.
* parse.y (ruby_parser_stack_on_heap): new function.
* intern.h (ruby_parser_stack_on_heap): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-02 12:19:30 +00:00
eban 4c3dc77fe6 * config.guess: fixed for Linux/PPC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2775 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-01 06:58:09 +00:00
knu fb00e309f6 Add set.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-30 13:47:49 +00:00
H_Konishi 417231cdfe * ext/Win32API/Win32API.c (Win32API_Call): typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-30 12:02:04 +00:00
nobu 6e4ed1ffd3 * variable.c (rb_const_assign): st_delete() takes pointer to key.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-30 10:46:37 +00:00
nobu 09a27c5a90 commit miss.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-30 10:43:41 +00:00
nobu e855026500 * ext/Win32API/Win32API.c (Win32API_Call): RSTRING()->ptr may be
NULL.

* ext/nkf/nkf.c (rb_nkf_guess): ditto.

* ext/readline/readline.c (readline_s_set_completion_append_character):
  ditto.

* ext/socket/socket.c (sock_s_getaddrinfo, sock_s_getnameinfo):
  ditto.

* ext/tcltklib/tcltklib.c (ip_toUTF8, ip_fromUTF8): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-30 10:42:09 +00:00
H_Konishi b4ea040b31 * bcc32/MakeFile.sub (sitearch): add.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-29 14:36:29 +00:00
matz 40bc4f5ae4 * array.c (rb_ary_become): should not free ptr if it's shared.
* eval.c (rb_alias): prohibit making an alias named "allocate" if
  klass is a metaclass.

* string.c (rb_string_value_ptr): StringValuePtr() should never
  return NULL pointer.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-29 09:08:18 +00:00
eban 3bf972993f * io.c (read_all): should use off_t instead of long.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-29 04:38:37 +00:00
nobu 3badfbf1d5 (ruby-bugs-ja:PR#296)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 16:00:34 +00:00
nobu 9208c74718 * marshal.c (r_object): yield loaded objects, not intermediates.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 15:58:35 +00:00
michal 5c70716bdc variable.c: Get rid of fix len buffer in rb_class_path (ruby-core:381)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 14:59:01 +00:00
nobu b961db7587 * io.c (appendline): data was lost when raw mode.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 14:36:38 +00:00
nobu 343f505fb8 * ext/stringio/stringio.c (strio_initialize): RSTRING(mode)->ptr
can be NULL.

* ext/stringio/stringio.c (strio_ungetc): fix buffer overflow.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 10:14:06 +00:00
michal 29966e099c file.c: fix mem leak in rb_stat_init
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 09:25:07 +00:00
nobu 8790d9b76e * win32/win32.c (kill): negate pid under Win9x.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 08:56:25 +00:00
eban 3685a85b3d * configure.in (ar): don't check twice for ar.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 07:38:25 +00:00
matz 1a44a463af * string.c (rb_str_delete_bang): should check if str->ptr is 0.
* string.c (rb_str_squeeze_bang): ditto.

* string.c (rb_str_count): ditto.

* string.c (rb_str_lstrip_bang): ditto.

* string.c (rb_str_rstrip_bang): ditto.

* string.c (rb_str_intern): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 06:01:58 +00:00
usa c1454b3acb * win32/win32.h: define SIGINT and SIGKILL if not defined.
* win32/win32.c: remove definition of SIGINT and SIGKILL.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-28 02:39:29 +00:00
nobu a13ebdb836 * ruby.c (require_libraries): prevent ruby_sorcefile from GC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-27 11:00:24 +00:00
matz c45908e41f * file.c (rb_find_file): $LOAD_PATH must not be empty.
* file.c (rb_find_file_ext): ditto.

* range.c (range_eq): class check should be based on range.class,
  instead of Range to work with Range.dup.

* range.c (range_eql): ditto.

* class.c (rb_mod_dup): need to preserve metaclass and flags.

* object.c (rb_cstr_to_dbl): had a buffer overrun.

* marshal.c (w_class): integrate singleton check into a funciton
  to follow DRY principle.

* marshal.c (w_uclass): should check singleton method.

* object.c (rb_obj_dup): dmark and dfree functions must be match
  for T_DATA type.

* object.c (rb_obj_dup): class of the duped object must be match
  to the class of the original.

* re.c (rb_reg_quote): do not escape \t, \f, \r, \n, for they are
  not regular expression metacharacters.

* time.c (time_s_alloc): use time_free instead of free (null check,
  also serves for type mark).

* time.c (time_s_at): check dfree function too.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-27 08:31:08 +00:00
wakou eaf7368732 * lib/cgi.rb (CGI#form): fix ruby-bugs-ja:PR#280, add default action.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-25 20:15:54 +00:00
nobu 941e43aacf * eval.c (call_trace_func): restore source file/line, as trace
function installed in required library with -r option can be
  called while parsing.  (ruby-bugs:PR#372)

* eval.c (module_setup): unused variable.  [ruby-core:00358]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-24 06:32:40 +00:00
akr 9c4a482229 * lib/time.rb (Time.rfc2822, Time#rfc2822): preserve localtimeness.
* lib/pp.rb: pretty_print_cycled is renamed to pretty_print_cycle.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-24 05:18:08 +00:00
eban 4b0f91401c * instruby.rb: arch -> sitearch
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-23 15:24:03 +00:00
nobu de6c650f44 * eval.c (method_call): check receiver is defined.
* eval.c (umethod_call): removed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-23 15:01:13 +00:00
eban fc8f412488 * configure.in: RUBY_SO_NAME is msvcrt-rubyXX on mswin32/mingw32.
* configure.in (sitearch): new var.
* mkconfig.rb, lib/mkmf.rb (sitearch): ditto.
* win32/Makefile.sub, win32/setup.mak (sitearch): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-23 08:18:19 +00:00
michal d576f30068 Int vs Long clenup (forgot ChangeLog)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-21 15:53:07 +00:00
matz c7c1384e60 * eval.c (rb_thread_cleanup): should not modify the global
variable curr_thread.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-21 08:30:09 +00:00
eban a7ed0fe4f9 * ChangeLog: typo fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2730 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-21 08:27:29 +00:00
eban 35ef113acf * configure.in: set ac_cv_func__setjump to "no" on Cygwin.
* configure.in: set ac_cv_func_crypt to "no" on MinGW.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-21 07:17:55 +00:00
H_Konishi 5738d62912 * replace of check EPIPE error(in getc()) rutine on bcc32.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-20 13:03:22 +00:00
eban 80caadabe9 * file.c (rb_file_s_expand_path): accept drive letter on Cygwin.
* file.c (is_absolute_path): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-20 10:42:57 +00:00
matz c8c55db68a * io.c (rb_io_putc): output via rb_io_write().
* re.c (rb_reg_initialize_m): frozen check should be moved here
  from rb_reg_initialize().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-20 07:36:01 +00:00
nobu e0c5eed65c * misc/inf-ruby.el (inf-ruby-keys): ruby-send-definition
conflicted with ruby-insert-end.

* misc/inf-ruby.el (inferior-ruby-mode): compilation-minor-mode.

* misc/inf-ruby.el (ruby-send-region): send as here document to
  adjust source file/line.  [ruby-talk:47113], [ruby-dev:17965]

* misc/inf-ruby.el (ruby-send-terminator): added to make unique
  terminator.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19 10:07:06 +00:00
matz b818cdfaf3 * array.c (sort_2): comparison should be done as signed long.
* array.c (sort_2): should return int, not VALUE.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19 06:41:02 +00:00
matz ae23000c0e * array.c (sort_2): *a - *b may overflow.
* array.c (ary_new): len*sizeof(VALUE) may be a positive value.

* array.c (rb_ary_initialize): ditto.

* object.c (rb_class_allocate_instance): move singleton class
  check from rb_obj_alloc().

* re.c (rb_reg_initialize): should not modify frozen Regexp.

* ext/tcltklib/tcltklib.c (ip_init): allocation framework.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19 05:56:09 +00:00
nobu 71a202fc01 particular symbol for win32_exception_list.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19 03:41:00 +00:00
nobu 11e7d457d6 * eval.c (rb_thread_save_context, rb_thread_restore_context):
save/restore SEH chain on MS-Windows at thread switch.
  [ruby-win32:273]

* eval.c (win32_get_exception_frame, win32_set_exception_frame):
  added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19 00:37:16 +00:00
eban 4f60a534cd * io.c (NOFILE): define NOFILE as 64 if not defined.
* signal.c (sighandler_t): rename to sh_t on dietlibc.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-16 07:23:04 +00:00
nobu c27d662f50 * bignum.c (rb_cstr_to_inum): new decimal and octal string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-16 06:39:27 +00:00
nobu 2229b70615 * io.c (rb_io_fread): renamed from io_fread and made extern.
* marshal.c (r_bytes0): check if successfully read, use
  rb_io_fread() instead of fread() to be preemptive.
  (ruby-bugs-ja:PR#294, 295)

* rubyio.h (rb_io_fread): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-16 02:52:25 +00:00
nobu 3d923fb928 commit miss.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2712 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-15 23:00:10 +00:00
nobu e3f7536501 * eval.c (compile_error): must not clear ruby_sourcefile here.
(ruby-bugs:PR#364).

* eval.c (rb_longjmp): set ruby_sourcefile before making
  backtrace.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-15 22:58:45 +00:00
nobu 92ca6c7773 * eval.c (ruby_current_node) : added to set sourceline on demand.
* eval.c (error_pos, error_print, rb_longjmp, assign): set source
  file/line.

* eval.c (rb_eval): store current node instead of file/line, and
  preserve it at return.

* eval.c (module_setup): ditto.

* eval.c (struct thread): store node instead of file/line.

* eval.c (rb_thread_raise): ditto.

* intern.h (ruby_current_node): added.

* intern.h (ruby_set_current_source): added.

* parse.y (stmt, arg): not fix position of assignment.

* parse.y (node_assign): ditto.

* parse.y (yycompile): clear current node.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-15 11:49:40 +00:00
matz cf5d04f663 * hash.c (rb_hash_replace): should copy ifnone.
* hash.c (rb_hash_dup): should preserve HASH_PROC_DEFAULT and
  HASH_DELETED flags.

* hash.c (rb_hash_shift): shift from empty hash should not return
  its default proc.

* hash.c (rb_hash_default_proc): new method. [new]

* array.c (rb_ary_aref): no need for Bignum check.

* array.c (rb_ary_aset): explicit Bignum check removd.

* numeric.c (fix_aref): normalize bignum before bit-op.

* bignum.c (rb_big_rand): max may be Bignum zero.

* bignum.c (rb_cstr_to_inum): should normalize bignums, to avoid
  returning fixable bignum value.

* bignum.c (rb_uint2big): there should be no zero sized bignum.

* ext/extmk.rb.in: extmake() that works properly for both tkutil
  (tk/tkutil.so) and digest/sha1.

* hash.c (rb_hash_equal): should check HASH_PROC_DEFAULT too.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-13 09:21:18 +00:00
knu 510c93caac * ruby.c (set_arg0): Correct the position of #endif.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-12 13:39:22 +00:00
matz 1f99d95729 * bignum.c (rb_big_cmp): use dbl2big() for Floats, instead of
big2dbl().

* bignum.c (Init_Bignum): rb_big_zero_p() removed.  There may be
  Bignum zero.

* eval.c (rb_call0): new argument added for original method name.
  preserve original method name in frame->orig_func.

* eval.c (is_defined): use frame->orig_func, not last_func.

* eval.c (rb_eval): ditto.

* eval.c (method_call): supply data->oid also to rb_call0().

* object.c (rb_class_allocate_instance): call rb_obj_alloc() when
  called from alias, thus invoke original "allocate".

* eval.c (remove_method): removing allocate from classes should
  cause NameError.

* hash.c (rb_hash_equal): should check default values.

* ext/socket/socket.c (s_recvfrom): update RSTRING len.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-12 07:39:12 +00:00
nobu 66f8f8691b * bignum.c (rb_big_cmp): raise for NaN. (ruby-bugs-ja:PR#284).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-12 07:21:25 +00:00
nobu 91d884b86e * eval.c (rb_eval): set line number from all nodes.
* eval.c (proc_to_s): show source file/line if available.

* marshal.c (r_object): register TYPE_BIGNUM regardless real type.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-11 00:36:38 +00:00
eban e402358a33 * ext/Win32API/extconf.rb: check existence of <windows.h>.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-09 04:36:46 +00:00
nobu 8f6b1e000a * lib/optparse.rb (String): must provide conversion block.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-08 00:38:28 +00:00
nobu 8a7fbc6fec * lib/optparse.rb (OptionParser::Switch::parse_arg): require block
always.

* lib/optparse.rb (NilClass): must provide conversion block.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-07 23:48:47 +00:00
nobu 11cfb7e0f4 * lib/optparse/time.rb: prior time.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-07 13:13:44 +00:00
nobu e20d6139f4 * optparse.rb (OptionParser::Completion::convert): returned all
values not first one.

* optparse.rb (OptionParser::Switch::parse): return values as is.

* optparse.rb (OptionParser::order): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-07 13:00:10 +00:00
nobu 0a85c65859 * lib/optparse/uri.rb: require standard uri module. thanks to
Minero Aoki.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-07 00:47:41 +00:00
aamine 30bc60cfe4 * ext/racc/cparse/cparse.c: reduce goto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-06 23:42:04 +00:00
usa fc2a1ad79f * string.c (rb_str_rindex): must return -1 if unmatched.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-06 06:20:43 +00:00
aamine cceff0f4b4 * MANIFEST: add lib/racc/parser.rb.
* ext/racc/cparse/cparse.c: code refine.
* ext/racc/cparse/MANIFEST: add depend.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-05 13:38:49 +00:00
nobu 14859cdf94 * ext/curses/curses.c: follow allocation framework.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-04 13:32:15 +00:00
nobu dfa40855bd * eval.c (rb_eval): set constant in cbase scope.
* eval.c (assign): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-03 12:27:33 +00:00
aamine 61eaf40b4a * ext/strscan/strscan.c: follow allocation framework.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-02 00:10:19 +00:00
matz 5e6634ce67 * parse.y (tokadd_string): ignore backslashed spaces in %w.
* enum.c (enum_find): do not use rb_eval_cmd(); should not accept
  a string for if_none.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-01 09:42:38 +00:00
matz 2b98e10419 * eval.c (rb_undef): undef should be done for klass, not ruby_class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-31 05:18:43 +00:00
nobu f94534efbc * misc/ruby-mode.el (ruby-accurate-end-of-block): restrict search
region.

* misc/ruby-mode.el (ruby-parse-partial): reversed wrong patch.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-30 10:54:33 +00:00
nobu e1b56ea429 * misc/ruby-mode.el (ruby-accurate-end-of-block): incomplete block
caused infinite loop.

* misc/ruby-mode.el (ruby-parse-partial): returns nil unless
  delimiters found.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-30 08:23:31 +00:00
eban 7f2348488f * ext/tcltklib/stubs.c (ruby_tcltk_stubs): win32_getenv returns
the same address always, so allocate string by ruby_strdup.

* win32/win32.c: prototype; rb_w32_open_osfhandle().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-30 06:34:27 +00:00
aamine fd98af4c65 * eval.c (rb_thread_join_m): add parameter type declaration.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-30 00:13:56 +00:00
aamine 62395a335d * eval.c (localjump_error): add parameter type declaration.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-29 23:34:43 +00:00
eban e38f8b5cdc * ext/extmk.rb.in: always use File.expand_path for $top_srcdir.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-29 07:06:34 +00:00
matz 89dbf99bac * numeric.c (num_to_int): default to_int implementaion for every
numeric class.

* re.c (rb_reg_quote): initial part of the string was never copied
  to the quoted string.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-29 06:14:10 +00:00
nobu ce84517f2c * eval.c (rb_eval): no need to convert to string twice.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-26 14:12:26 +00:00
nobu 5384316f5b * misc/ruby-mode.el (ruby-expr-beg): wrong indent at modifiers
after ?.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-26 09:33:39 +00:00
eban 52ecaae5b6 * sample/mkproto.rb: ditto and fix bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-26 07:47:50 +00:00
eban d365d1f568 * ext/extmk.rb.in (create_makefile): use Regexp in gsub.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-26 07:05:40 +00:00
matz 7194b66fb2 * random.c: replace with Mersenne Twister RNG.
* eval.c (jump_tag_but_local_jump): preserve retval in
  LocalJumpError exceptions.

* parse.y (command): no more check for "super outside of method".

* eval.c (rb_mod_define_method): should set last_class and
  last_func in the block->frame.

* eval.c (error_handle): should handle TAG_THROW as well.

* parse.y (yylex): new decimal notation '0d4567'.

* parse.y (yylex): new octal notation '0o777'.

* parse.y (string_content): every string_content node should
  return string only.  use NODE_EVSTR to coercing.

* eval.c (rb_eval): NODE_EVSTR support.

* re.c (rb_reg_quote): avoid unnecessary string allocation.

* string.c (get_pat): quote metachracters before compiling a
  string into a regex.

* string.c (rb_str_split_m): special treatment of strings of size
  1, but AWK emulation.  now uses get_pat().

* string.c (rb_str_match_m): quote metacharacters.

* string.c (rb_str_match2): ditto.

* ext/socket/socket.c (sock_addrinfo): make all 3 versions of
  getaddrinfo happy.  [ruby-core:00184]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-26 06:12:39 +00:00
aamine d5dc032e33 * parse.y (yylex): modify to accept a code like "m (a){...}".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-26 03:13:06 +00:00
nobu abfbbcf8e3 * misc/ruby-mode.el (ruby-delimiter): include here document.
* misc/ruby-mode.el (ruby-deep-arglist): skips spaces after
  parenthesis when 'space.

* misc/ruby-mode.el (ruby-imenu-create-index): fix for nested
  classes.

* misc/ruby-mode.el (ruby-accurate-end-of-block): added.  scan a
  block in the order.

* misc/ruby-mode.el (ruby-expr-beg): support for here document.

* misc/ruby-mode.el (ruby-parse-partial): splitted from
  ruby-parse-region.

* misc/ruby-mode.el (ruby-move-to-block): skips RD style comments.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-25 00:09:03 +00:00
shugo 03b60c7068 * lib/net/ftp.rb (set_socket): new method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-18 02:52:48 +00:00
aamine 55a65fd4e9 * parse.y (yylex): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-17 21:49:40 +00:00
aamine 141d0c380f * parse.y (heredoc_identifier): modify typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-15 01:33:36 +00:00
nobu 9b198b3d85 * parse.y (literal_concat_string): wrong optimization.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-13 00:32:46 +00:00
nobu 6af4aebc95 * lib/resolv.rb (Resolv::DNS::open, close): new.
* lib/optparse.rb, lib/optparse: import.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2642 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-12 16:34:02 +00:00
aamine fa848fb6fd * lib/net/http.rb: rename HTTP.get_uri get_response.
* lib/net/http.rb: HTTP.get_print accepts URI objects.
* lib/net/http.rb: HTTP.get did not work with URI.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 21:33:38 +00:00
nobu ad9d3f9655 * string.c (rb_str_match): fix for string match.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 17:17:14 +00:00
nobu a9efb02c18 * ext/stringio/stringio.c (strio_gets_internal): fixed for record
separator longer than 1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 15:04:23 +00:00
matz be1d2c5f68 * string.c (rb_str_slice_bang): if there's no corresponding
substring, slice! should return nil without exception.

* array.c (rb_ary_insert): type fixed.

* string.c (rb_str_split_m): accept separator value nil as well.

* string.c (rb_str_become): was leaking memory.

* class.c (rb_include_module): should not alter other
  classes/modules by inclusion.  by this fix, local order may not
  be preserved for some cases.

* class.c (include_class_new): module may be T_ICLASS; retrieve
  original module information.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 08:22:18 +00:00
shugo da72e5a644 * lib/resolv.rb: untaint strings read from /etc/hosts and
/etc/resolv.conf to prevent SecurityError when $SAFE==1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 04:02:08 +00:00
keiju af064b04b1 * irb 0.9
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-09 11:17:17 +00:00
michal 722c202b9a enum.c: Fix bug in enum_sort_by and some code indents
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-05 08:58:57 +00:00
wakou ad9af3738b * lib/cgi.rb (CGI#initialize): improvement for mod_ruby.
thanks to Sean Chittenden <sean@ruby-lang.org>, Shugo Maeda
	<shugo@modruby.net>


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-05 05:04:25 +00:00
aamine 02b589fd43 * parse.y: remove useless function str_extend_p().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-04 14:41:36 +00:00
shugo 8e346d8cb1 * lib/net/ftp.rb (get): new method.
* lib/net/ftp.rb (putt): ditto.
* lib/net/ftp.rb (binary): ditto.
* lib/net/ftp.rb (binary=): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 05:28:01 +00:00
shugo 9620b20227 * lib/net/ftp.rb (getbinaryfile): the second argument (localfile)
is now optional.
* lib/net/ftp.rb (gettextfile): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 04:59:24 +00:00
shugo f930648ae5 * lib/net/ftp.rb: use &block and yield for speed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 04:49:54 +00:00
wakou 8a95f1257f * lib/cgi.rb (CGI#initialize): improvement for mod_ruby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 02:36:46 +00:00
wakou e5ae0debe3 * lib/cgi.rb (CGI#header): accept any type as value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-02 14:19:51 +00:00
eban 39e205994c * configure.in (seekdir, telldir): add ac_cv_func_telldir=yes,
ac_cv_func_seekdir=yes for MinGW.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-30 09:07:54 +00:00
usa 2f2143a2be * io.c (pipe_finalize, pipe_popen): two-way pipe support for win32.
* win32/win32.c (ChildRecord, FindFreeChildSlot): ditto.

* win32/win32.c, win32/win32.h (pipe_exec): new function for two-way
  pipe support for win32.

* win32/win32.c, win32/win32.h (FindPipedChildSlot, rb_w32_popen,
  rb_w32_pclose): removed functions for two-way pipe support for win32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-28 18:26:01 +00:00
usa cd6cffa7b6 * pack.c (pack_unpack): change names of local variables because their
names are overlapped.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-28 14:53:03 +00:00
matz f0221db462 * re.c (rb_reg_expr_str): need to process backslashes properly.
* object.c (rb_any_to_a): declare Object#to_a to be obsolete.

* object.c (rb_Array): do not convert nil into [] automagically.

* object.c (rb_Integer): use "to_int" instead of
  "to_i". [experimental]

* object.c (nil_to_f): new method.

* object.c (rb_Integer): Symbols and nil should cause error.

* object.c (rb_Float): nil should cause error.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-28 14:42:46 +00:00
akr ee852ed46d lib/pp.rb: fix object address.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-28 08:55:10 +00:00
usa ad8c8144d4 * win32/win32.c (rb_w32_stat): fix buffer overflow. (ruby-bugs:PR#329)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-27 14:57:10 +00:00
akr 571ff1d6b9 * lib/prettyprint.rb, lib/pp.rb: convenience methods added.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-27 12:01:07 +00:00
akr e50f2d285f * lib/prettyprint.rb: re-implemented for incremental output to handle
huge data.  API is changed a bit.

* lib/pp.rb: adapt new pretty printing API.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-27 06:27:20 +00:00
nobu 264d2e4da9 * parse.y (literal_concat_string): non-string last expression in
#{} was ignored when followed by literal.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-26 23:29:10 +00:00
nobu 0fdfc0bbef * parse.y (words, qwords): word list literal rules.
* parse.y (parse_string): ditto.

* parse.y (yylex): %W: word list literal with interpolation. [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-26 08:01:00 +00:00
nobu a97ba8c7f7 * parse.y (string1, xstring, regexp): moved lex_strnest
initialization to string_contents/xstring_contents.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-25 09:56:36 +00:00
H_Konishi fb0eb3ccd9 * dln.c: remove definition rb_loaderror().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-25 09:44:57 +00:00
H_Konishi 60eadd77e8 * dln.c: remark definition rb_loaderror().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 15:26:17 +00:00
nobu e8e3f56b81 * parse.y (string_dvar): allow back references in interpolation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 15:18:00 +00:00
matz 05b4ec8683 * parse.y (yylex): __END__ should not be effective within
string literals.

* parse.y (here_document): should be aware of __END__ within here
  documents.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 07:59:02 +00:00
nobu 9020b60483 * lib/mkmf.rb (create_makefile): get rid of nested string.
* lib/mkmf.rb (install_rb): site-install didn't work properly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 07:34:30 +00:00
nobu 33061b45b4 * eval.c (rb_eval): NODE_EVSTR is no longer used.
* eval.c (eval): not enforce to make assigned variables dynamic.

* parse.y (string): split rules to strings/xstring/regexp to allow
  arbitrary statements inside string interpolation.

* parse.y (here_document): splitted into three phases.

* parse.y (literall_append, literal_concat): added.
  append/concatinate string literals.

* sample/test.rb (valid_syntax): adjust line number for BEGIN.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 07:20:42 +00:00
tadf 0e866a2e51 updated to the new version (based on date2 3.3).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-22 15:26:58 +00:00
nobu 47993929c4 * ext/readline/readline.c (readline_readline): get rid of
libreadline's bug. (ruby-bugs-ja:PR#268)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-20 12:14:33 +00:00
eban 8d8af5225d * configure.in (__NO_ISOCEXT): add for mingw-runtime 2.0-2.
* configure.in (__MSVCRT__): removed because it is defined
  in the GCC specs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-20 10:25:11 +00:00
eban e97d0b7764 * lib/ftool.rb (BUFSIZE): tuning, set buffer length to 8192.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-20 08:21:00 +00:00
eban fa1f7befa9 * ext/extmk.rb, lib/mkmf.rb (xsystem): open the log file if xsystem is called.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-19 05:54:24 +00:00
nobu 772f420a18 * parse.y (yylex): ? followed by successive word charaters is
ternary operator not numeric literal.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-18 15:53:57 +00:00
nobu de9251e2c7 * parse.y (yylex): commands after break/next/rescue can take
arguments.  (ruby-bugs-ja:PR#265)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-18 15:46:24 +00:00
usa eecf7fdcde * win32/mkexports.rb: remove unnecessary exports. (ruby-dev:17418)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-18 10:23:31 +00:00
matz 1979d9ae1f * parse.y (yylex): obsolete '?<whitespace>'; use '?\s', '?\n',
etc, instead.

* parse.y (yylex): no here document after a dot.

* parse.y (yylex): should have set lex_state after '`'.

* parse.y (yylex): should have set lex_state properly after
  tOP_ASGN.

* bignum.c (rb_big2dbl): return canonical HUGE_VAL for infinity.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-18 06:29:07 +00:00
nobu 12c00312aa * parse.y (yylex): should pushback proper char after '<<'.
* parse.y (range_op, cond0, cond): get rid of doubled warnings.

* parse.y (value_expr): reduce recursion level.

* parse.y (logop): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-18 03:53:23 +00:00
nobu 7138dfa325 * dln.c (dln_load): need to preserve dln_strerror() result,
calling other dl family can clear it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-17 01:54:51 +00:00
knu 7297827ec6 * dir.c (glob_helper): Use lstat() instead of stat() so it catches
a dead symlink.  Given a dead symlink named "a", Dir.glob("?")
  did catch it but Dir.glob("a") somehow didn't.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-15 10:24:38 +00:00
H_Konishi 42c59aa317 *bcc32 fix for win9x.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-14 12:21:50 +00:00
nobu aa79984980 * parse.y (read_escape): deny zero-width hexadecimal character.
(ruby-bugs-ja:PR#260)

* parse.y (tokadd_escape): ditto.

* regex.c (re_compile_pattern): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-14 06:27:18 +00:00
matz b3ecbfaa01 * eval.c (svalue_to_avalue): v may be Qundef. This fix was
suggested by Guy Decoux.

* hash.c (rb_hash_s_create): use rb_hash_aset() instead of calling
  st_insert() directly, to dup&freeze string keys.

* parse.y (yylex): proper error message for "@@0".

* parse.y (yylex): paren to parse_string() must be zero for
  unparenthesized strings.

* parse.y (str_extend): broken string when unterminated "#{".

* enum.c (enum_sort_by): had a bug in 1 element enumeration.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-13 03:55:44 +00:00
akira b8be8d535a merged differences between uri-0.9.6 and uri-0.9.7
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-12 09:32:35 +00:00
matz 91511afa9c * parse.y (yylex): 'do' should return kDO_BLOCK on EXPR_ENDARG.
* parse.y (singleton): "def (()).a end" dumped core.

* parse.y (range_op): node may be null.

* parse.y (match_gen): ditto.

* parse.y (arg): void value check for "..", "...", "!", and "not".

* parse.y (match_gen): void value check for "=~".

* parse.y (value_expr): check NODE_AND and NODE_OR recursively.

* parse.y (cond0): void value check added for conditionals.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-12 09:22:20 +00:00
nobu 94f86651d6 * parse.y (stmt): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 17:39:38 +00:00
eban 7f80a1800f * configure.in (LIBRUBY): rename to lib$(LIBRUBY_SO).a on Cygwin/MinGW.
* configure.in, cygwin/GNUmakefile: use dllwrap when --disable-shared
  is specified.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 10:26:13 +00:00
matz 22010642b2 * eval.c (rb_eval): ruby_frame->last_func may be null, if it's
called outside of a method.

* parse.y (arg): use INT2NUM, not INT2FIX for tUMINUS.

* parse.y (arg): unnecessary negative tPOW treatment.

* parse.y (tokadd_escape): wrong backslash escapement.

* parse.y (stmt,arg): too much void value check.

* parse.y (stmt,arg): need to check void value on rules which does
  not use node_assign().

* ext/socket/socket.c (ipaddr): need not to taint hostnames.

* range.c (range_include): should be based on "<=>", whereas
  member? still is based on "each".

* range.c (range_min,range_max): redefine methods based on "<=>".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 07:02:23 +00:00
shugo a5fd4cec84 * lib/net/ftp.rb (noop): new method.
* lib/net/ftp.rb (site): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 04:20:11 +00:00
usa ec16af8173 * bcc32/Makefile.sub: set PROCESSOR_LEVEL to 6 if it's too big value.
* win32/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 04:16:58 +00:00
H_Konishi 0b67be50a5 * bcc32/configure.bat fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 03:41:52 +00:00
H_Konishi d0b3651906 new platform [bccwin32] merged.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 01:27:48 +00:00
akr be87030ea8 fix PR#.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-10 13:02:00 +00:00
nobu d94aa88749 *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-10 10:16:13 +00:00
nobu 31de741673 * numeric.c (fix_lshift): negative shift count means right shift.
* numeric.c (fix_rshift): return -1 when left side operand is
  negative.

* parse.y (yylex): `0_' should be an error. (ruby-bugs-ja:PR#239)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-10 10:06:12 +00:00
ttate 2d5b7f7365 * ext/dl: change the callback mechanism.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-09 17:47:34 +00:00
aamine d5ceb6ef82 modify typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-09 02:44:32 +00:00
H_Konishi 96654ce041 * sample/biorhythm.rb (getPosiiton,etc)
fix at changing Date module ( Date is changed Fixnum to Rational )


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-06 11:14:04 +00:00
usa 564edcce18 * win32/Makefile.sub (config.status): use sub! instead of []= because
[]= causes exception.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-06 03:06:11 +00:00
nobu a7a2b1d8f3 typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-06 02:46:18 +00:00
nobu d760f97172 * lib/thread.rb (Queue::pop): get rid of race condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-06 02:43:02 +00:00
eban 160a9f79ef * ext/Win32API/extconf.rb: refactoring.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-04 09:52:28 +00:00
eban 9ba6e0738a * ext/socket/extconf.rb: The IPv6 stack of Cygwin is still incomplete.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-04 09:33:39 +00:00
matz b7bc0cae53 * string.c (rb_str_aset): should raise error if an indexing string
is not found in the receiver.

* sprintf.c (rb_f_sprintf): "%d" should convert objects into
  integers using Integer().

* lib/tempfile.rb (Tempfile::size): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-04 07:34:19 +00:00
nobu dc010ff515 * ext/socket/getaddrinfo.c (gai_strerror): make literals const.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-03 16:02:16 +00:00
nobu 5df72288f8 * ext/socket/addrinfo.h: typo.
* ext/socket/getaddrinfo.c (gai_strerror): get rid of warning.

* ext/socket/socket.c (init_inetsock): ensures resources are
  freed at exceptions.

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

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-03 15:52:28 +00:00
suke a52442f27e change PLATFORM with RUBY_PLATFORM.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-03 11:44:08 +00:00
nobu 2263dbe022 * parse.y (here_document): check if identifier is terminated.
(ruby-bugs-ja:PR#239)

* parse.y (yylex): should pushback proper char after '**'.
  (ruby-bugs-ja:PR#240)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-02 22:16:55 +00:00
suke f14180707d merge win32ole from rough
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-01 12:34:30 +00:00
matz 34f5c4061c * range.c (range_step): iteration done using "+" if elements are
Numeric.  Otherwise using "succ".

* range.c (range_each): iteration done using "succ".  If the
  elements does not respond to "succ", raise TypeError.  As a
  result, all Enumerable methods, e.g. collect, require elements
  to respond to "succ'.

* range.c (range_member): comparison done using "each", if
  elements are non-Numeric or no-"succ" objects.  Otherwise
  compare using "<=>".

* range.c (Init_Range): remove "size" and "length".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-30 06:12:29 +00:00
wakou 21b2953030 * lib/cgi.rb: if StringIO is usable then use it.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-30 00:21:05 +00:00
H_Konishi d7c1784297 Wed May 29 18:55:47 2002 KONISHI Hiromasa <H_Konishi@ruby-lang.org>
* function renames my* and win32_* to rb_w32_* in win32/win32.c
	  fixed files win32/win32.c, win32/win32.h, win32/dir.h,
	              hash.c, rubysig.h, signal.c, ext/socket/socket.c


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29 10:22:19 +00:00
eban 1715197c37 * time.c (tmcmp, search_time_t): activate unless HAVE_TIMEGM.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29 08:42:18 +00:00
matz 4ab1577db3 * parse.y: yyparse #defines moved from intern.h
* ruby.c (proc_options): access prefixed "ruby_yydebug".

* applied modifies to pacify some of gcc -Wall warnings.

* parse.y (arg): no more ugly hack for "**", so that "-2**2" to be
  parsed as "(-2)**2", whereas "- 2**2" or "-(2)**2" to be parsed
  as "-(2**2)".

* parse.y (yylex): '-2' to be literal fixnum. [new]

* time.c (time_succ): new method for Range support.

* time.c (time_arg): nil test against v[6] (usec).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29 05:20:39 +00:00
wakou 99551555c8 * lib/cgi.rb: not use const if GET, HEAD. check multipart form head.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29 04:48:32 +00:00
nobu ff3d6d201d * eval.c (scope_node): trick to keep the node has a scope.
* eval.c (rb_eval): NODE_EVSTR: write back local_tbl to the node.

* eval.c (rb_eval): NODE_SCOPE: hold the scope node in ruby_scope.

* eval.c (module_setup): ditto.

* eval.c (rb_call0): ditto.

* node.h (NEW_DASGN, NEW_DASGN_CURR): remove surplus semicolons.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-28 03:20:04 +00:00
nobu 1fe8b37425 * ruby.c (proc_options): option parsing problem.
(ruby-bugs-ja:PR#233)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-23 07:41:53 +00:00
matz 6e87a54aec * ruby.c (proc_options): removed "-*-" support for #! line.
* io.c (rb_io_s_sysopen): new method to get a raw file
  descriptor. [new]

* ext/socket/socket.c (tcp_sysaccept): new method to return an
  accepted socket fd (integer). [new]

* ext/socket/socket.c (unix_sysaccept,sock_sysaccept): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-23 05:35:32 +00:00
nobu 730d8f1d32 * ruby.c (proc_options): -T consumes digits only.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-22 12:32:15 +00:00
eban f625a17502 Wed May 22 20:18:31 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in: need not link vsnprintf.o on MinGW.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-22 11:23:11 +00:00
aamine 3caee29585 * parse.y (yylex): case '<': here-document label ate '-'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-22 09:40:17 +00:00
matz edbe98d848 * object.c (Init_Object): should do exact match for Module#==.
* compar.c (cmp_eq): returns 'false' if <=> returns 'nil'.

* compar.c (cmp_gt,cmp_ge,cmp_lt,cmp_le,cmp_between): ditto.

* pack.c (pack_pack): should propagate taintedness.

* pack.c (pack_unpack): ditto.

* eval.c (rb_thread_schedule): need to preserve errno before
  calling rb_trap_exec().

* regex.c (calculate_must_string): a bug in charset/charset_not
  parsing.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-21 05:39:19 +00:00
nobu 9402cbeec5 * misc/ruby-mode.el (ruby-font-lock-keywords): symbols end with '_'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-21 04:35:31 +00:00