Issue #7572 has been updated by shugo (Shugo Maeda). File defineclass_fix.diff added Status changed from Open to Assigned Assignee set to ko1 (Koichi Sasada) ?????°ã?§ã????? tadf (tadayoshi funaba) wrote: > ??¯ã?©ã?¹å??義ã?«ã???????¦ã?¹ã?¼ã????¼ã?¯ã?©ã?¹ã?¨ã????¦ã?¯ã?©ã?¹ã?§ã?ªã???????®ã?????å®??????¦ã????¨ã?©ã?¼ã?«ã?ªã????ªã??äº????????????? > > $ ruby -v -e 'class Foo < nil; end' > ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] 以ä????®ã???????«ã????³ã?³ã????¤ã?«ã????????'class Foo; end'???'class Foo < nil; end'???????????½ä»¤?????? ??ªã?£ã?¦ã????¾ã??????????®ã???????§ã????? $ cat defineclass.rb ary = RubyVM::InstructionSequence.compile(<<EOF).disasm class Foo; end class Foo < nil; end EOF print ary $ ruby defineclass.rb == disasm: <RubyVM::InstructionSequence:<compiled>@<compiled>>========== 0000 trace 1 ( 1) 0002 putspecialobject 3 0004 putnil 0005 defineclass :Foo, <class:Foo>, 3 0009 pop 0010 trace 1 ( 2) 0012 putspecialobject 3 0014 putnil 0015 defineclass :Foo, <class:Foo>, 3 0019 leave ... define_type??«ã?¹ã?¼ã????¼ã?¯ã?©ã?¹ã?????å®????????????©ã????????表ã???????©ã?°ã??追å????????????????????æ·»ä???????¾ã????? ?????©ã?°ã?®æ¸¡?????¹ã?¨ã???????¸ã????¯ã????³ã????¼ã?§ã???????®ã????¨ã????²ã??æ°???«ã?ªã????¾ã??????????©ã??????????®ã??????????§ã????????? > ??????????????? ??¹ã?¼ã????¼ã?¯ã?©ã?¹ã?????å®?????????ªã????£ã????´å?????nil??§ã?ªã??Qundef???putobject???????????©ã???????¨ã?? ?????£ã????®ã?§ã????????r12621???è¦???????Qundef???VM??¹ã?¿ã????¯ã?«ç½®?????ªã????¹é????ªã?®ã?§ã????????? ---------------------------------------- Bug #7572: ??¯ã?©ã?¹å??義ã?«ã???????¦ã?¹ã?¼ã????¼ã?¯ã?©ã?¹ã?¨ã????¦ã?¯ã?©ã?¹ã?§ã?ªã???????®ã?????å®??????¦ã????¨ã?©ã?¼ã?«ã?ªã????ªã??äº?????????? https://bugs.ruby-lang.org/issues/7572#change-34800 Author: tadf (tadayoshi funaba) Status: Assigned Priority: Low Assignee: ko1 (Koichi Sasada) Category: core Target version: 2.0.0 ruby -v: ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] ??¯ã?©ã?¹å??義ã?«ã???????¦ã?¹ã?¼ã????¼ã?¯ã?©ã?¹ã?¨ã????¦ã?¯ã?©ã?¹ã?§ã?ªã???????®ã?????å®??????¦ã????¨ã?©ã?¼ã?«ã?ªã????ªã??äº????????????? $ ruby -v -e 'class Foo < nil; end' ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] $ ruby -v -e 'class Foo < false; end' ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] $ ruby -v -e 'class Foo < true; end' ruby 2.0.0dev (2012-12-16 trunk 38415) [i686-linux] -e:1:in `<main>': wrong argument type true (expected Class) (TypeError) -- http://bugs.ruby-lang.org/