Backport #8188

Wrong warning about __attached__

Added by Marc-Andre Lafortune about 1 year ago. Updated about 1 year ago.

[ruby-core:<unknown>]
Status:Closed
Priority:Low
Assignee:Tomoyuki Chikanaga

Description

ruby -w -e "ARGF.singletonclass.instanceeval{}"

=> warning: instance variable attached not initialized

Here's the test, but I'm not sure how to fix. Should rbivarget(..., idattached) replaced with rbattr_get?

diff --git a/test/ruby/test_eval.rb b/test/ruby/test_eval.rb
index 580d3e8..8e3bd8c 100644
--- a/test/ruby/test_eval.rb
+++ b/test/ruby/test_eval.rb
@@ -215,6 +215,12 @@ class TestEval < Test::Unit::TestCase
     end
   end

+  def test_instance_eval_on_argf_singleton_class
+    assert_warning('', '[ruby-core:xxx]') do
+      ARGF.singleton_class.instance_eval{}
+    end
+  end
+
   class Foo
     Bar = 2
   end

Associated revisions

Revision 40294
Added by Tomoyuki Chikanaga about 1 year ago

merge revision(s) 40013,40032: [Backport #8188]

* class.c (HAVE_METACLASS_P): should check FL_SINGLTON flag before get
  instance variable to get rid of wrong warning about __attached__.
   [Bug #8188]

* class.c (HAVE_METACLASS_P): should check FL_SINGLETON flag before get

History

#1 Updated by Nobuyoshi Nakada about 1 year ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r40013.
Marc-Andre, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


class.c: suppress wrong warning

  • class.c (HAVEMETACLASSP): should check FLSINGLTON flag before get instance variable to get rid of wrong warning about _attached__. [Bug #8188]

#2 Updated by Nobuyoshi Nakada about 1 year ago

  • Tracker changed from Bug to Backport
  • Project changed from ruby-trunk to Backport200
  • Category deleted (core)
  • Status changed from Closed to Assigned
  • Assignee set to Tomoyuki Chikanaga
  • Target version deleted (2.1.0)

#3 Updated by Tomoyuki Chikanaga about 1 year ago

  • Status changed from Assigned to Closed

This issue was solved with changeset r40294.
Marc-Andre, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


merge revision(s) 40013,40032: [Backport #8188]

* class.c (HAVE_METACLASS_P): should check FL_SINGLTON flag before get
  instance variable to get rid of wrong warning about __attached__.
   [Bug #8188]

* class.c (HAVE_METACLASS_P): should check FL_SINGLETON flag before get

Also available in: Atom PDF