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
* 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
substring, slice! should return nil without exception.
* string.c (rb_str_split_m): accept separator value nil as well.
* class.c (include_class_new): module may be T_ICLASS; retrieve
original module information.
* re.c (rb_reg_expr_str): need to process backslashes properly.
* parse.y (yylex): no here document after a dot.
* parse.y (yylex): should have set lex_state properly after '`'.
* parse.y (yylex): should have set lex_state properly after
tOP_ASGN.
* bignum.c (rb_big2dbl): return canonical HUGE_VAL for infinity.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
specified instance variable is not defined.
* variable.c (generic_ivar_remove): modified to check ivar
existence.
* class.c (rb_singleton_class): wrong condition; was creating
unnecessary singleton class.
* numeric.c (int_step): step may be a float less than 1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* eval.c (remove_method): should not remove a empty method to
implement "undef".
* eval.c (rb_eval): should allow singleton class def for
true/false/nil.
* parse.y (str_extend): backslash escape was done wrong.
* class.c (rb_include_module): should preserve ancestor order in
the included class/module.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
only, no methods.
* eval.c (is_defined): should not dump core on defined?(a::b)
where a is not a class nor a module.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* eval.c (rb_thread_schedule): should check time only if BOTH
WAIT_SELECT and WAIT_TIME.
* string.c (rb_str_split_m): no need to consider KANJI
characters, if the length of separator is 1 (byte).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c (rb_cstr2inum): reject prefix followed by spaces only.
* class.c (rb_class_inherited): should use Object when no super
class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
not yet initialized.
* variable.c (find_class_path): should initialize iv_tbl if it's
NULL.
* class.c (rb_define_class): should return the existing class if
the class is already defined and its superclass is ideintical to
the specified superclass.
* class.c (rb_define_class_under): ditto.
* class.c (rb_define_module): should return the existing module if
the module is already defined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
for modules.
* eval.c (rb_set_safe_level): should set safe level in curr_thread
as well.
* eval.c (safe_setter): ditto.
* object.c (rb_obj_is_instance_of): nil belongs to false, not true.
* time.c (make_time_t): proper (I hope) daylight saving time
handling for both US and Europe. I HATE SUMMER TIME!
* eval.c (rb_thread_wait_for): non blocked signal interrupt should
stop the interval.
* class.c (rb_mod_clone): should copy method bodies too.
* bignum.c (bigdivrem): should trim trailing zero bdigits of
remainder, even if dd == 0.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
sometimes reports wrong time.
* time.c (make_time_t): remove unnecessary range check for
platforms where negative time_t is available.
* numeric.c (flodivmod): a bug in no fmod case.
* process.c (pst_wifsignaled): should apply WIFSIGNALED for status
(int), not st (VALUE).
* class.c (rb_include_module): module inclusion should be check
taints.
* class.c (rb_include_module): freeze check at first.
* eval.c (rb_attr): sprintf() and rb_intern() moved into
conditional body.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
value is ignored.
* class.c (rb_singleton_class_clone): should copy class constant
table as well.
* class.c (rb_include_module): sometimes cache was mistakenly left
uncleared - based on the patch by K.Kosako.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
which included commits to RCS files with non-trunk default branches.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
which included commits to RCS files with non-trunk default branches.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12 b2dd03c8-39d4-4d8f-98ff-823fe69b080e