Commit graph

4906 commits

Author SHA1 Message Date
matz
df2d69b49a * eval.c (proc_call): should not modify ruby_block->frame.iter
based on ruby_frame->iter altered by PUSH_ITER().

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

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

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-26 05:29:06 +00:00
eban
9ce5d1f0f5 * win32/win32.c (myrename): fix error handling.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-24 13:19:13 +00:00
matz
88eef2d7fe * configure.in: add check for negative time_t for gmtime(3).
* time.c (time_new_internal): no positive check if gmtime(3) can
  handle negative time_t.

* time.c (time_timeval): ditto.

* bignum.c (rb_big2long): should not raise RangeError for Bignum
  LONG_MIN value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-20 07:42:03 +00:00
eban
ec6e3f9ec3 2001-02-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-19 07:16:46 +00:00
eban
d63d8012f4 2001-02-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-18 08:19:16 +00:00
matz
e1c29a3f13 * io.c (set_outfile): f should be the FILE* from the assigning value.
* ext/socket/socket.c (tcp_s_open): should not give default value
  to local_host.

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

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

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-16 07:53:21 +00:00
eban
9ac8f70f3d 2001-02-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-15 13:23:33 +00:00
eban
50ce575ce4 2001-02-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-14 10:18:21 +00:00
eban
65428c0264 2001-02-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-13 05:24:05 +00:00
eban
c5254c68ad * eval.c (stack_length): use __builtin_frame_address() only if
GCC and i386 CPU.
* gc.c (rb_gc, Init_stack): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-11 07:12:02 +00:00
eban
b4ea8ddcdd ruby.c (ruby_init_loadpath): convert '\' to '/'
before finding executable file path.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-09 14:11:23 +00:00
eban
106a65482b 2001-02-08
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-08 13:58:38 +00:00
matz
ed520cf6e9 * parse.y (parse_quotedwords): %w should allow parenthesis escape.
* parse.y (parse_qstring): %q should allow terminator escape.

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

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

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

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

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-02-08 09:19:27 +00:00
eban
e9f9915a4c gcc-2.95.2-7(cygwin) support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-31 14:27:37 +00:00
matz
2f0faf671d * string.c (str_independent): should not clear str->orig here.
it's too early.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-29 05:10:42 +00:00
eban
2455b077df 2001-01-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-23 09:14:50 +00:00
eban
9d0bba43bb * mkconfig.rb: autoconf 2.49 support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-22 07:37:14 +00:00
eban
0232870f7d 2000-01-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-18 12:36:19 +00:00
eban
c46cf18e3b 2001-01-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-15 08:26:34 +00:00
eban
fd8eadd2af 2001-01-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-10 08:22:22 +00:00
matz
d110e3f551 * file.c (path_check_1): should restore modified path.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1093 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-09 08:04:39 +00:00
matz
87beea4496 * enum.c (enum_inject): new method.
* gc.c (rb_gc_call_finalizer_at_exit): clear klass member of
  terminating object.

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

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

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

* ruby.c (load_file): use rb_load_fail.

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

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

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

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

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

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

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

* eval.c (rb_yield_0): use NODE_IFUNC.

* gc.c (rb_gc_mark): support NODE_IFUNC.

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

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

* eval.c (rb_thread_wait_fd): ditto.

* eval.c (rb_thread_wait_for): ditto.

* eval.c (rb_thread_select): ditto.

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-01-09 07:26:21 +00:00
matz
2cafd39ed2 thread_critical bug reported by Dave - matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-29 02:46:12 +00:00
matz
a5dcc4437e matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-26 08:08:50 +00:00
matz
99020d6e50 001225
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-25 06:29:27 +00:00
matz
0e47c138c9 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-22 03:22:25 +00:00
matz
117b7d5c47 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-18 09:46:21 +00:00
eban
3e865dceff 20001213
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-13 03:50:59 +00:00
matz
2322a13127 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-08 07:10:38 +00:00
matz
03581d5826 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-12-05 09:36:54 +00:00
matz
f54418b71f matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-27 09:23:38 +00:00
matz
a122fce476 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-21 14:26:25 +00:00
eban
8f54a9b470 20001120
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-20 02:56:15 +00:00
matz
46608d361a 001117
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-16 16:56:59 +00:00
matz
074203d270 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-16 07:24:21 +00:00
matz
46620a8772 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-14 07:10:31 +00:00
matz
2a1b0ff232 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-13 05:39:35 +00:00
matz
087c83d7ce matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-10 07:16:52 +00:00
matz
af328b152b matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-08 05:29:37 +00:00
matz
faeb1701ce 001104
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-03 15:08:30 +00:00
matz
58e04b755a matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-02 09:04:54 +00:00
eban
4b9666b700 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-11-01 11:16:06 +00:00
eban
fab538ba83 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-31 12:59:37 +00:00
eban
033a4ffa4b eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-25 11:04:36 +00:00
matz
4098e5861e matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-20 16:37:01 +00:00
matz
1b2d3f81ee 1.6.2 (to be)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-17 18:14:05 +00:00
matz
8353f303e3 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-16 09:13:20 +00:00
matz
52f90f6566 matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-13 09:01:58 +00:00
eban
fe10b16809 2000-10-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-11 07:54:26 +00:00
eban
33baccab78 eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2000-10-10 07:20:10 +00:00