summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--eval_method.ci2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1118fe219..92b11a5d2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Nov 19 02:31:36 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * eval_method.ci (rb_add_method): no redefinition warning for undef.
+
Mon Nov 19 01:53:11 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_read_escape): disallow control and meta modifiers
diff --git a/eval_method.ci b/eval_method.ci
index a6b8264e2..4e07ee7d6 100644
--- a/eval_method.ci
+++ b/eval_method.ci
@@ -149,7 +149,7 @@ rb_add_method(VALUE klass, ID mid, NODE * node, int noex)
if (nd_type(old_node->nd_body->nd_body) == NODE_CFUNC) {
rb_vm_check_redefinition_opt_method(old_node);
}
- if (RTEST(ruby_verbose) && old_node->nd_cnt == 0 && old_node->nd_body) {
+ if (RTEST(ruby_verbose) && node && old_node->nd_cnt == 0 && old_node->nd_body) {
rb_warning("method redefined; discarding old %s", rb_id2name(mid));
}
}