Commit graph

4906 commits

Author SHA1 Message Date
nobu
93602810e9 2002-07-05
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-05 10:31:47 +00:00
nobu
d8fdb2bfde 2002-07-02
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-02 10:45:14 +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
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
6037d1cf3d 2002-06-25
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-25 09:59:03 +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
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
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
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
7ed607e902 2002-06-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-17 02:00:56 +00:00
knu
3a6168af5b 2002-06-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-15 10:25:08 +00:00
nobu
9e1473541d 2002-06-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-14 06:48:32 +00:00
eban
561c59bf64 2002-06-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-13 06:44:00 +00:00
eban
5838e5bc4e 2002-06-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-12 09:33:40 +00:00
eban
65caf01223 2002-06-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 07:27:22 +00:00
nobu
10d0deaa99 2002-06-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-10 10:18:24 +00:00
eban
c0eea52326 2002-06-04
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-04 07:35:48 +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
eban
95a5a67142 2002-05-30
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-30 06:14:02 +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
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
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
ce3ea1911a 2002-05-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-22 07:51:15 +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
077d92a044 2002-05-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-20 04:39:50 +00:00
eban
d8a615ed3d 2002-05-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-16 06:17:05 +00:00
eban
c5d6a1ba48 * gc.c (is_pointer_to_heap): avoid GCC 3.1 warnings.
* missing/strftime.c (timezone): it should take no argument on Cygwin.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-14 05:59:35 +00:00
eban
caba4b3d94 2002-05-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-11 19:32:59 +00:00
nobu
592f838016 2002-05-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-11 13:21:57 +00:00
nobu
868d104b49 2002-05-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-09 17:02:36 +00:00
eban
d303a22fcc 2002-05-07
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-07 08:17:14 +00:00
knu
40225b8cb5 2002-05-05
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-04 22:01:55 +00:00
knu
5c7b8af937 2002-05-04
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-03 22:40:52 +00:00
eban
4213a33aa4 2002-05-02
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-02 09:31:37 +00:00
eban
1d64100b2a 2002-05-01
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-01 13:23:01 +00:00
nobu
b664645ddc * eval.c (rb_proc_new): make Proc from C function. [new]
* intern.h (rb_proc_new): prototype.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-26 00:38:44 +00:00
nobu
67c8ca36f2 2002-04-25
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-25 14:33:15 +00:00
matz
e3a8c62630 * io.c (rb_io_mode_flags): both 'r+b' and 'rb+' should be allowed.
* io.c (rb_io_mode_modenum): ditto.

* gc.c (rb_memerror): rename from mem_error, and exported.

* gc.c (Init_GC): pre-allocate NoMemoryError instance.

* object.c (convert_type): error message changed from "failed to
  convert" to "cannot convert", since it does not try to convert
  if an object does not respond to the converting method.

* eval.c (block_pass): convert Method to Proc using
  rb_check_convert_type().

* object.c (rb_check_convert_type): always convert T_DATA

* eval.c (rb_thread_cleanup): should not terminate main_thread by
  Fatal error.

* regex.c (is_in_list): need to not exclude NUL and NEWLINE.

* re.c (rb_reg_expr_str): wrong backslash escapement.

* re.c (rb_reg_expr_str): do not escape embedded space
  characters.

* marshal.c (w_object): T_DATA process patch from Joel VanderWerf
  <vjoel@PATH.Berkeley.EDU>.  This is temporary hack; it remains
  undocumented, and it will be removed when marshaling is
  re-designed.

* marshal.c (r_object): ditto.

* numeric.c (num_step): Integer#step is moved to Numeric#step;
  Fixnum#step is merged into this method.

* numeric.c (int_dotimes): Fixnum#times is merged.

* numeric.c (int_upto): Fixnum#upto is merged.

* numeric.c (int_downto): Fixnum#downto is merged.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-24 04:54:16 +00:00
nobu
b596fbbc37 * ext/stringio/stringio.c (strio_mark): must check if ptr is NULL
first.  [ruby-talk:38873]

* lib/mkmf.rb (create_makefile): should print depend file when
  make is other than nmake.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-23 16:22:25 +00:00
eban
c46d1cdb1e 2002-04-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-19 07:30:30 +00:00
nobu
9021157411 2002-04-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-18 09:10:54 +00:00
nobu
23288f8674 * eval.c (assign): convert mrhs to mvalue.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-16 00:02:49 +00:00
nobu
7edb39fbfa 2002-04-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-15 09:29:47 +00:00
nobu
b289435872 2002-04-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2369 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-12 03:32:52 +00:00
eban
2628f376c9 2002-04-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-11 10:06:01 +00:00
matz
19c42c0740 * variable.c (rb_obj_remove_instance_variable): raise NameError if
specified instance variable is not defined.

* variable.c (generic_ivar_remove): modified to check ivar
  existence.

* file.c (rb_file_s_extname): new method based on the proposal
  (and patch) from Mike Hall. [new]

* eval.c (error_handle): default to 1 unless status is set.

* eval.c (ruby_options): guard error_handle() with PROT_NONE.

* eval.c (ruby_stop): ditto.

* math.c (math_acosh): added. [new]

* math.c (math_asinh): ditto.

* math.c (math_atanh): ditto.

* struct.c (rb_struct_each_pair): method added. [new]

* class.c (rb_singleton_class): wrong condition; was creating
  unnecessary singleton class.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-10 08:45:26 +00:00
nobu
e223518948 * ext/stringio/stringio.c (check_modifiable): performance
improvement.  avoid calling rb_str_modify() twice.

* ext/stringio/stringio.c (strio_ungetc): ditto.

* ext/stringio/stringio.c (strio_putc): ditto.

* ext/stringio/stringio.c (strio_write): ditto, and use
  rb_str_cat() as possible.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-09 03:52:39 +00:00
nobu
2a255514a1 2002-04-08
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-08 07:09:58 +00:00