Issue #7575 has been updated by Glass_saga (Masaki Matsushita). 調ã?¹ã?¦ã?¿ã?¾ã???????????"b\000"???intern?????????ID_JUNK???ID??«ã?ªã?£ã?¦ã????¾ã????ºã?«ã??make_struct()???"b\000"??«å¯¾å¿?????????¡ã?½ã????????å®?義ã???????ªã??????????§ã????? "b\000"??«ã??is_identchar()??§ã?ªã?????å??????«ã?¾ã????¦ã???????®ã?§ã??intern?????????junk??§ã???????¨å?¤å??????????¾ã????? å¾???£ã?¦ã??intern?????????junk???ID??¨ã?ªã??????????ªå???????®ã?¡ã?³ã????®å????¨ã??許ã???????©ã???????¨ã?????????????¨æ?????????¾ã????? ??¡ã?ªã?¿ã??define_method??§ã?¯ã??junk??ªå???????®ã?¡ã?½ã???????®å??義ã??許ã????¦ã?????????????§ã????? class Foo define_method("foo@") { p 1 } define_method("foo\000") { p 2 } end f = Foo.new f.send("foo@") #=> 1 f.send("foo\000") #=> 2 ---------------------------------------- Bug #7575: Struct ??®ã?¡ã?³ã????¼ã????¢ã?¯ã?»ã?µã?§å????§ã?§ã????ªã??äº?????????? https://bugs.ruby-lang.org/issues/7575#change-34816 Author: tadf (tadayoshi funaba) Status: Open Priority: Low Assignee: Category: core Target version: 2.0.0 ruby -v: ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] Struct ??®ã?¡ã?³ã????¼ã????¢ã?¯ã?»ã?µã?§å????§ã?§ã????ªã??äº????????????? $ ruby -v -e 'Foo = Struct.new("Foo", "a", "b\000"); foo = Foo.new(1,2); p foo.send("a"); p foo.send("b\000")' ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] 1 -e:1:in `<main>': undefined method `b' for #<struct Struct::Foo a=1, :"b\x00"=2> (NoMethodError) $ ruby -v -r ostruct -e 'foo = OpenStruct.new("a"=>1, "b\000"=>2); p foo.send("a"); p foo.send("b\000")' ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] 1 2 -- http://bugs.ruby-lang.org/