diff --git a/ChangeLog b/ChangeLog index 0674c3d16e..d57ad36655 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Thu Jan 23 17:25:04 2003 Yukihiro Matsumoto + + * eval.c (rb_eval): do not warn discarding already undefined + method. + + * lib/rational.rb: undef quo before replacing. + Thu Jan 23 15:49:57 2003 Nobuyoshi Nakada * parse.y (arg): missing arguments. diff --git a/eval.c b/eval.c index 171eadf0f1..6fcfdb0d56 100644 --- a/eval.c +++ b/eval.c @@ -3203,7 +3203,7 @@ rb_eval(self, n) rb_frozen_class_p(ruby_class); body = search_method(ruby_class, node->nd_mid, &origin); if (body){ - if (RTEST(ruby_verbose) && ruby_class == origin && body->nd_cnt == 0) { + if (RTEST(ruby_verbose) && ruby_class == origin && body->nd_cnt == 0 && body->nd_body) { rb_warning("method redefined; discarding old %s", rb_id2name(node->nd_mid)); } } diff --git a/lib/rational.rb b/lib/rational.rb index af4eada071..1e41b9a28a 100644 --- a/lib/rational.rb +++ b/lib/rational.rb @@ -317,6 +317,7 @@ class Fixnum alias power! **; end + undef quo def quo(other) Rational.new!(self,1) / other end @@ -339,7 +340,8 @@ class Bignum if not defined? power! alias power! ** end - + + undef quo def quo(other) Rational.new!(self,1) / other end