matz
3e6f0e6a20
* numeric.c (int_round): should not return false, but self.
...
[ruby-dev:31212]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-13 15:38:48 +00:00
nobu
b53224b493
* lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
...
::CONFIG which is an alias of MAKEFILE_CONFIG.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-13 01:10:48 +00:00
usa
2e4f2aaaf0
* include/ruby/ruby.h (FIX2ULONG): drop sign bit for LLP64 platform.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-11 20:35:10 +00:00
nobu
c18e8ad7e9
* bcc32/{Makefile.sub,setup.mak}: remove surplus slash from srcdir.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-10 05:50:10 +00:00
usa
a87664923f
* 2007-07-09
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-08 19:16:33 +00:00
ko1
0afe6cb08f
* insnhelper.ci (vm_yield_setup_args), vm.c, insns.def:
...
fix to pass nil as block parameter to yielded block.
[ruby-dev:31147]
* bootstraptest/test_block.rb: add a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-07 06:34:40 +00:00
ko1
b9171a73c4
* insns.def: fix to invoke nil.to_splat on NODE_ARGSCAT.
...
[ruby-dev:31138].
* bootstraptest/test_literal.rb: add tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-05 17:11:45 +00:00
nobu
ba563e4a41
* include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
...
constified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-05 01:06:49 +00:00
ko1
d82f3e7d5c
* compile.c (compile_massign): fix massign compilation
...
(example: a, *v, (*x) = ...). [ruby-dev:31107]
* bootstraptest/test_massign.rb: add tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-03 18:50:28 +00:00
ko1
0e5360b2e4
* cont.c (cont_save_machine_stack): clear saved_thread.machine_stack*.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-03 04:53:05 +00:00
ko1
27013e71e4
* yarvcore.h, compile.c, insnhelper.ci, iseq.c, vm.c:
...
rename structure names and field names.
* insnhelper.h, insns.def: add GET_CONST_INLINE_CACHE().
* iseq.c: add rb_iseq_build_for_ruby2cext().
* yarvcore.h, vm.h: move declaration of rb_insn_func_t
to yarvcore.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-01 18:16:02 +00:00
ko1
eb9aaa4c4f
* vm.h: rename insn_func_type to rb_insn_func_type.
...
* vm_evalbody.ci: ditt.
* insns.def: add opt_call_native_compiled instruction
instead of opt_call_native_compiled.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-30 18:02:24 +00:00
nobu
fd3f9eee0e
* parse.y (parser_yylex): return non-valid token for an invalid
...
instance/class variable name. a patch from from Yusuke ENDOH
<mame AT tsg.ne.jp>. [ruby-dev:31095]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-29 15:17:02 +00:00
nobu
cf46a2fce6
* parse.y (dsym): return non-null NODE even if yyerror(). based on a
...
patch from from Yusuke ENDOH <mame AT tsg.ne.jp>. [ruby-dev:31085]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-29 02:23:13 +00:00
ko1
4a7d47e41a
* compile.c (iseq_compile_each): fix popped backref and others.
...
([ruby-dev:31068]).
* compile.c (iseq_compile_each): remove needless statements.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-27 16:21:57 +00:00
matz
99c58e9ebc
* string.c (rb_str_clear): need to check STR_EMBED_P() before
...
free()ing memory. a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
[ruby-dev:31062]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-26 15:19:39 +00:00
ko1
ed4e57690c
* insnhelper.ci, vm.c: complete block parameter support.
...
post arguments, optional arguments, block argument.
* compile.c, parse.y: fix {|a|} parameter.
* insnshelper.ci, insns.def: revert caller_setup_args() option
(need_block_check) parameter.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-25 16:05:17 +00:00
ko1
97ba019c94
* vm.c: some refactoring.
...
* rename th_* to vm_*.
* remove unused variables functions.
* add prototypes.
* blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24 15:42:41 +00:00
matz
3f2fe37200
* enum.c (enum_minmax): new method to get the minimum and maximum
...
values from the enumerable at once.
* enum.c (enum_minmax_by): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-23 15:05:05 +00:00
matz
115410ecde
* string.c (rb_str_upto): add optional argument to specify
...
exclusiveness.
* range.c (range_step): use String#upto with optional argument.
* range.c (range_each): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-22 16:23:16 +00:00
nobu
3fc180ebeb
* parse.y (rb_intern2): name may not be NUL-terminated.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-21 08:12:14 +00:00
nobu
9a7a11564c
* parse.y (rb_intern2): use rb_intern2 to intern without trailing
...
equal sign.
* parse.y (rb_intern2, ripper_id2sym): fixed indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-19 19:43:59 +00:00
nobu
f91ec98d43
* eval_load.c (load_ext, rb_require_safe): pass VALUE instead of
...
pointer. [ruby-Bugs-11659]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-19 01:53:31 +00:00
nobu
3dc070e90e
* variable.c (rb_path2class): get rid of dangling pointer caused by
...
optimized out value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-17 15:56:36 +00:00
ko1
f84c8cb190
* sample/test.rb: fix to show line information whether test succeeds.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-15 03:18:12 +00:00
eban
e948c70e06
* 2007-06-14
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-14 06:38:07 +00:00
nobu
0e62875433
* configure.in (darwin): prohibit loading extension libraries to
...
miniruby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-12 21:04:07 +00:00
usa
3cf184ce6f
* 2007-06-12
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-12 04:09:12 +00:00
nobu
2b592580bf
* include/ruby: moved public headers.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00
matz
4d43632852
* parse.y (call_args): allow splat argument after unpacked
...
assocs like 1.8 does.
* parse.y (call_args): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-08 05:58:06 +00:00
ko1
ed88975237
* eval_intern.h, eval.c (ruby_init): remove POP_TAG_INIT().
...
* cont.c (rb_fiber_start): remove zero-clearing tag.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-06 16:04:02 +00:00
ko1
78029f00d5
* parse.y (new_yield), compile.c (iseq_compile_each): fix
...
passing parameter.
* eval.c, eval_jump.h: simplify rb_yield*.
* proc.c (proc_mark): fix to mark proc->block.proc.
* proc.c (Init_Proc): add Proc#lambda?
* test/ruby/test_lambda.rb: add some tests.
* vm.c (invoke_block): fix to check lambda block or not.
* vm.c (th_yield_setup_args): fix to check arguments size
when lambda block.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-05 17:26:00 +00:00
nobu
99d65b14b4
* compile.c, dir.c, eval.c, eval_jump.h, eval_method.h, numeric.c,
...
pack.c, parse.y, re.c, thread.c, vm.c, vm_dump.c, call_cfunc.ci,
thread_pthread.ci, thread_win32.ci: fixed indentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-05 04:25:10 +00:00
usa
f3dfa40734
* 2007-06-04
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-04 12:48:11 +00:00
matz
2c4aff3fe0
* numeric.c (int_round): small optimization to handle bignums.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-01 16:27:05 +00:00
matz
3d7439d568
* enum.c (each_with_index_i): should work well with continuation.
...
a patch from sheepman <sheepman AT sheepman.sakura.ne.jp>.
[ruby-dev:30846]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-31 16:59:12 +00:00
nobu
44475bb208
* lib/benchmark.rb (Benchmark::Job::item): avoid modifying the
...
argument unintentionally. [ruby-talk:253676]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-31 08:26:31 +00:00
nobu
0d2109239d
* parse.y (open_args, arg_ambiguous, parser_warning): should not use
...
rb_warning in the parser.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-29 15:22:49 +00:00
nobu
d15b7d0509
* win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
...
numbers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-29 01:53:14 +00:00
ko1
57062d91b9
* cont.c: support Fiber. Check test/ruby/test_fiber.rb for detail.
...
Fiber is known as "Micro Thread", "Coroutine", and other terms.
At this time, only Fiber#pass is supported to change context.
I want to know more suitable method name/API for Fiber (... do you
know more suitable class name instead of Fiber?) as "suspend/resume",
"call", "yield", "start/kick/stop/restart", ....
* eval.c, eval_intern.h, thread.c, yarvcore.c, yarvcore.h: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-27 19:12:43 +00:00
nobu
a1cb9efd34
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-25 15:04:05 +00:00
usa
e8a5295841
* regint.h (include): on some platform, defines.h redefines
...
SIZE_OF_LONG_LONG so souldn't re-include config.h after included
defines.h.
* regint.h (vsnprintf): ruby on windows already have vsnprintf macro.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-25 02:13:18 +00:00
ko1
7c4ff2d332
* cont.c: support callcc which everyone love.
...
incomplete. please give me bug reports.
* common.mk, inits.c, thread.c: ditto.
* yarvcore.c: export thread_mark().
* yarvcore.h: disable value cache option.
* eval_intern.h: set th_get_ruby_level_cfp to inline.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-23 22:52:19 +00:00
nobu
80a0e2f753
* ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
...
load path to get rid of load pre-installed extensions/libraries.
[ruby-core:11017]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-22 20:48:34 +00:00
matz
64bffee8d6
* ruby.c (set_arg0): support RSTRING_LEN on HP-UX. a patch from
...
WATANABE Tetsuya <Tetsuya.WATANABE AT nifty.com>. [ruby-dev:30806]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-22 07:38:50 +00:00
ko1
affa7430b7
* compile.c, vm_macro.def: support tail call optimization
...
(on default, this feature is not enabled).
* iseq.c, compile.c, vm_opts.h: add "tailcall_optimization"
option.
* sample/test.rb (test_ok): fix to adjust tailcall stack layout.
* insns.def, vm.c, compile.c, yarvcore.c, yarvcore.h:
add opt_gt, opt_le instructions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-21 04:46:51 +00:00
nobu
62b3932c9c
* file.c (Init_File): method definition mismatch.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-18 16:04:22 +00:00
nobu
635c599d6b
* ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
...
to DllMain instead of VirtualQuery so that loadpath becomes relative
from the DLL on WinCE too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-18 02:11:42 +00:00
ko1
84fbcb9694
* debug.c (ruby_debug_node): fix to show node line.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-17 04:00:36 +00:00
usa
216dcd80ff
* win32/win32.c (init_stdhandle): stderr should be without buffering,
...
but mswin32 use buffering when stderr is not connected to tty.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-15 06:01:33 +00:00