summaryrefslogtreecommitdiff
path: root/eval.c
AgeCommit message (Collapse)Author
2005-09-20* eval.c (rb_call0): wrong condition for $SAFE restoration.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@9254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-01* eval.c (rb_call0): wrong condition for $SAFE restoration.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@9065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-24* eval.c (method_arity): should handle NODE_BMETHOD andmatz
NODE_DMETHOD. [ruby-core:01138] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@7110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-19* dir.c (push_braces): do not push_braces() unless rbrace is found.matz
(ruby-bugs-ja:PR#469) * eval.c (rb_f_require): clear ruby_errinfo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-15* eval.c (rb_block_given_p): false if ruby_block is null.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21* eval.c (rb_thread_create): may called from place higher thanmatz
rb_gc_stack_start. * gc.c (Init_stack): update rb_gc_stack_start if it is lower (or higher if stack grows down) than the previous value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21* io.c (argf_to_io): should prefetch argv.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-21* eval.c (rb_f_require): do not need to abort if a DLEXT fileeban
is not found. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-02-04* io.c (argf_getline): should not increment lineno at EOF.matz
* error.c (set_syserr): should preserve duplicated error names. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-14* eval.c (rb_f_require): do not search adding .rb/.so suffixes ifnobu
the suffix specifiched. [ruby-dev:18702] http://moonrock.jp/~don/d/200211.html#d08_t1 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-01-04* defines.h (FLUSH_REGISTER_WINDOWS): Make the flushw call anknu
inline function so it can be used as an expression. * eval.c (EXEC_TAG, THREAD_SAVE_CONTEXT): Consistently call FLUSH_REGISTER_WINDOWS before calling setjmp(). (I suspect that every setjmp() implementation should take care of register windows, though) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-31* dln.c (init_funcname): get rid of gcc-3 -O3 warning.nobu
* eval.c (copy_node_scope): ditto. * error.c (err_snprintf): ditto. * file.c (rb_file_s_chmod): ditto. * hash.c (delete_if_i, each_value_i, each_key_i, each_pair_i, envix): ditto. * io.c (rb_sysopen, rb_file_sysopen_internal): ditto. * process.c (security): ditto. * ext/socket/socket.c (tcp_s_gethostbyname, ip_s_getaddress): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-16* eval.c (rb_eval): untangled ruby_dyna_vars. [ruby-talk:59035]nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-12-02* eval.c (backtrace): should ignore line 0 frame.matz
* sprintf.c (rb_f_sprintf): preceding ".." for negative hexadecimal numbers should not appear if prec (e.g. %.4) is specified. * compar.c (cmp_eq,cmp_gt,cmp_ge,cmp_lt,cmp_le): "<=>" might return nil. check using rb_cmpint(). * error.c (init_syserr): remove sys_nerr dependency. * regex.c (re_match): avoid dereferencing if size == 0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-11-09* eval.c (rb_eval): removed unnecessary toplevel check.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-11-07* eval.c (blk_orphan): a block created in a different thread isnobu
orphan. [ruby-dev:17471] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-11-05* stable version 1.6.8 release candidate.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-26* array.c, class.c, eval.c, file.c, gc.c, node.h, numeric.c,knu
object.c, parse.y, range.c, re.c, string.c, struct.c, util.c, ext/socket/socket.c: merge from 1.7: treat long values as long instead of int. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@3003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-25* eval.c, gc.c: use a common set of alloca() #ifdef's. This fixesknu
the build with Intel C Compiler for Linux. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-23* eval.c (rb_eval): local_vars[-1] should protect body, not amatz
local_tbl. * marshal.c (w_object): check if klass is really a class. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-17* hash.c, eval.c: Use (*_NSGetEnviron()) instead of environ onknu
Darwin for namespace cleanness. [ruby-core:00537] * dln.c (dln_load): Fix Darwin support that has been disabled and switch to using it on Darwin instead of the system dlopen(). [ruby-core:00541] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-17* eval.c (rb_eval): need to push empty varmap node only whenmatz
ruby_dyna_var is NULL. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-10* eval.c (ruby_init): Init_stack() with local location.nobu
(ruby-bugs-ja:PR#277) * gc.c (Init_stack): prefer address of argument rather than local variable to initialize rb_gc_stack_start. * lib/weakref.rb (WeakRef::@@final): use Hash#delete. * lib/weakref.rb (WeakRef::__getobj__): examin if alive or not by ID_REV_MAP to deal with recycled object. [ruby-dev:18472] * lib/weakref.rb (WeakRef::weakref_alive?): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-10-05* eval.c (rb_load): should not pass block to the loaded file.aamine
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-25* eval.c (ruby_run): should set toplevel visibility again here.matz
* eval.c (rb_eval): should not rely on ruby_class == rb_cObject check. Besides allow implicit publicity for attribute set methods. * parse.y (primary): need not to check class_nest, just set whether method is an attrset or not. * string.c (rb_str_each_line): p might be at the top of the string. * variable.c (rb_path2class): should not use rb_eval_string(). * parse.y (str_extend): expression substitution can contain string terminator again. * parse.y (yylex): the warning message "invalid character syntax" was never issued. * file.c (rb_find_file): $LOAD_PATH must not be empty. * file.c (rb_find_file_ext): ditto. * range.c (range_eq): class check should be based on range.class, instead of Range to work with Range.dup. * range.c (range_eql): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-11* eval.c (rb_trap_eval): preserve thread status and so on.nobu
[ruby-talk:40337], [ruby-core:00019] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-09-05* eval.c (rb_eval): overriding false constant with class/modulenobu
definition should be error. (PR#327) * eval.c (rb_call0): preset source file/line to pass correct ones to trace_func at end of empty method. [ruby-dev:18035] * ruby.c (require_libraries): not clear source file. [ruby-dev:18074] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-21* eval.c (rb_thread_cleanup): should not modify the globalmatz
variable curr_thread. * re.c (rb_reg_initialize_m): frozen check should be moved here from rb_reg_initialize(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19particular symbol for win32_exception_list.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19* eval.c (win32_get_exception_list, win32_set_exception_list): Cygwin fix.eban
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-19* eval.c (rb_thread_save_context, rb_thread_restore_context):nobu
save/restore SEH chain on MS-Windows at thread switch. [ruby-win32:273] * eval.c (win32_get_exception_frame, win32_set_exception_frame): added. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-08-12* hash.c (rb_hash_equal): should check default values.matz
* ext/socket/socket.c (s_recvfrom): update RSTRING len. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-31* eval.c (rb_undef): undef should be done for klass, not ruby_class.matz
* eval.c (error_handle): should handle TAG_THROW as well. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11* eval.c (rb_eval): fixed line number in string interpolation.nobu
* parse.y (str_extend): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11* eval.c (rb_eval): ruby_frame->last_func may be null, if it'smatz
called outside of a method. * parse.y (arg): use INT2NUM, not INT2FIX for tUMINUS. * parse.y (arg): $1 may be null for tPOW. * parse.y (stmt,arg): too much void value check. * parse.y (arg): need to check void value on rules which does not use node_assign(). * ext/socket/socket.c (ipaddr): need not to taint hostnames. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29* time.c (time_arg): nil test against v[6] (usec).matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-28* eval.c (scope_node): trick to keep the node has a scope.nobu
* eval.c (rb_eval): NODE_EVSTR: write back local_tbl to the node. * eval.c (rb_eval): NODE_SCOPE: hold the scope node in ruby_scope. * eval.c (module_setup): ditto. * eval.c (rb_call0): ditto. * node.h (NEW_DASGN, NEW_DASGN_CURR): remove surplus semicolons. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-21* eval.c (rb_thread_schedule): need to preserve errno beforematz
calling rb_trap_exec(). * regex.c (calculate_must_string): a bug in charset/charset_not parsing. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-16* eval.c (rb_thread_select): cleanup conditional compilation.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-14* eval.c (blk_orphan): the wrong condition; backported from 1.7matz
* eval.c (rb_clear_cache_by_class): new function. * eval.c (set_method_visibility): should have clear cache forq updated visibility. * re.c (rb_reg_s_quote): # also should be quoted. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-07* eval.c (rb_yield_0): The destination of the goto jump was wrong.aamine
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-07* eval.c (superclass): undesirable "unexpected return" when the superclass ↵aamine
is not a Class. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-04* eval.c, gc.c, intern.h, variable.c: declare rb_gc_mark{,maybe}()knu
canonically in order not to confuse C++ compilers. (backported from 1.7, problem noted by ttate) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-01* file.c (rb_find_file): load must be done from an abolute path ifmatz
$SAFE >= 4. * re.c (rb_reg_s_quote): quote whitespaces for /x cases. * eval.c (rb_thread_cleanup): should not terminate main_thread by Fatal error. * regex.c (is_in_list): need to not exclude NUL and NEWLINE. * re.c (rb_reg_expr_str): wrong backslash escapement. * re.c (rb_reg_expr_str): do not escape embedded space characters. * eval.c (rb_thread_cleanup): current thread may be THREAD_STOPPED, for example when terminated from signal handler. * re.c (rb_reg_expr_str): should treat backslash specially in escaping. * bignum.c (rb_big_eq): check `y == x' if y is neither Fixnum, Bignum, nor Float. * pack.c (pack_unpack): should treat 'U' in character unit, not in byte unit. * marshal.c (w_uclass): should check based on rb_obj_class(), not CLASS_OF(). * io.c (io_write): check error if written data is less than specified size to detect EPIPE. * eval.c (assign): ruby_verbose should be surrounded by RTEST(). * object.c (rb_str2cstr): ditto. * parse.y (void_expr): ditto. * parse.y (void_stmts): ditto. * variable.c (rb_ivar_get): ditto. * variable.c (rb_cvar_set): ditto. * variable.c (rb_cvar_get): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-25* ext/socket/socket.c (bsock_do_not_rev_lookup_set): should not bematz
allowed when $SAFE > 3. * dir.c (fnmatch): "*/bar" (with FNM_PATHNAME flag) does not match "foo/bar". * io.c (read_all): files on /proc filesystem with zero stat size, may have contents. * eval.c (exec_under): changing ruby_class is OK, but should not alter cbase. * eval.c (yield_under_i): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-20* eval.c (is_defined): label forgotten.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-20* eval.c (is_defined): should check receiver only once.matz
* eval.c (is_defined): should handle NODE_NEWLINE. * file.c (rb_file_s_expand_path): memory leak fixed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-12* regex.c (re_compile_pattern): '\0111' should be '\011' plus '1',matz
since octal literals are formed by three digits at most. * eval.c (rb_eval_cmd): cbase should not be NULL; it should be either ruby_wrapper or Object. * enum.c (enum_each_with_index): should return self. * process.c (proc_setpgrp): should return value for non-void function. * process.c (proc_getpgid): should raise exception if getpgid() return -1. * string.c (rb_str_ljust): should return a duplicated string. * string.c (rb_str_rjust): ditto. * string.c (rb_str_center): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-08* eval.c (cvar_cbase): utility function to find innermost nonmatz
singleton cbase. * eval.c (is_defined): adopt new cvar behavior. * eval.c (rb_eval): ditto. * eval.c (assign): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-07* gc.c (rb_source_filename): added. holds unique strings for filenobu
names with GC space. * gc.c (rb_gc_mark): mark source file name. * gc.c (gc_sweep): ditto. * gc.c (Init_GC): initialize source file name table. * intern.h (rb_source_filename): added. * eval.c (rb_eval_string): use rb_source_filename(). * parse.y (yycompile): ditto. * ruby.c (proc_options): ditto. * ruby.c (load_file): ditto. * ruby.c (ruby_script): ditto. * ruby.c (ruby_prog_init): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e