index 3364da5..d475b03 100644 --- variable.c +++ variable.c @@ -1129,13 +1129,7 @@ rb_ivar_lookup(VALUE obj, ID id, VALUE undef) VALUE rb_ivar_get(VALUE obj, ID id) { - VALUE iv = rb_ivar_lookup(obj, id, Qundef); - - if (iv == Qundef) { - rb_warning("instance variable %"PRIsVALUE" not initialized", QUOTE_ID(id)); - iv = Qnil; - } - return iv; + return rb_ivar_lookup(obj, id, Qnil); } VALUE index 05ed3c6..7b250ce 100644 --- vm_insnhelper.c +++ vm_insnhelper.c @@ -493,7 +493,7 @@ vm_getivar(VALUE obj, ID id, IC ic, rb_call_info_t *ci, int is_attr) { #if USE_IC_FOR_IVAR if (RB_TYPE_P(obj, T_OBJECT)) { - VALUE val = Qundef; + VALUE val = Qnil; VALUE klass = RBASIC(obj)->klass; if (LIKELY((!is_attr && ic->ic_serial == RCLASS_SERIAL(klass)) || @@ -528,10 +528,6 @@ vm_getivar(VALUE obj, ID id, IC ic, rb_call_info_t *ci, int is_attr) } } - if (UNLIKELY(val == Qundef)) { - if (!is_attr) rb_warning("instance variable %s not initialized", rb_id2name(id)); - val = Qnil; - } return val; } #endif /* USE_IC_FOR_IVAR */