akr
c423d3cbf2
precedes registering global VALUE variables before initializing it.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-12 03:04:53 +00:00
matz
4d467a0865
* ext/digest/digest.c (rb_digest_base_s_digest): add volatile to
...
protect temporary context object. [ruby-dev:27979]
* ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should
be called before actual variable initialization.
[ruby-dev:27986]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-12 00:36:54 +00:00
nobu
00f96715f3
* eval.c (calling_scope_t): gave names to magic numbers for rb_call().
...
[ruby-dev:27978]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-09 15:32:00 +00:00
nobu
949f6fe394
* eval.c (umethod_bind): adjust invoking class for module method.
...
[ruby-dev:27964]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-07 17:08:40 +00:00
matz
41c48d1ee8
* eval.c (call_trace_func): klass parameter should be a
...
class/module that defines calling method. [ruby-talk:169307]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-07 15:46:49 +00:00
matz
088fb2a36e
* gc.c (ruby_xmalloc2): change check for integer overflow.
...
[ruby-dev:27399]
* gc.c (ruby_xrealloc2): ditto.
* eval.c (exec_under): avoid accessing ruby_frame->prev.
[ruby-dev:27948]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-06 07:52:18 +00:00
nobu
7d3b09acf2
* eval.c (rb_funcall2): allow to call protected methods.
...
fixed: [ruby-dev:27890]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-30 15:51:05 +00:00
nobu
d7f9e2d7ab
* configure.in, eval.c, intern.h: check fd_mask type.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-11 17:11:05 +00:00
ocean
f69091fabc
* eval.c, intern.h: failed to compile where NFDBITS is defined but
...
howmany() is not defined. [ruby-dev:27680]
* io.c (is_socket): failed to compile where S_ISSOCK is not defined.
* io.c (pipe_open): failed to compile where socketpair is not supported.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-11 11:08:17 +00:00
ocean
59ffb8a846
* intern.h, eval.c (rb_thread_signal_raise): costified.
...
* signal.c: cosmetic change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-08 08:49:45 +00:00
matz
9974cb96d3
* eval.c (rb_call_super): should call method_missing if super is
...
called from Kernel method.
* eval.c (exec_under): frame during eval should preserve external
information.
* configure.in: use proper option for Sun linker. A patch from
Shinya Kuwamura <kuwa@labs.fujitsu.com>. [ruby-dev:27603]
* numeric.c (fix_rshift): RDoc fix. [ruby-core:6351]
* util.h (strtod): add #undef for platforms defines strtod()
macro. [ruby-dev:27563]
* ext/etc/etc.c: document update from mathew <meta@pobox.com>.
[ruby-core:06473]
* ext/fcntl/fcntl.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-01 13:04:35 +00:00
matz
5b014a7427
* bin/erb (ERB::Main::run): typo fixed. [ruby-core:06337]
...
* env.h: move struct METHOD and struct BLOCK from eval.c to
support NodeWrap and ParseTree.
* rubysig.h (CHECK_INTS): prevent signal handler to run during
critical section. [ruby-core:04039]
* eval.c (load_wait): need not to call rb_thread_schedule()
explicitly. [ruby-core:04039]
* eval.c (rb_thread_schedule): clear rb_thread_critical.
[ruby-core:04039]
* eval.c (rb_obj_instance_exec): create instance_exec and
module_exec which pass arguments to the block.
* eval.c (rb_f_funcall): rename fcall to funcall to follow
tradition.
* st.c (st_free_table): do not call free() but xfree().
[ruby-core:06205]
* eval.c (splat_value): call rb_Array() to convert svalue to
values. [ruby-dev:27397]
* lib/cgi.rb (CGI::Cookie::parse): Cookies from Nokia devices may
not be parsed correctly. A patch from August Z. Flatby
(augustzf) in [ruby-Patches-2595]. [ruby-core:06183]
* object.c (rb_Array): Array() to raise error for objects without
to_ary, nor to_a.
* object.c (nil_to_a): revert NilClass#to_a.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-21 09:00:02 +00:00
ocean
e29bce0750
* class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff
...
protoize generated to ANYARGS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-20 02:56:22 +00:00
ocean
64c8c730d7
* eval.c, file.c, ruby.c: removed strchr, strrchr, strstr definition
...
because they are defined in missing.h.
* missing.h, missing/strchr.c, missing/strstr.c: ANSI styled.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-20 02:22:50 +00:00
nobu
9c871d5a5a
* enumerator.c, eval.c, gc.c, parse.y, regparse.c, sjis.c, time.c:
...
made internal symbols static. [ruby-dev:27435]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-18 17:35:18 +00:00
nobu
cc2334bd7b
* eval.c (rb_obj_respond_to): check if obj responds to the given
...
method with the given visibility. [ruby-dev:27408]
* eval.c (rb_respond_to): conform to Object#respond_to?. [ruby-dev:27411]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-11 12:42:50 +00:00
nobu
1b03efee58
* array.c, enum.c, eval.c, util.c: safer function pointer usage.
...
fixed: [ruby-core:06143]
* util.h (qsort): removed the definition incompatible to ANSI.
fixed: [ruby-core:06147]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-11 12:30:48 +00:00
nobu
68b062d402
* eval.c (Init_Binding): add Binding#dup method. [yarv-dev:666]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-08 10:50:08 +00:00
matz
22f1926644
* range.c (rb_range_beg_len): should return Qfalse for non-range
...
object.
* pack.c (EXTEND16): [ruby-dev:27383]
* eval.c (set_trace_func): add rb_secure(4) to prevent adding
tracing function.
* lib/delegate.rb: document update from James Edward Gray II
<james@grayproductions.net>. [ruby-core:05942]
* process.c (proc_daemon): should restrict execution on levels
higher than $SAFE=2. suggested by URABE Shyouhei
<shyouhei@ice.uec.ac.jp>.
* lib/forwardable.rb: replaced by new implementation from
<Daniel.Berger@qwest.com>. [ruby-core:05899]
* file.c (path_check_0): disallow sticky world writable directory
in PATH (and $LOAD_PATH). [ruby-dev:27226]
* numeric.c (fix_idiv): 1.div(1.0) should return integer value.
[ruby-dev:27235]
* lib/yaml.rb: require 'yaml/constants'. [ruby-core:5776]
* lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): add charset
information to content-type header.[ruby-core:5127]
* lib/xmlrpc/server.rb (CGIServer::serve): ditto.
* lib/xmlrpc/server.rb (ModRubyServer::serve): ditto.
* lib/xmlrpc/server.rb (WEBrickServlet::service): ditto.
* test/dbm/test_dbm.rb (TestDBM::test_s_open_error): remove
test_s_open_error test to detect duplicate open.
[ruby-dev:27202]
* eval.c (splat_value): use to_a to splat non Array object.
* object.c (nil_to_a): remove nil.to_a. [experimental]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-05 16:15:16 +00:00
nobu
c7ffe40f11
* evalc. (rb_f_send): underscores need to be escaped.
...
fixed by Doug Kearns. [ruby-core:06053]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-28 22:22:44 +00:00
nobu
962bcf1394
* eval.c (ev_const_get), variable.c (rb_const_get_0): retry only when
...
autoload succeeded.
* variable.c (rb_autoload_load): now return true if autoload
succeeded. fixed: [ruby-dev:27331]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-28 15:58:32 +00:00
akr
e41b0ce6a3
* eval.c (thread_mark): mark th->last_status. [ruby-dev:27179]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-20 09:26:35 +00:00
ocean
ca32aea6a2
* dir.c: changed `foo (*bar)_((boo))' to `foo (*bar)(boo)`.
...
* enumerator.c, eval.c, gc.c, intern.h, io.c, process.c, ruby.c,
ruby.h, signal.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-14 08:30:16 +00:00
ocean
08c1738c51
* bignum.c: changed `foo _((boo))' to `foo(boo)`. [ruby-dev:27056]
...
* defines.h, dir.c, dln.h, enumerator.c, env.h, error.c, eval.c, file.c,
gc.c, hash.c, inits.c, intern.h, io.c, lex.c, marshal.c, missing.h,
node.h, numeric.c, pack.c, process.c, re.h, ruby.c, ruby.h, rubyio.h,
rubysig.h, signal.c, sprintf.c, st.h, string.c, struct.c, time.c,
util.c, util.h, variable.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-14 06:32:32 +00:00
nobu
7c44a27cb2
* eval.c (BEGIN_CALLARGS): pop halfly pushed status.
...
fixed: [ruby-dev:26881]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-13 12:47:43 +00:00
matz
82e8e747df
* eval.c (proc_save_safe_level): no need to restrict safe level
...
memoize in $SAFE>=3. [ruby-dev:27050]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-12 16:21:50 +00:00
ocean
4409f88ad8
* dln.c: avoid warning of const to non-const convertion.
...
[ruby-dev:27041]
* eval.c, io.c, ruby.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-12 11:03:24 +00:00
ocean
dda5dc00cf
* array.c: moved to ANSI function style from K&R function style.
...
(used protoize on windows, so still K&R remains on #ifdef part of
other platforms. And `foo _((boo))' stuff is still there)
[ruby-dev:26975]
* bignum.c, class.c, compar.c, dir.c, dln.c, dmyext.c, enum.c,
enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c,
io.c, main.c, marshal.c, math.c, numeric.c, object.c, pack.c,
prec.c, process.c, random.c, range.c, re.c, regcomp.c, regenc.c,
regerror.c, regexec.c, regparse.c, regparse.h, ruby.c, signal.c,
sprintf.c, st.c, string.c, struct.c, time.c, util.h, variable.c,
version.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-12 10:44:21 +00:00
matz
ef05021686
* array.c: protoize.
...
* eval.c (splat_value): simpler and consistent array conversion
for argument splat. [yarv-dev:599]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-10 13:34:53 +00:00
nobu
17a4e4b1ad
* eval.c (rb_thread_switch): convert all exceptions to
...
SystemExit. fixed: [ruby-core:05724]
* eval.c (rb_thread_terminated): show backtrace before propagate
exceptions to main thread.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-07 01:45:40 +00:00
matz
df27d91fc4
* lib/observer.rb: a patch from nornagon <nornagon@gmail.com>
...
merged to allow arbitrary names for update methods.
[ruby-core:05416]
* eval.c (rb_f_fcall): new method to avoid inefficiency of
obj.instance_eval{send(...)} tricks.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-05 08:40:27 +00:00
matz
c3f0592267
* eval.c (rb_call0): wrong condition for $SAFE restoration.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-01 08:13:30 +00:00
nobu
aae7040cd0
* eval.c (rb_rescue2): intialization miss. fixed: [ruby-dev:26917]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-30 14:06:55 +00:00
matz
10ebbcadd9
* eval.c (rb_f_send): do not call private methods if the receiver
...
is specified. [ruby-talk:153672]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-30 04:27:41 +00:00
nobu
743d7affda
* eval.c (terminate_process): take String message.
...
* eval.c (rb_thread_switch): propagate the exception caused thread
termination directly. fixed: [ruby-core:05552]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-17 14:58:47 +00:00
matz
17957e0dfc
* eval.c (rb_add_method): preserve safe level in the environment
...
where a method is defined .
* eval.c (rb_call0): restore preserved safe level in the method
execution.
* parse.y (lambda): need separate block variable stack
manipulation and lpar_beg maintenance. based on a patch found
in [ruby-core:05551] from Mauricio Fernandez <mfp@acm.org>.
* parse.y (parser_yylex): adjust lpar_beg after tLAMBEG and
kDO_LAMBDA. [ruby-core:05551]
* parse.y (yycompile): remove unreachable code. [yarv-dev:570]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-16 15:24:15 +00:00
nobu
3da52c987f
* eval.c (rb_mod_autoload_p, rb_f_autoload_p): added rdoc.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-16 03:43:44 +00:00
nobu
e117437005
* eval.c (rb_rescue2): reduce PUSH_TAG() as well as NODE_RESCUE.
...
[ruby-dev:26800]
* range.c (range_check, range_init): reduce uselse exceptions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-14 15:39:39 +00:00
nobu
3b602c7a74
* eval.c (rb_block_pass): distinguish current block from others.
...
fixed: [ruby-dev:26274]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-13 09:52:06 +00:00
nobu
0c624c4bf2
* eval.c (formal_assign): let default values override
...
arguments to zsuper. fixed: [ruby-dev:26743]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-09 12:53:38 +00:00
nobu
09d57b8e0c
* parse.y (f_block_arg), eval.c (rb_yield_0): deal with dynamic
...
variable lambda arguments. [ruby-core:05540]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-08 23:24:29 +00:00
nobu
779f4383aa
* eval.c (assign): deal with new block argument.
...
fixed: [ruby-core:05536]
* eval.c (rb_node_arity): follow change of NODE_ARGS.
fixed: [ruby-dev:26761]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-08 13:14:08 +00:00
matz
aa2de9e3e0
* eval.c (return_jump): fix "can't across thread" error message
...
when no thread associated.
http://www.namikilab.tuat.ac.jp/~sasada/diary/200507.html#d31
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-05 00:50:46 +00:00
nobu
710b99a16b
* eval.c (formal_assign): returns position of rest arguments variable.
...
* parse.y (f_rest_arg): use anonymous variable for rest arguments.
fixed: [ruby-dev:26647]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 15:18:38 +00:00
nobu
c83d6db61b
* enumerator.c (Init_Enumerator): provided features should have
...
extensions.
* eval.c (rb_feature_p): returns type of the feature instead of
extension.
* eval.c (search_required): ruby library should be prior to statically
linked extentions. fixed: [ruby-dev:26711]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 15:09:03 +00:00
nobu
0ee34e24e3
* eval.c (rb_yield_0): push yielded node instead of yielding.
...
fixed: [yarv-dev:549]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-29 01:00:07 +00:00
nobu
396e297f2d
* eval.c (rb_call0): fix calling zsuper from a method with anonymous
...
rest argument. [ruby-dev:26639]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-29 00:58:14 +00:00
matz
759a63b6a3
* parse.y (lambda): Perl6 style -> lambda expression. [NEW]
...
[VERY EXPERIMENTAL]
* gc.c (id2ref): must not assign pointers to long int. use
LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
[ruby-talk:149645]
* ruby.h: use LONG_LONG to simplify the change.
[ruby-talk:149645]
* dir.c (dir_each): rewinddir(3) before iteration.
[ruby-talk:149628]
* eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
[ruby-talk:149553]
* missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
size pointer. [ruby-talk:149553]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-27 07:27:19 +00:00
nobu
80914a2666
* eval.c (rb_fd_select): the all three fd_sets must be long enough for
...
select. fixed: [ruby-talk:149059]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-23 02:46:41 +00:00
nobu
6524f34a26
* sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,
...
using missing/vsnprintf.c. [ruby-dev:26580]
* missing/vsnprintf.c: made the output changeable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-23 01:02:18 +00:00