From 701243c468da4fc2fd3fd5fbe4e490e4f71f9c89 Mon Sep 17 00:00:00 2001 From: ocean Date: Fri, 13 May 2005 08:56:40 +0000 Subject: * variable.c (generic_ivar_get): rb_attr_get should not warn. [ruby-dev:26010] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ variable.c | 13 +++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4eb7be9f88..8de81ac314 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri May 13 17:54:39 2005 Hirokazu Yamamoto + + * variable.c (generic_ivar_get): rb_attr_get should not warn. + [ruby-dev:26010] + Fri May 13 12:28:43 2005 Daniel Berger * array.c (rb_ary_select): can remove argc check. [ruby-core:4911] diff --git a/variable.c b/variable.c index 506657e6e0..04d826bf2d 100644 --- a/variable.c +++ b/variable.c @@ -842,9 +842,10 @@ rb_generic_ivar_table(obj) } static VALUE -generic_ivar_get(obj, id) +generic_ivar_get(obj, id, warn) VALUE obj; ID id; + int warn; { st_table *tbl; VALUE val; @@ -856,8 +857,9 @@ generic_ivar_get(obj, id) } } } - - rb_warning("instance variable %s not initialized", rb_id2name(id)); + if (warn) { + rb_warning("instance variable %s not initialized", rb_id2name(id)); + } return Qnil; } @@ -1008,13 +1010,12 @@ ivar_get(obj, id, warn) break; default: if (FL_TEST(obj, FL_EXIVAR) || rb_special_const_p(obj)) - return generic_ivar_get(obj, id); + return generic_ivar_get(obj, id, warn); break; } - if (warn && ruby_verbose) { + if (warn) { rb_warning("instance variable %s not initialized", rb_id2name(id)); } - return Qnil; } -- cgit v1.2.3