summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--vm_insnhelper.c14
2 files changed, 8 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 26e6fb51a0..2eed6ec435 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -68,7 +68,7 @@ Tue Dec 11 00:26:58 2012 Shugo Maeda <shugo@ruby-lang.org>
superclass <M>'.
* vm_insnhelper.c (vm_search_super_method): do not raise a
- NotImplementError if current_defind_class is a module included
+ NotImplementError if current_defined_class is a module included
into a refinement. Because of the change of
vm_search_normal_superclass(), the receiver might not be an
instance of the module('s iclass).
diff --git a/vm_insnhelper.c b/vm_insnhelper.c
index 1470844309..dacde9e55e 100644
--- a/vm_insnhelper.c
+++ b/vm_insnhelper.c
@@ -1930,21 +1930,21 @@ vm_search_superclass(rb_control_frame_t *reg_cfp, rb_iseq_t *iseq, VALUE sigval,
static void
vm_search_super_method(rb_thread_t *th, rb_control_frame_t *reg_cfp, rb_call_info_t *ci)
{
- VALUE current_defind_class;
+ VALUE current_defined_class;
rb_iseq_t *iseq = GET_ISEQ();
VALUE sigval = TOPN(ci->orig_argc);
- current_defind_class = GET_CFP()->klass;
- if (NIL_P(current_defind_class)) {
+ current_defined_class = GET_CFP()->klass;
+ if (NIL_P(current_defined_class)) {
vm_super_outside();
}
- if (!NIL_P(RCLASS_REFINED_CLASS(current_defind_class))) {
- current_defind_class = RCLASS_REFINED_CLASS(current_defind_class);
+ if (!NIL_P(RCLASS_REFINED_CLASS(current_defined_class))) {
+ current_defined_class = RCLASS_REFINED_CLASS(current_defined_class);
}
- if (!FL_TEST(current_defind_class, RMODULE_INCLUDED_INTO_REFINEMENT) &&
- !rb_obj_is_kind_of(ci->recv, current_defind_class)) {
+ if (!FL_TEST(current_defined_class, RMODULE_INCLUDED_INTO_REFINEMENT) &&
+ !rb_obj_is_kind_of(ci->recv, current_defined_class)) {
rb_raise(rb_eNotImpError, "super from singleton method that is defined to multiple classes is not supported; this will be fixed in 2.0.0 or later");
}