matz
fada885be6
* range.c (range_first): takes first n element if argument is
...
given. [ruby-core:12697]
* range.c (range_last): returns last n elements if argument is
given.
* array.c (rb_ary_subseq, rb_ary_last): export.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-18 06:58:35 +00:00
nobu
81ed881511
* re.c (rb_reg_initialize_m): allow binary encoding option.
...
[ruby-dev:32083]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-16 16:57:08 +00:00
matz
ff3859899d
* encoding.c (Init_Encoding): define #to_s to show encoding name
...
in to_s representation as well as #inspect.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13712 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-15 16:28:18 +00:00
nobu
14264f5f62
* marshal.c (r_bytes0): check if source has enough data.
...
[ruby-dev:32054]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-15 00:58:09 +00:00
nobu
9c24fed339
* encoding.c (rb_cEncoding): new Encoding class.
...
* encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions.
* encoding.c (rb_obj_encoding): return Encoding object now.
* gc.c (garbage_collect): mark Encoding objects.
* string.c (rb_str_force_encoding): accept Encoding object as well as
encoding name.
* include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding):
prototypes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-13 16:32:40 +00:00
matz
d962ef7454
* parse.y: encoding specifier should work if the line matches
...
/coding[:=] ?/, a la Python PEP-263, so that VIM comments like
"# vim: set fileencoding=<encoding name>" should be recognized.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-12 15:04:46 +00:00
nobu
b1e97c9070
* trunk/parse.y (magic_comments): add "encoding" as same as "coding".
...
* trunk/parse.y (set_file_encoding): special file encoding handling.
* trunk/parse.y (parser_yylex): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-12 06:04:57 +00:00
matz
5fc7312d1b
* include/ruby/oniguruma.h (OnigEncodingTypeST): add OnigEncoding
...
parameter to every function members.
* include/ruby/oniguruma.h (OnigEncodingTypeST): add auxiliary
data member to provide user defined data for an encoding.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-10 15:05:32 +00:00
nobu
8c19ecbeeb
* string.c (rb_enc_str_coderange): fixed checkfor non-ascii.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-10 05:31:08 +00:00
nobu
78c4cc29ae
* parse.y (STR_NEW3): check for if single byte sequence.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-09 06:40:26 +00:00
ko1
3c78d621e6
* insns.def (opt_eq): fix to use rb_str_equal().
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-07 06:49:38 +00:00
matz
bd00bb3ef7
* include/ruby/defines.h: no longer provide DEFAULT_KCODE.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-05 17:39:59 +00:00
knu
ee6901b199
2007-10-05
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-04 19:56:35 +00:00
matz
612b2ed6a7
* array.c (rb_ary_permutation): remove C99 dependency.
...
[ruby-dev:31934]
* array.c (rb_ary_product): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-04 06:51:17 +00:00
nobu
ee2ac58e4d
* ruby.c (ruby_process_options): push frame with program name.
...
[ruby-core:12351]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-03 01:06:57 +00:00
ko1
88f570d9ae
* proc.c (proc_dup): proc->block.proc should be self.
...
* bootstraptest/test_knownbug.rb, test_method.rb:
move a fixed test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-01 22:02:23 +00:00
nobu
b9b34059a6
* eval.c (ruby_options), ruby.c (proc_options, process_options): not
...
call exit(2) directly. [ruby-dev:31912]
* eval.c (ruby_run_node): deal with direct exit code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-01 01:52:32 +00:00
usa
38694262ef
* variable.c (obj_ivar_each): get rid of warning.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-29 15:56:50 +00:00
ko1
534d057e58
* cont.c: Thread local storage should be fiber local.
...
* bootstraptest/test_knownbug.rb, test/ruby/test_fiber.rb:
move a fixed test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-28 19:04:45 +00:00
ko1
6698dd81e6
* benchmark/driver.rb: fix file selection algorithm.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-28 03:51:41 +00:00
nobu
4d1450fc96
* process.c (rb_waitpid): no needs to poll. [ruby-dev:31871]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-26 18:17:43 +00:00
nobu
52866db1fe
* parse.y (parser_yyerror): limit error message length.
...
[ruby-dev:31848]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-25 20:12:24 +00:00
matz
72ea36112c
* eval.c (rb_longjmp): source file information may be NULL.
...
[ruby-dev:31849]
* eval.c (ruby_finalize_0): clear trace_func before finalization.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-25 12:40:17 +00:00
matz
af4310be97
* lib/weakref.rb (WeakRef): remove debug print. [ruby-dev:31799]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-24 13:15:34 +00:00
nobu
bc5d305843
* eval_method.ci (remove_method): check for undefined method.
...
[ruby-dev:31816]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-22 21:16:21 +00:00
nobu
2f4951f01e
* ext/stringio/stringio.c (strio_init): separate from strio_initialize
...
to share with strio_reopen properly. [ruby-Bugs-13919]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-21 20:19:51 +00:00
matz
f4d9d3d39b
* hash.c (hash_equal): should call rb_eql when argument eql is set.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-20 17:03:41 +00:00
nobu
bf6575ef62
* io.c (popen_exec), process.c (rb_spawn): stop other threads before
...
exec. [ruby-core:08262]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-20 08:28:03 +00:00
kou
1b56bcce22
* lib/rss.rb, lib/rss/, test/rss/:
...
- 0.1.9 -> 0.2.0.
- supported Slash module.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-15 04:41:28 +00:00
ko1
8b92f5df32
* insnhelper.ci (vm_expandarray): should be volatile value for GC.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-14 07:14:13 +00:00
nobu
f41c0a54e2
* parse.y (rb_id2str): fixed typo.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-13 04:47:10 +00:00
nobu
9391daf954
* io.c (rb_io_s_sysopen): should not use alloca for unknowen size
...
input. [ruby-dev:31775]
* parse.y (rb_id2str): ditto.
* marshal.c (w_float): use snprintf instead of sprintf.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-12 06:19:06 +00:00
matz
3ee33a6dbc
* range.c (range_step): fixed integer overflow. [ruby-dev:31763]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-09 16:11:28 +00:00
usa
eda22a3411
* 2007-09-08
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-07 16:48:10 +00:00
matz
ae11bc70f1
* io.c (rb_io_getc): forgot to commit rb_enc_mbclen() fix.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-06 15:30:49 +00:00
nobu
629b1e4324
* string.c (rb_str_succ, rb_str_chop_bang, rb_str_chop): m17n support.
...
[ruby-dev:31734]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-06 03:42:12 +00:00
matz
c349959778
* string.c (rb_str_splice): integer overflow for length.
...
[ruby-dev:31739]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-05 13:06:01 +00:00
suke
9ecd43fa98
* ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
...
* test/win32ole/test_win32ole_event.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-04 11:48:53 +00:00
nobu
1acdd51cf9
* common.mk (vm.o): depends on st.h too.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-03 06:37:11 +00:00
nobu
d4cbf95002
* st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
...
the former may be larger than the latter.
* include/ruby/st.h (CHAR_BIT): get rid of magic number.
* include/ruby/st.h (struct st_table): num_entries never exceed
num_bins.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-01 02:14:40 +00:00
nobu
7aaf7dac8d
* parse.y (assignable_gen): ignore already erred names.
...
* parse.y (shadowing_lvar_gen): always make new block local variable
when shadowing outer local variable. [ruby-dev:31507]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-30 18:49:00 +00:00
matz
3d7f8c2320
* string.c (str_gsub): should not use mbclen2() which has broken API.
...
* re.c: remove rb_reg_mbclen2().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-29 19:16:02 +00:00
matz
3783246a2e
* include/ruby/defines.h (flush_register_windows): call "ta 0x03"
...
even on Linux/Sparc. [ruby-dev:31674]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-29 02:15:03 +00:00
ko1
6244e502cc
* thread.c: fix Mutex to be interruptable lock.
...
* thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
prepare native_cond_*() which are based on pthread_cond_*() spec.
* prelude.rb: fix Mutex#synchronize method.
* vm_core.h, include/ruby/intern.h: change unblock function interface
(to pass some user data).
* file.c, process.c: ditto.
* benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
* benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
with contension.
* benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
* test/ruby/test_thread.rb: add a test.
* common.mk: fix benchmark options.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-27 16:48:14 +00:00
matz
98d6d636e3
* enumerator.c (enumerator_next): message changed.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-26 16:33:45 +00:00
matz
1ba65ebfe9
* include/ruby/encoding.h: remove unused rb_enc_ismbchar().
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25 15:27:08 +00:00
ko1
b285d26a16
* compile.c (compile_massign_opt): fix to skip massign optimization
...
with global variables.
* bootstraptest/test_massign.rb: add some tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-24 15:19:00 +00:00
matz
99ab1fed49
* eval.c (rb_f_send_bang): abandon the name funcall for private
...
aware method call.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-24 08:15:37 +00:00
matz
3e68736791
* missing/strtod.c: removed. [ruby-dev:31588]
...
* LEGAL: updated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-22 15:05:56 +00:00
ko1
c5e4cd0638
* cont.c: add Fiber#resume and Fiber.yield.
...
and Fiber::Core class to realize Coroutine.
* include/ruby/intern.h: declare rb_fiber_yield(), rb_fiber_resume(),
* enumerator.c: use above api.
* test/ruby/test_fiber.rb: fix and add tests for above changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-21 18:51:39 +00:00