(RARRAY_LEN): defined for accessing array members.
(RARRAY_PTR): ditto.
* array.c: use RARRAY_LEN and RARRAY_PTR.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
from Eric Hodel <drbrain at segment7.net>. [ruby-core:08662]
* parse.y (primary): wrap with NODE_CASE. [ruby-core:08663]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
(RSTRING_LEN): defined for accessing string members.
(RSTRING_PTR): ditto.
* string.c: use RSTRING_LEN and RSTRING_PTR.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
along with ruby_cref, for use by the sandbox. [ruby-core:08762]
* node.h: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
exceptions which occurred within the trap. fixed: [ruby-dev:27729]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
normal method look-up. [ruby-talk:202564]
* eval.c (rb_get_method_body): save local method cache separately.
* eval.c (search_method): export info whether method is local or
not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: should test isinf for Solaris with GCC compiler.
a patch from <ville.mattila at stonesoft.com>. [ruby-core:07791]
* configure.in: -shared patch from Andrew Morrow
<andrew.c.morrow at gmail.com>. [ruby-core:08100]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
splat expansion.
* eval.c (when_check): need to handle ARGSPUSH as well.
* eval.c (block_orphan): lambda and proc from method are always
orphan.
* gc.c (gc_mark_children): proper marking for NODE_BLOCK_PASS and
NODE_LAMBDA.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
[ruby-dev:28822]
* eval.c (when_check): a new auxiliary function for case match.
* eval.c (when_cond): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
<alex at blackkettle.org>. [ruby-core:08068]
* io.c (pipe_open): backout unnecessary fix on 2006-06-26.
[ruby-dev:28865]
* eval.c (rb_yield_0): exact argument number check now done only
for lambda Proc.
* eval.c (rb_yield_0): add check for number of arguments, if
there's one lambda block parameter.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
GC problem.
(rb_yield_values): use rb_ary_new2 instead of rb_ary_new4.
* array.c (rb_ary_new4): don't set len as n. make it safe with GC.
[ruby-dev:28826]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
block parameter. [ruby-dev:28710]
* eval.c (rb_yield_0): pass a raw yielded value to a sole block
parameter if a value is passed by yield.
* eval.c (proc_invoke): args may not be an array.
* eval.c (rb_proc_yield): pass original value without wrapping
it in an array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Proc objects. [ruby-dev:28742]
* eval.c (proc_invoke): remove unnecessary YIELD_PROC_CALL flag.
* eval.c (YIELD_EXACT_ARGS): renamed from YIELD_LAMBDA_CALL, which
is no longer related to the behavior turned on by this flag.
* eval.c (return_jump): no need to care about PROT_YIELD.
* eval.c (break_jump): no jump to toplevel PROT_TREAD tag.
* eval.c (rb_yield_0): fix confusion between lambda (which is a
property of a proc) and pcall (which depends on whether it's
called via yield or call).
* eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL.
* eval.c (rb_block_pass): update blkid in prot_tag.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
IPsocket, TCPsocket, SOCKSsocket, TCPserver, UDPsocket,
UNIXsocket, UNIXserver.
* eval.c (formal_assign): post splat arguments should have had
higher priority than optional arguments, since they are
mandatory. [ruby-dev:28715]
* eval.c (VIS_MASK): broken. should be 15. [ruby-dev:28715]
* io.c (argf_getc): should return one-character string.
[ruby-dev:28715]
* io.c (rb_io_readchar): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e