ts wrote:
>
>  xxx% gdb miniruby
>  gdb> r mkconfig.rb rbconfig.rb
>  gdb> bt                         # when it crash

Perfect.  Thanks.

% gdb miniruby

(gdb) r mkconfig.rb rbconfig.rb
Starting program: /home/kleb/local/pkgs/ruby/miniruby mkconfig.rb rbconfig.rb

Program received signal SIGSEGV, Segmentation fault.
rb_yield_0 (val=2305843009218536184, self=2305843009218656024, klass=0, flags=-67224, avalue=0) at eval.c:4707
4707        if ((state = EXEC_TAG()) == 0) {
(gdb) bt
#0  rb_yield_0 (val=2305843009218536184, self=2305843009218656024, klass=0, flags=-67224, avalue=0) at eval.c:4707
#1  0x40000000000263f0 in rb_yield (val=2305843009218536184) at eval.c:4807
#2  0x400000000011bd00 in rb_ary_each (ary=2305843009218534784) at array.c:1114
#3  0x400000000002abc0 in rb_call0 (klass=2305843009218685824, recv=2305843009218534784, id=3825, oid=0, argc=0, argv=0x0,
     body=0x20000000004c2338, nosuper=56920) at eval.c:5385
#4  0x400000000002ca70 in rb_call (klass=2305843009218685824, recv=2305843009218534784, mid=3825, argc=0, argv=0x0, scope=0)
     at eval.c:5737
#5  0x400000000001bcd0 in rb_eval (self=2305843009218656024, n=0x6000000000004d20) at eval.c:2983
#6  0x400000000002c000 in rb_call0 (klass=2305843009218655984, recv=2305843009218656024, id=10233, oid=0, argc=2,
     argv=0x60000fffffff6890, body=0x20000000004a0e40, nosuper=-44504) at eval.c:5644
#7  0x400000000002ca70 in rb_call (klass=2305843009218655984, recv=2305843009218656024, mid=10233, argc=2, argv=0x60000fffffff6890,
     scope=0) at eval.c:5737
#8  0x400000000001deb0 in rb_eval (self=2305843009218737184, n=0x6000000000004d20) at eval.c:3252
#9  0x40000000000132c0 in eval_node (self=2305843009218737184, node=0x20000000004b0340) at eval.c:1285
#10 0x4000000000014030 in ruby_exec () at eval.c:1454
#11 0x4000000000014110 in ruby_run () at eval.c:1475
#12 0x400000000000f310 in Init_ext () at main.c:50
#13 0x4000000000025950 in rb_yield_0 (val=Cannot access memory at address 0x60000fff7fffbfa0
) at eval.c:4707
#14 0x400000000000f140 in _start ()
#15 0x4000000000025950 in rb_yield_0 (val=Cannot access memory at address 0x60000fff7fffbef8
) at eval.c:4707
Cannot access memory at address 0x60000fff7fffbf98

where for stable-snapshot 03-18-2004, eval.c has:

    4705     PUSH_ITER(block->iter);
    4706     PUSH_TAG(lambda ? PROT_NONE : PROT_YIELD);
    4707     if ((state = EXEC_TAG()) == 0) {
    4708       redo:
    4709         if (nd_type(node) == NODE_CFUNC || nd_type(node) == NODE_IFUNC) {

Thanks,
-- 
Bil Kleb, Hampton, Virginia