> :> I'd like to see the stacktrace too, but since you're on
> Win 2000, it
> :> may not be possible.
> :
> :Here's the most recent dump:
>
> Run gdb:
> $ gdb -nw ruby.exe
> (gdb) run Tuner.rb
> ...
> Program received signal SIGSEGV, Segmentation fault.
> ...
> (gdb) bt
>
> and show us the result.

Cool! Thanks for the pointer; I'm sure it will be useful in the future as
well. Here it is:

__BEGIN__
Program received signal SIGSEGV, Segmentation fault.
0x47a68d in st_lookup (table=0x40f788,
    key=0x1219 <Address 0x1219 out of bounds>, value=0x2593010) at st.c:253
253         hash_val = do_hash(key, table);
(gdb) bt
#0  0x47a68d in st_lookup (table=0x40f788,
    key=0x1219 <Address 0x1219 out of bounds>, value=0x2593010) at st.c:253
#1  0x46066a in classname (klass=167857600) at variable.c:128
#2  0x4607ba in rb_class_path (klass=167857600) at variable.c:163
#3  0x460b59 in rb_class2name (klass=167857600) at variable.c:263
#4  0x4342e1 in rb_check_type (x=167857624, t=34) at error.c:237
#5  0x40fb3f in method_call (argc=1, argv=0xa07dd08, method=167857624)
    at eval.c:6445
#6  0x410320 in bmcall (args=168586776, method=167857624) at eval.c:6578
#7  0x408fbf in rb_yield_0 (val=168586776, self=168081088, klass=0,
acheck=2)
    at eval.c:3531
#8  0x40f2f9 in proc_call (proc=167857432, args=168586776) at eval.c:6189
#9  0x40a611 in call_cfunc (func=0x40f0a4 <proc_call>, recv=167857432,
len=-2,
    argc=1, argv=0x259389c) at eval.c:4106
#10 0x40ac3a in rb_call0 (klass=168022360, recv=167857432, id=5721, argc=1,
    argv=0x259389c, body=0xa03d0f8, nosuper=1) at eval.c:4248
#11 0x40b3c0 in rb_call (klass=168022360, recv=167857432, mid=5721, argc=1,
    argv=0x259389c, scope=0) at eval.c:4452
#12 0x4063f8 in rb_eval (self=167870152, n=0xa01a508) at eval.c:2482
#13 0x408fd7 in rb_yield_0 (val=168586872, self=167870152, klass=0,
acheck=0)
    at eval.c:3534
#14 0x4091ad in rb_yield (val=168586872) at eval.c:3588
#15 0x43c7c4 in each_pair_i (key=167870272, value=167857432) at hash.c:584
---Type <return> to continue, or q <return> to quit---
#16 0x43bd71 in rb_hash_foreach_iter (key=167870272, value=167857432,
    arg=0x2594254) at hash.c:127
#17 0x47ac4f in st_foreach (table=0xa089488,
    func=0x43bd40 <rb_hash_foreach_iter>, arg=0x2594254 "DL\001\n CC")
    at st.c:489
#18 0x43bdc1 in rb_hash_foreach_call (arg=0x2594254) at hash.c:138
#19 0x409ef4 in rb_ensure (b_proc=0x43bda4 <rb_hash_foreach_call>,
    data1=39404116, e_proc=0x43bdcc <rb_hash_foreach_ensure>,
data2=167857360)
    at eval.c:3921
#20 0x43be47 in rb_hash_foreach (hash=167857360, func=0x43c7a0
<each_pair_i>,
    farg=0x0) at hash.c:169
#21 0x43c7e6 in rb_hash_each_pair (hash=167857360) at hash.c:592
#22 0x40a62e in call_cfunc (func=0x43c7cc <rb_hash_each_pair>,
recv=167857360,
    len=0, argc=0, argv=0x0) at eval.c:4112
#23 0x40ac3a in rb_call0 (klass=168049432, recv=167857360, id=3553, argc=0,
    argv=0x0, body=0xa0436b0, nosuper=1) at eval.c:4248
#24 0x40b3c0 in rb_call (klass=168049432, recv=167857360, mid=3553, argc=0,
    argv=0x0, scope=0) at eval.c:4452
#25 0x4063f8 in rb_eval (self=167870152, n=0xa01a7f0) at eval.c:2482
#26 0x4055d3 in rb_eval (self=167870152, n=0xa01a430) at eval.c:2217
#27 0x40afe0 in rb_call0 (klass=167878864, recv=167870152, id=6281, argc=0,
    argv=0x25952d4, body=0xa01a430, nosuper=0) at eval.c:4360
#28 0x40b3c0 in rb_call (klass=167878864, recv=167870152, mid=6281, argc=2,
---Type <return> to continue, or q <return> to quit---
    argv=0x25952cc, scope=0) at eval.c:4452
#29 0x4063f8 in rb_eval (self=167870200, n=0xa0192c0) at eval.c:2482
#30 0x408fd7 in rb_yield_0 (val=167856544, self=167870200, klass=0,
acheck=2)
    at eval.c:3534
#31 0x40f2f9 in proc_call (proc=167856280, args=168586968) at eval.c:6189
#32 0x40a611 in call_cfunc (func=0x40f0a4 <proc_call>, recv=167856280,
len=-2,
    argc=1, argv=0x2595e5c) at eval.c:4106
#33 0x40ac3a in rb_call0 (klass=168022360, recv=167856280, id=5721, argc=1,
    argv=0x2595e5c, body=0xa03d0f8, nosuper=1) at eval.c:4248
#34 0x40b3c0 in rb_call (klass=168022360, recv=167856280, mid=5721, argc=1,
    argv=0x2595e5c, scope=0) at eval.c:4452
#35 0x4063f8 in rb_eval (self=167856544, n=0xa032b80) at eval.c:2482
#36 0x408fd7 in rb_yield_0 (val=168587064, self=167856544, klass=0,
acheck=0)
    at eval.c:3534
#37 0x4091ad in rb_yield (val=168587064) at eval.c:3588
#38 0x43c7c4 in each_pair_i (key=167870200, value=167856280) at hash.c:584
#39 0x43bd71 in rb_hash_foreach_iter (key=167870200, value=167856280,
    arg=0x2596814) at hash.c:127
#40 0x47ac4f in st_foreach (table=0xa089918,
    func=0x43bd40 <rb_hash_foreach_iter>, arg=0x2596814 "EH\001\n CC")
    at st.c:489
#41 0x43bdc1 in rb_hash_foreach_call (arg=0x2596814) at hash.c:138
#42 0x409ef4 in rb_ensure (b_proc=0x43bda4 <rb_hash_foreach_call>,
---Type <return> to continue, or q <return> to quit---
    data1=39413780, e_proc=0x43bdcc <rb_hash_foreach_ensure>,
data2=167856328)
    at eval.c:3921
#43 0x43be47 in rb_hash_foreach (hash=167856328, func=0x43c7a0
<each_pair_i>,
    farg=0x0) at hash.c:169
#44 0x43c7e6 in rb_hash_each_pair (hash=167856328) at hash.c:592
#45 0x40a62e in call_cfunc (func=0x43c7cc <rb_hash_each_pair>,
recv=167856328,
    len=0, argc=0, argv=0x0) at eval.c:4112
#46 0x40ac3a in rb_call0 (klass=168049432, recv=167856328, id=3553, argc=0,
    argv=0x0, body=0xa0436b0, nosuper=1) at eval.c:4248
#47 0x40b3c0 in rb_call (klass=168049432, recv=167856328, mid=3553, argc=0,
    argv=0x0, scope=0) at eval.c:4452
#48 0x4063f8 in rb_eval (self=167856544, n=0xa032ce8) at eval.c:2482
#49 0x4055d3 in rb_eval (self=167856544, n=0xa032af0) at eval.c:2217
#50 0x40afe0 in rb_call0 (klass=167978008, recv=167856544, id=9457, argc=0,
    argv=0x0, body=0xa032af0, nosuper=0) at eval.c:4360
#51 0x40b3c0 in rb_call (klass=167978008, recv=167856544, mid=9457, argc=0,
    argv=0x0, scope=2) at eval.c:4452
#52 0x4063f8 in rb_eval (self=167856544, n=0xa033c00) at eval.c:2482
#53 0x40afe0 in rb_call0 (klass=167978008, recv=167856544, id=9217, argc=0,
    argv=0x0, body=0xa033c00, nosuper=0) at eval.c:4360
#54 0x40b3c0 in rb_call (klass=167978008, recv=167856544, mid=9217, argc=0,
    argv=0x0, scope=0) at eval.c:4452
#55 0x4063f8 in rb_eval (self=167869744, n=0xa0356d0) at eval.c:2482
---Type <return> to continue, or q <return> to quit---
#56 0x40afe0 in rb_call0 (klass=167941480, recv=167869744, id=9345, argc=0,
    argv=0x2598ac0, body=0xa0356d0, nosuper=0) at eval.c:4360
#57 0x40b3c0 in rb_call (klass=167941480, recv=167869744, mid=9345, argc=0,
    argv=0x2598ac0, scope=1) at eval.c:4452
#58 0x40b544 in rb_f_send (argc=1, argv=0x2598abc, recv=167869744)
    at eval.c:4482
#59 0x40a620 in call_cfunc (func=0x40b47c <rb_f_send>, recv=167869744,
len=-1,
    argc=1, argv=0x2598abc) at eval.c:4109
#60 0x40ac3a in rb_call0 (klass=168086008, recv=167869744, id=3761, argc=1,
    argv=0x2598abc, body=0xa04a8e0, nosuper=1) at eval.c:4248
#61 0x40b3c0 in rb_call (klass=168086008, recv=167869744, mid=3761, argc=1,
    argv=0x2598abc, scope=1) at eval.c:4452
#62 0x4063f8 in rb_eval (self=167869744, n=0xa0383e8) at eval.c:2482
#63 0x40afe0 in rb_call0 (klass=167941480, recv=167869744, id=5633, argc=0,
    argv=0x25992c0, body=0xa0383e8, nosuper=0) at eval.c:4360
#64 0x40b3c0 in rb_call (klass=167941480, recv=167869744, mid=5633, argc=1,
    argv=0x25992bc, scope=0) at eval.c:4452
#65 0x4063f8 in rb_eval (self=167869720, n=0xa02a510) at eval.c:2482
#66 0x408fd7 in rb_yield_0 (val=167869744, self=167869720, klass=0,
acheck=0)
    at eval.c:3534
#67 0x4091ad in rb_yield (val=167869744) at eval.c:3588
#68 0x46465c in rb_ary_each (ary=167869672) at array.c:629
#69 0x40a62e in call_cfunc (func=0x464638 <rb_ary_each>, recv=167869672,
---Type <return> to continue, or q <return> to quit---
    len=0, argc=0, argv=0x0) at eval.c:4112
#70 0x40ac3a in rb_call0 (klass=168052768, recv=167869672, id=3553, argc=0,
    argv=0x0, body=0xa044388, nosuper=1) at eval.c:4248
#71 0x40b3c0 in rb_call (klass=168052768, recv=167869672, mid=3553, argc=0,
    argv=0x0, scope=0) at eval.c:4452
#72 0x4063f8 in rb_eval (self=167869720, n=0xa02a9c0) at eval.c:2482
#73 0x4055d3 in rb_eval (self=167869720, n=0xa02aa08) at eval.c:2217
#74 0x40afe0 in rb_call0 (klass=167943328, recv=167869720, id=5633, argc=0,
    argv=0x259aac0, body=0xa02aa08, nosuper=0) at eval.c:4360
#75 0x40b3c0 in rb_call (klass=167943328, recv=167869720, mid=5633, argc=1,
    argv=0x259aabc, scope=0) at eval.c:4452
#76 0x4063f8 in rb_eval (self=167870056, n=0xa0399c0) at eval.c:2482
#77 0x40f67c in block_pass (self=167870056, node=0xa0399d8) at eval.c:6285
#78 0x40547c in rb_eval (self=167870056, n=0xa039960) at eval.c:2203
#79 0x408fd7 in rb_yield_0 (val=167869720, self=167870056, klass=0,
acheck=0)
    at eval.c:3534
#80 0x4091ad in rb_yield (val=167869720) at eval.c:3588
#81 0x46465c in rb_ary_each (ary=167870008) at array.c:629
#82 0x40a62e in call_cfunc (func=0x464638 <rb_ary_each>, recv=167870008,
    len=0, argc=0, argv=0x0) at eval.c:4112
#83 0x40ac3a in rb_call0 (klass=168052768, recv=167870008, id=3553, argc=0,
    argv=0x0, body=0xa044388, nosuper=1) at eval.c:4248
#84 0x40b3c0 in rb_call (klass=168052768, recv=167870008, mid=3553, argc=0,
---Type <return> to continue, or q <return> to quit---
    argv=0x0, scope=0) at eval.c:4452
#85 0x4063f8 in rb_eval (self=167870056, n=0xa039e10) at eval.c:2482
#86 0x4055d3 in rb_eval (self=167870056, n=0xa039e58) at eval.c:2217
#87 0x40afe0 in rb_call0 (klass=167897968, recv=167870056, id=5633, argc=0,
    argv=0x259ca70, body=0xa039e58, nosuper=0) at eval.c:4360
#88 0x40b3c0 in rb_call (klass=167897968, recv=167870056, mid=5633, argc=1,
    argv=0x259ca6c, scope=0) at eval.c:4452
#89 0x4063f8 in rb_eval (self=167870200, n=0xa018f60) at eval.c:2482
#90 0x4055d3 in rb_eval (self=167870200, n=0xa018d68) at eval.c:2217
#91 0x404ca3 in rb_eval (self=167870200, n=0xa019500) at eval.c:1966
#92 0x40afe0 in rb_call0 (klass=167871088, recv=167870200, id=8985, argc=0,
    argv=0x0, body=0xa019500, nosuper=0) at eval.c:4360
#93 0x40b3c0 in rb_call (klass=167871088, recv=167870200, mid=8985, argc=0,
    argv=0x0, scope=0) at eval.c:4452
#94 0x4063f8 in rb_eval (self=167870272, n=0xa03b100) at eval.c:2482
#95 0x40afe0 in rb_call0 (klass=167878144, recv=167870272, id=8889, argc=0,
    argv=0x0, body=0xa03b100, nosuper=0) at eval.c:4360
#96 0x40b3c0 in rb_call (klass=167878144, recv=167870272, mid=8889, argc=0,
    argv=0x0, scope=2) at eval.c:4452
#97 0x4063f8 in rb_eval (self=167870272, n=0xa03bc28) at eval.c:2482
#98 0x40afe0 in rb_call0 (klass=167878144, recv=167870272, id=5553, argc=0,
    argv=0x0, body=0xa03bc28, nosuper=0) at eval.c:4360
#99 0x40b3c0 in rb_call (klass=167878144, recv=167870272, mid=5553, argc=0,
---Type <return> to continue, or q <return> to quit---
    argv=0x0, scope=0) at eval.c:4452
#100 0x4063f8 in rb_eval (self=167878144, n=0xa03bd48) at eval.c:2482
#101 0x40afe0 in rb_call0 (klass=167870728, recv=167878144, id=5633, argc=0,
    argv=0x0, body=0xa03bd48, nosuper=0) at eval.c:4360
#102 0x40b3c0 in rb_call (klass=167870728, recv=167878144, mid=5633, argc=0,
    argv=0x0, scope=0) at eval.c:4452
#103 0x4063f8 in rb_eval (self=168081088, n=0xa03beb0) at eval.c:2482
#104 0x4026a8 in eval_node (self=168081088, node=0xa03beb0) at eval.c:1040
#105 0x402a9f in ruby_run () at eval.c:1166
#106 0x40106b in main (argc=3, argv=0xa011ae8, envp=0xa010008) at main.c:50
#107 0x610038ad in _size_of_stack_reserve__ ()
#108 0x61003a8d in _size_of_stack_reserve__ ()
#109 0x61003acc in _size_of_stack_reserve__ ()
#110 0x47c3db in cygwin_crt0 ()
__END__

Hope that gives you the info you need.


Nathaniel

<:((><
+ - -						+ - -
| RoleModel Software, Inc. &		| EQUIP VI
| The XP Software Studio(TM)		|