From: Yusuke ENDOH Date: 2007-07-02T00:14:24+09:00 Subject: [ruby-dev:31102] [*0];0 dumps core 遠藤と申します。 1.9 で以下のようにすると落ちます。 $ ./ruby -e '[*0];0' -e:1: -- control frame ---------- c:0003 p:0007 s:0006 b:0005 l:000004 d:000004 TOP -e:1 c:0002 p:---- s:0003 b:0003 l:000002 d:000002 FINISH :inherited c:0001 p:---- s:0001 b:-001 l:000000 d:000000 ------ --------------------------- -- backtrace of native function call (Use addr2line) -- 0x80daaf5 0x80f3d50 0x80d80e9 0x80d8514 0x80d8909 0x8059042 0x8059066 0x805d5f1 0x8056d1f 0xb7d4bea8 0x8056c51 ------------------------------------------------------- [BUG] Stack consistency error (sp: 6, bp: 5) ruby 1.9.0 (2007-07-01) [i686-linux] アボートしました (core dumped) [ruby-dev:31068] と同じ問題だと思います。 Index: compile.c =================================================================== --- compile.c (revision 12674) +++ compile.c (working copy) @@ -3940,6 +3940,9 @@ case NODE_SPLAT:{ COMPILE(ret, "splat", node->nd_head); ADD_INSN1(ret, nd_line(node), splatarray, Qfalse); + if (poped) { + ADD_INSN(ret, nd_line(node), pop); + } break; } case NODE_DEFN:{ -- Yusuke ENDOH