diff --git a/ChangeLog b/ChangeLog index bb08f99c41..edebd54e89 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,11 @@ Fri Dec 4 16:50:13 2009 Nobuyoshi Nakada * parse.y (k_def): adjust the location of method definition to the line of def. [Bug #2427] +Fri Dec 4 19:05:28 2009 Yukihiro Matsumoto + + * insns.def (defined): should respect #respond_to_missing? as + #respond_to? does. + Fri Dec 4 15:50:18 2009 Shugo Maeda * vm_eval.c (yield_under): does not yield self, and passes blockptr diff --git a/insns.def b/insns.def index 39c6c6cbda..5f789bd441 100644 --- a/insns.def +++ b/insns.def @@ -799,6 +799,8 @@ defined } } } + if (RTEST(rb_funcall(v, rb_intern("respond_to_missing?"), 2, obj, Qfalse))) + expr_type = "method"; break; } case DEFINED_YIELD: