From: Tanaka Akira Date: 2007-09-30T11:21:59+09:00 Subject: [ruby-dev:31911] eval("", TOPLEVEL_BINDING) and ObjectSpace._id2ref 以下のようにすると SEGV します。 % ./ruby -e ' eval("", TOPLEVEL_BINDING) minobj = ObjectSpace.to_enum(:each_object).min {|a,b| a.object_id <=> b.object_id } maxobj = ObjectSpace.to_enum(:each_object).max {|a,b| a.object_id <=> b.object_id } minobj.object_id.upto(maxobj.object_id) {|id| begin o = ObjectSpace._id2ref(id) rescue RangeError next end o.inspect } ' -e:11: -- control frame ---------- c:0006 p:0031 s:0017 b:0016 l:000006 d:000015 BLOCK -e:11 c:0005 p:---- s:0014 b:0013 l:000012 d:000012 FINISH :each c:0004 p:---- s:0011 b:0011 l:000010 d:000010 CFUNC :upto c:0003 p:0085 s:0007 b:0007 l:000006 d:000006 TOP -e:5 c:0002 p:---- s:0003 b:0003 l:000002 d:000002 FINISH :inherited c:0001 p:---- s:0001 b:-001 l:000000 d:000000 ------ --------------------------- DBG> : "-e:5:in `upto'" DBG> : "-e:5:in `
'" -- backtrace of native function call (Use addr2line) -- 0x80e0fc5 0x80fcaf3 0x80fcbbb 0x80b3ad0 0xb7f4b420 0x8057df4 0x8057e43 0x8057f1c 0x80dece5 0x80df894 0x80d8a85 0x805a1de 0x80723cf 0x80d9576 0x80dc1bc 0x80df894 0x80dfbcb 0x8059b09 0x805d40d 0x80577b0 0xb7db5ea8 0x80576d1 ------------------------------------------------------- [BUG] Segmentation fault ruby 1.9.0 (2007-09-30) [i686-linux] -- [田中 哲][たなか あきら][Tanaka Akira]