summaryrefslogtreecommitdiff
path: root/eval.c
AgeCommit message (Collapse)Author
2005-08-17* eval.c (terminate_process): take String message.nobu
* 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-16* eval.c (rb_add_method): preserve safe level in the environmentmatz
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* eval.c (rb_mod_autoload_p, rb_f_autoload_p): added rdoc.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-14* eval.c (rb_rescue2): reduce PUSH_TAG() as well as NODE_RESCUE.nobu
[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-13* eval.c (rb_block_pass): distinguish current block from others.nobu
fixed: [ruby-dev:26274] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-09* eval.c (formal_assign): let default values overridenobu
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-08* parse.y (f_block_arg), eval.c (rb_yield_0): deal with dynamicnobu
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* eval.c (assign): deal with new block argument.nobu
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-05* eval.c (return_jump): fix "can't across thread" error messagematz
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-04* eval.c (formal_assign): returns position of rest arguments variable.nobu
* 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* enumerator.c (Init_Enumerator): provided features should havenobu
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-07-29* eval.c (rb_yield_0): push yielded node instead of yielding.nobu
fixed: [yarv-dev:549] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-29* eval.c (rb_call0): fix calling zsuper from a method with anonymousnobu
rest argument. [ruby-dev:26639] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-27* parse.y (lambda): Perl6 style -> lambda expression. [NEW]matz
[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-23* eval.c (rb_fd_select): the all three fd_sets must be long enough fornobu
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* sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,nobu
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-19* error.c (syserr_initialize): add 1 byte for snprintf() size formatz
NUL at the end. [ruby-dev:26574] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-19* error.c (syserr_initialize): need to allocate an additional bytematz
for NUL at the end. [ruby-dev:26574] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-19* signal.c (trap): remove sigexit(); handle "EXIT" via sig_exec().matz
[ruby-dev:26440] * io.c (rb_io_inspect): replace sprintf() with "%s" format all over the place by snprintf() to avoid integer overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-18* eval.c (rb_call0): make the pointer to NODE volatileocean
instead of NODE itself. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-18* eval.c (rb_call0): make body volatile to avoid possible optimizationakr
problem. [ruby-dev:26195] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-11* eval.c, intern.h (rb_proc_call, rb_obj_method, rb_method_call):nobu
export. * ext/enumerator/enumerator.c (enumerator_with_index): [EXPERIMENTAL] added a new method Enumerator#with_index. [ruby-talk:147728] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-05* eval.c (rb_thread_save_context): must not switch contexts duringnobu
re-allocating stack. fixed: [ruby-core:05219] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-02fix indent.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-02* defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.akr
(flush_register_windows): declare flush_register_windows. * eval.c (flush_register_windows): new function. * ruby.h (NOINLINE): move up to be effective in defines.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-02* configure.in: check select_large_fdset.akr
* eval.c: use select_large_fdset to support large file descriptors on Solaris. [ruby-dev:26404] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-30* eval.c (rb_eval): pre-evaluate argument for unambiguousmatz
evaluation order. [ruby-dev:26383] * lib/delegate.rb (Delegator::method_missing): forward unknown method to the destination. suggested by <christophe.poucet@gmail.com>. [ruby-talk:146776] * process.c (detach_process_watcher): terminate process watcher thread right after rb_waitpid() succeed. [ruby-talk:146430] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-28* dir.c, eval.c, parse.y, process.c, ruby.c: avoid warning "unusedocean
variable" [ruby-dev:26387] * dir.c (glob_helper): avoid warning "enumeration value `RECURSIVE' not handled in switch" [ruby-dev:26392] (patch from Kazuhiro NISHIYAMA) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-20* eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): DUMMY_SETJMP is replacedakr
because setjmp is not enough to fix getcontext and SPARC register window problem. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-12* signal.c (sigexit): call rb_thread_signal_exit() instead ofmatz
rb_exit(). [ruby-dev:26347] * eval.c (rb_thread_signal_exit): a new function to exit on main thread. * eval.c (rb_thread_switch): exit status should be retrieved from ruby_errinfo. * eval.c (rb_f_exit): ensure exit(0) should call exit(EXIT_SUCCESS). * missing/mkdir.c: remove. [ruby-core:05177] * hash.c (env_aset): do not treat nil as key-removing value. [ruby-list:40865] * parse.y (method_call): allow aref expression ([]) to take a block. * parse.y (block_dup_check): a function to check duplication of a block argument and an actual block. * lib/delegate.rb (SimpleDelegator::__setobj__): need check for recursive delegation. [ruby-core:04940] * lib/cgi.rb: add underscore aliases CGI::escape_html, CGI::unescape_html, CGI::escape_element, CGI::unescape_element. [ruby-core:05058] * misc/ruby-mode.el (ruby-expr-beg): fix looking point drift. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-12* eval.c (rb_gc_mark_threads): curr_thread may not be part of theakr
thread list. [ruby-dev:26312] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-10* eval.c (unknown_node): show more information. [ruby-dev:26196]akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-09* eval.c (ruby_longjmp): new macro to call longjmp, setcontext, etc.akr
(ruby_setjmp): new macro to call setjmp, getcontext, etc. (ruby_setjmp): call setjmp before getcontext to avoid IA64 register stack problem. [ruby-talk:144939] * gc.c (Init_stack): remove IA64_MAGIC_STACK_LIMIT. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8601 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-09* configure.in, eval.c, gc.c: use libunwind only on HP-UX.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-07* enum.c (enum_min_by, enum_max_by): return nil if no iteration.nobu
fixed: [ruby-dev:26245] * eval.c (rb_need_block): ensure a block is given. * eval.c (backtrace): skip successive frames sharing same node. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-03* intern.h (rb_fdset_t): deal with fd bit sets over FD_SETSIZE.nobu
fixed: [ruby-dev:26187] * eval.c (rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr, rb_fd_isset, rb_fd_copy): ditto. * io.c (rb_io_wait_readable, rb_io_wait_writable, rb_f_select): ditto. * ext/io/wait/wait.c (io_wait): ditto. * ext/socket/socket.c (wait_connectable, unix_recv_io): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-25* vms/vmsruby_private.c, vms/vmsruby_private.h: private routinesnobu
for VMS port are added. * eval.c (ruby_init): change to call VMS private intialization routine. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-18* dir.c (glob_helper): get rid of using String. [ruby-dev:26180]nobu
* eval.c (ruby_options), win32/win32.c (NtInitialize): move argument intialization back. [ruby-dev:26180] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-13* eval.c (unknown_node): add volatile directive to prototype.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-11* eval.c (unknown_node): ignore broken NODE to get rid of accessingnobu
possibly inaccessible address. fixed: [ruby-dev:26122] should emit more useful information like [ruby-dev:26126], though. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-11* eval.c (break_jump): break should not cross functions.matz
[ruby-list:40818] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-10* eval.c (TMP_ALLOC): use macro NEW_NODE() to get rid of warnings onnobu
platforms which have no alloca(). fixed: [ruby-talk:141301] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-01* eval.c (rb_eval), parse.y (arg): reduce fixnum range literal atnobu
parser. fixed: [ruby-dev:26113] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-30* configure.in (RUBY_FUNC_ATTRIBUTE): check for function attribute.nobu
[ruby-dev:26109] * eval.c, gc.c: moved noinline to configure.in. * rubyio.h (DEPRECATED): moved to configure.in. * ruby.h (DEPRECATED, NOINLINE): default definition. * win{32,ce}/Makefile.sub (config.h): deprecated and noinline for __declspec() are available for VC++7 or later. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-23* eval.c (rb_provided): should check also path name to be loaded.nobu
fixed: [ruby-dev:26093] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-19* eval.c (search_required): deal with features with path too.nobu
* intern.h (rb_file_expand_path): prototype. fixed: [ruby-dev:26082] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-18* eval.c (search_required): handle static linked extensions.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-18* eval.c (search_required, rb_require_safe): expand path innobu
rb_features. [ruby-dev:26079] * file.c (rb_find_file_ext): return absolute path. * ext/extmk.rb: expand path for ext/**/extconf.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-18* eval.c (rb_attr): attribute name check added.matz
* numeric.c (flo_plus): small typo fix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-07* eval.c (rb_call0): "return" event hook should be always executedshugo
if event_hooks is set. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e