Bug #664
closedruby 1.9 (trunk rev 19846) segfaults
Description
=begin
My build passes "make test".
I'm trying to port Rant to Ruby 1.9 and it segfaults
most of the time.
One possible way to produce a segfault:
$ svn checkout http://rant.rubyforge.org/svn/
$ ruby19 run_rant -n doc
GNU gdb 6.6-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(gdb) run
Starting program: /usr/local/bin/ruby19 run_rant -n doc
[Thread debugging using libthread_db enabled]
[New Thread -1210849600 (LWP 21608)]
[New Thread -1208980592 (LWP 21611)]
Executing "doc/html/index.html"
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1210849600 (LWP 21608)]
vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc31e70, body=0x81d2830, nosuper=0)
at vm_insnhelper.c:50
50 cfp->iseq = (rb_iseq_t *) iseq;
(gdb) backtrace
#0 vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc31e70, body=0x81d2830, nosuper=0)
at vm_insnhelper.c:50
#1 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#2 0x0808295d in rb_equal (obj1=3083341784, obj2=138761380) at object.c:51
#3 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138761380, id=325, oid=0, argc=1, argv=0xbfc31f60, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#4 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#5 0x0808295d in rb_equal (obj1=3083341784, obj2=138762300) at object.c:51
#6 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc32050, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#7 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#8 0x0808295d in rb_equal (obj1=3083341784, obj2=138761380) at object.c:51
#9 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138761380, id=325, oid=0, argc=1, argv=0xbfc32140, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#10 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#11 0x0808295d in rb_equal (obj1=3083341784, obj2=138762300) at object.c:51
#12 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc32230, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#13 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#14 0x0808295d in rb_equal (obj1=3083341784, obj2=138761380) at object.c:51
#15 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138761380, id=325, oid=0, argc=1, argv=0xbfc32320, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#16 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#17 0x0808295d in rb_equal (obj1=3083341784, obj2=138762300) at object.c:51
#18 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc32410, body=0x81d2830,
---Type to continue, or q to quit---q
nQuit
) at vm_eval.c:69
#19 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#20 0x0808295d in rb_equal (obj1=3083341784, obj2=138761380) at object.c:51
#21 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138761380, id=325, oid=0, argc=1, argv=0xbfc32500, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#22 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#23 0x0808295d in rb_equal (obj1=3083341784, obj2=138762300) at object.c:51
#24 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc325f0, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#25 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#26 0x0808295d in rb_equal (obj1=3083341784, obj2=138761380) at object.c:51
#27 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138761380, id=325, oid=0, argc=1, argv=0xbfc326e0, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#28 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#29 0x0808295d in rb_equal (obj1=3083341784, obj2=138762300) at object.c:51
#30 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc327d0, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#31 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#32 0x0808295d in rb_equal (obj1=3083341784, obj2=138761380) at object.c:51
#33 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138761380, id=325, oid=0, argc=1, argv=0xbfc328c0, body=0x81d2830,
nosuper=0) at vm_eval.c:69
#34 0x081113f4 in rb_funcall (recv=, mid=325, n=1) at vm_eval.c:254
#35 0x0808295d in rb_equal (obj1=3083341784, obj2=138762300) at object.c:51
#36 0x0811bd23 in vm_call0 (th=0x81a8738, klass=136128800, recv=138762300, id=325, oid=0, argc=1, argv=0xbfc329b0, body=0x81d2830,
nosuper=0) at vm_eval.c:69
---Type to continue, or q to quit---q
This pattern repeats for more than 15000 stackframes.
=end