[前][次][番号順一覧][スレッド一覧][生データ]

yarv-dev:617

From: sheepman <sheepman sheepman.sakura.ne.jp>
Date: Sat, 17 Sep 2005 14:35:42 +0900
Subject: [yarv-dev:617] yarv dumps core when 'for' syntax used

こんにちは、sheepman です。
つぎのようにすると、core を吐きます。

$ ./miniruby -ve '
[1].each do |e|
  begin
  rescue
    for m in 1..2
      a = m
    end
  end
end
'
ruby 1.9.0 (2005-08-19) [i686-linux]
YARVCore 0.3.1 (rev: 256) [opts: ]
-e:10: [BUG] NODE_DASGN_CURR, but lv == 2 (line: 6)
ruby 1.9.0 (2005-08-19) [i686-linux]

zsh: abort (core dumped)  ./miniruby -ve

以下はバックトレースです。

(gdb) bt
#0  0x4009ac11 in kill () at finddomain.c:145
#1  0x4009a895 in raise (sig=6) at ../linuxthreads/sysdeps/unix/sysv/linux/raise.c:32
#2  0x4009c008 in abort () at ../sysdeps/generic/abort.c:88
#3  0x080ccfc6 in rb_bug (fmt=0x80f40c0 "NODE_DASGN_CURR, but lv == %d (line: %d)")
    at ../yarv/error.c:214
#4  0x080d33a3 in iseq_compile_each (self=1075620320, ret=0xbfffd790, node=0x401cacd8, poped=0)
    at ../yarv/compile.c:2681
#5  0x080cf2f2 in iseq_compile (self=1075620320, narg=1075621020) at ../yarv/compile.c:205
#6  0x080bf899 in iseq_init (self=1075620320, node=1075621020, name=1075620340,
    file_name=1075620800, parent=1075620440, type=7) at ../yarv/yarvcore.c:412
#7  0x080be5ee in call_cfunc (func=0x80bf864 <iseq_init>, recv=1075620320, len=1075480936, argc=5,
    argv=0x6) at call_cfunc.h:37
#8  0x080bafa9 in th_call0 (th=0x810f978, klass=0, recv=1075620320, id=0, oid=3001, argc=5,
    argv=0xbfffd960, body=0x401cb494, nosuper=0) at ../yarv/vm.c:280
#9  0x08059b0c in rb_call (klass=1075623180, recv=1075620320, mid=3001, argc=5, argv=0xbfffd960,
    scope=1) at ../yarv/eval.c:3668
#10 0x08059e25 in rb_funcall2 (recv=0, mid=3001, argc=5, argv=0xbfffd960) at ruby.h:647
#11 0x0805bc62 in rb_obj_call_init (obj=1075620320, argc=5, argv=0xbfffd960) at ../yarv/eval.c:4966
#12 0x0807cbe0 in rb_class_new_instance (argc=5, argv=0xbfffd960, klass=1075623180)
    at ../yarv/object.c:1524
#13 0x080cf7f4 in new_child_iseq (self=0, iseqobj=0x0, node=0x0, name=0, parent=0, type=0)
    at ../yarv/compile.c:639
#14 0x080d243b in iseq_compile_each (self=1075620440, ret=0xbfffde40, node=0x401cac9c, poped=0)
    at ../yarv/compile.c:2374
#15 0x080d2ceb in iseq_compile_each (self=1075620440, ret=0xbfffde40, node=0x401cac74, poped=0)
    at ../yarv/compile.c:2569
#16 0x080cf1c5 in iseq_compile (self=1075620440, narg=1075620980) at ../yarv/compile.c:221
#17 0x080bf899 in iseq_init (self=1075620440, node=1075620980, name=1075620460,
    file_name=1075620800, parent=1075620620, type=11) at ../yarv/yarvcore.c:412
#18 0x080be5ee in call_cfunc (func=0x80bf864 <iseq_init>, recv=1075620440, len=1075480936, argc=5,
    argv=0x6) at call_cfunc.h:37
#19 0x080bafa9 in th_call0 (th=0x810f978, klass=0, recv=1075620440, id=0, oid=3001, argc=5,
    argv=0xbfffe010, body=0x401cb494, nosuper=0) at ../yarv/vm.c:280

-- 
sheepman / TAMURA Takashi
sheepman sheepman.sakura.ne.jp http://sheepman.parfait.ne.jp/
   

--
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]

->     617 2005-09-17 14:35 [sheepman sheepman.sa] yarv dumps core when 'for' syntax used  
       624 2005-09-18 01:17 ┣[ko1 atdot.net       ]                                       
       736 2005-12-28 11:29 ┗[ko1 atdot.net       ]