#63: -objectEnumerator troubles ------------------------+--------------------------------------------------- Reporter: z@wzph.com | Owner: lsansonetti@apple.com Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: ------------------------+--------------------------------------------------- (Revision 218) Forgive the unintelligent short summary--not really sure how to describe what's going on. e.class.name is empty, but e.className has a value. Also, e.nextObject fails. {{{ irb(main):001:0> a = [1, 2, 3, 4, 5] => [1, 2, 3, 4, 5] irb(main):002:0> a.class.name => "NSCFArray" irb(main):003:0> e = a.objectEnumerator => #<#<Class:0x1af5030>:0x1aed820> irb(main):004:0> e.class.name => nil irb(main):005:0> e.className => "__NSFastEnumerationEnumerator" irb(main):006:0> e.respond_to?( :nextObject ) => false irb(main):007:0> e.respondsToSelector( 'nextObject' ) => 1 irb(main):008:0> e.nextObject (irb):8: [BUG] Bus Error MacRuby version 0.2 (ruby 1.9.0 2008-05-17) [universal-darwin9.0] -- control frame ---------- c:0024 p:---- s:0073 b:0073 l:000072 d:000072 CFUNC :nextObject c:0023 p:0009 s:0070 b:0070 l:001444 d:000069 EVAL (irb):8 c:0022 p:---- s:0069 b:0069 l:000068 d:000068 FINISH :empty? c:0021 p:---- s:0067 b:0067 l:000066 d:000066 CFUNC :eval c:0020 p:0023 s:0060 b:0060 l:000059 d:000059 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/workspace.rb:80 c:0019 p:0025 s:0053 b:0052 l:000051 d:000051 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/context.rb:218 c:0018 p:0024 s:0047 b:0047 l:002604 d:000046 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:149 c:0017 p:0025 s:0040 b:0040 l:000039 d:000039 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:263 c:0016 p:0009 s:0035 b:0035 l:002604 d:000034 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:146 c:0015 p:0093 s:0032 b:0032 l:000021 d:000031 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:243 c:0014 p:---- s:0032 b:0032 l:000031 d:000031 FINISH :block_given? c:0013 p:---- s:0030 b:0030 l:000029 d:000029 CFUNC :loop c:0012 p:0007 s:0027 b:0027 l:000021 d:000026 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:230 c:0011 p:---- s:0028 b:0028 l:000027 d:000027 FINISH :each c:0010 p:---- s:0026 b:0026 l:000025 d:000025 CFUNC :catch c:0009 p:0017 s:0022 b:0022 l:000021 d:000021 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:229 c:0008 p:0034 s:0019 b:0019 l:002604 d:002604 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:145 c:0007 p:0009 s:0016 b:0016 l:00250c d:000015 BLOCK /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:69 c:0006 p:---- s:0017 b:0017 l:000016 d:000016 FINISH :(null) c:0005 p:---- s:0015 b:0015 l:000014 d:000014 CFUNC :catch c:0004 p:0152 s:0011 b:0011 l:00250c d:00250c METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:68 c:0003 p:0033 s:0006 b:0006 l:000005 d:000005 TOP /usr/local/bin/macirb:12 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP --------------------------- DBG> : "(irb):8:in `irb_binding'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/workspace.rb:80:in `eval'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/workspace.rb:80:in `evaluate'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/context.rb:218:in `evaluate'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:149:in `block (2 levels) in eval_input'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:263:in `signal_status'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:146:in `block in eval_input'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:243:in `block (2 levels) in each_top_level_statement'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:230:in `loop'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:230:in `block in each_top_level_statement'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:229:in `catch'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb /ruby-lex.rb:229:in `each_top_level_statement'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:145:in `eval_input'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:69:in `block in start'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:68:in `catch'" DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:68:in `start'" DBG> : "/usr/local/bin/macirb:12:in `<main>'" -- backtrace of native function call (Use addr2line) -- 0x2d6216 0x1fefdc 0x1ff01b 0x29554b 0x94b0b5eb 0xffffffff 0x2df917 0x2dfc70 0x2e2322 0x2d44d0 0x2d43f7 0x2cd899 0x2d3a81 0x2074a7 0x20793e 0x2c5be5 0x2d44d0 0x2cd899 0x2d3a81 0x20306a 0x203129 0x203287 0x2d44d0 0x2cd899 0x2d3a81 0x204f7a 0x2c5be5 0x2d44d0 0x2cd899 0x2d3a81 0x204f7a 0x2c5be5 0x2d44d0 0x2cd899 0x2d3a81 0x2d3c51 0x202d39 0x2089a0 0x1fdf 0x1f46 ------------------------------------------------------- Abort trap }}} -- Ticket URL: <http://ruby.macosforge.org/trac/ticket/63> macruby <http://ruby.macosforge.org/>