(gdb) handle SIG33 pass nostop noprint Signal Stop Print Pass to program Description SIG33 No No Yes Real-time event 33 (gdb) set pagination 0 (gdb) run Starting program: /usr/bin/ruby [Thread debugging using libthread_db enabled] [New Thread 0xb7f5b6c0 (LWP 6450)] [New Thread 0xb7cd9b90 (LWP 6453)] : compile/should not be reached: compile.c:473 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb7f5b6c0 (LWP 6450)] 0x080fd3e8 in iseq_setup (iseq=0x8b03de0, anchor=0xbfedd1ac) at compile.c:1872 1872 const int do_peepholeopt = iseq->compile_data->option->peephole_optimization; (gdb) backtrace full #0 0x080fd3e8 in iseq_setup (iseq=0x8b03de0, anchor=0xbfedd1ac) at compile.c:1872 No locals. #1 0x08107961 in rb_iseq_compile_node (self=144961012, node=0x8a47524) at compile.c:500 ret_body__ = {anchor = {type = 0, next = 0x8afb108, prev = 0x0}, last = 0x8afb108} iseq = (rb_iseq_t *) 0x8b03de0 #2 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a47524, name=144961040, filename=145012028, line_no=229, parent=0, type=5, bopt=0, option=0xbfede184) at iseq.c:337 iseq = (rb_iseq_t *) 0x8b03de0 self = 144961012 #3 0x080fe11a in new_child_iseq (iseq=0x8b008b8, node=0xbfedd1ac, name=3220033964, parent=0, type=5, line_no=114) at compile.c:915 ret = #4 0x08100731 in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=, poped=1) at compile.c:4538 iseqval = rb_intern_id_cache = 0 #5 0x080fe51d in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=, poped=0) at compile.c:2964 rb_intern_id_cache = 0 #6 0x08107ea0 in rb_iseq_compile_node (self=144964288, node=0x8a407e0) at compile.c:448 ret_body__ = {anchor = {type = 0, next = 0x8b00504, prev = 0x0}, last = 0x8b038d0} iseq = (rb_iseq_t *) 0x8b008b8 #7 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a407e0, name=144964316, filename=145012028, line_no=39, parent=144965156, type=9, bopt=0, option=0xbfede184) at iseq.c:337 iseq = (rb_iseq_t *) 0x8b008b8 self = 144964288 #8 0x080fe11a in new_child_iseq (iseq=0x8affbb0, node=0xbfedd1ac, name=3220033964, parent=144965156, type=9, line_no=19) at compile.c:915 ret = #9 0x08101018 in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=, poped=1) at compile.c:4606 iseqval = rb_intern_id_cache = 0 #10 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=, poped=1) at compile.c:2964 rb_intern_id_cache = 0 #11 0x080fee3f in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=, poped=1) at compile.c:2988 cond_seq_body__ = {anchor = {type = 0, next = 0x8b00050, prev = 0x0}, last = 0x8b000c4} then_label = (LABEL *) 0x8afffd0 else_label = (LABEL *) 0x8affff0 then_seq_body__ = {anchor = {type = 0, next = 0x8b000e8, prev = 0x0}, last = 0x8b0019c} else_seq_body__ = {anchor = {type = 0, next = 0x0, prev = 0x0}, last = 0xbfedde30} end_label = (LABEL *) 0x8b00010 rb_intern_id_cache = 0 #12 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=, poped=0) at compile.c:2964 rb_intern_id_cache = 0 #13 0x08107c85 in rb_iseq_compile_node (self=144965156, node=0x8a3fe5c) at compile.c:459 ret_body__ = {anchor = {type = 0, next = 0x8affca4, prev = 0x0}, last = 0x8affe7c} iseq = (rb_iseq_t *) 0x8affbb0 #14 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a3fe5c, name=144965184, filename=145012028, line_no=1, parent=0, type=3, bopt=0, option=0xbfede184) at iseq.c:337 iseq = (rb_iseq_t *) 0x8affbb0 self = 144965156 #15 0x0810c096 in rb_iseq_compile_with_option (src=145012000, file=145012028, line=1, opt=4) at iseq.c:486 option = {inline_const_cache = 1, peephole_optimization = 1, tailcall_optimization = 0, specialized_instruction = 1, operands_unification = 0, instructions_unification = 0, stack_caching = 0, trace_instruction = 1, debug_level = 0} node = (NODE *) 0x8a3fe5c th = (rb_thread_t *) 0x8a3ea98 #16 0x0810c1a7 in rb_iseq_compile (src=145012000, file=145012028, line=1) at iseq.c:494 No locals. #17 0x08123f01 in Init_prelude () at prelude.c:434 No locals. #18 0x080ceed5 in process_options (arg=3220042532) at ruby.c:1061 opt = (struct cmdline_options *) 0xbfedf2b8 argc = argv = (char **) 0xbfedf4d8 tree = parser = 145022360 iseq = enc = lenc = (rb_encoding *) 0x8a870b0 fbuf = "tñí¿\001\000\000\000\001", '\0' , "\002\000\000\000ÿÿÿÿ", '\0' , "\001\000\000\000\230\207¬\b(\210¬\b", '\0' , "\001\000\000\000\230\207¬\b(\210¬\b\002\000\000\000ÿÿÿÿ", '\0' , "\báí¿ßi\f\bË¿¬\bÛ¿¬\b(q¨\b\002\000\000\000ÿÿÿÿ\000\000\000\000\000\000\000\000\030", '\0' , "\001\001", '\0' , "\001\001", '\0' , "tñí¿¸\205¬\b¨åí¿Ñ\224\v\btñí¿\000\000\000\000\f\000\000\000ðx¬\b\017\000\000\000\000\000\000\000"... i = 1 th = (rb_thread_t *) 0x8a3ea98 env = rb_intern_id_cache = 0 #19 0x0810fa5b in rb_vm_call_cfunc (recv=145225080, func=0x80cec10 , arg=3220042532, blockptr=0x0, filename=145030872) at vm.c:1381 th = (rb_thread_t *) 0x8a3ea98 reg_cfp = iseqval = 145030844 val = 224 #20 0x080cd0fd in ruby_process_options (argc=1, argv=0xbfedf4d4) at ruby.c:1815 args = {argc = 1, argv = 0xbfedf4d4, opt = 0xbfedf2b8} opt = {sflag = 0, xflag = 0, do_loop = 0, do_print = 0, do_check = 0, do_line = 0, do_split = 0, do_search = 0, usage = 0, version = 0, copyright = 0, disable = 0, verbose = 0, yydebug = 0, safe_level = 0, setids = 0, dump = 0, script = 0x8a4fe38 "-", script_name = 145030704, e_script = 0, src = {enc = {name = 0, index = -1}}, ext = {enc = {name = 0, index = -1}}, intern = {enc = {name = 0, index = -1}}, req_list = 0} #21 0x0805b61b in ruby_options (argc=1, argv=0xbfedf4d4) at eval.c:89 _th = (rb_thread_t * const) 0x8a3ea98 _tag = {buf = {{__jmpbuf = {-1074924464, 6007968, 0, -1074924536, -1258472158, 51739535}, __mask_was_saved = 0, __saved_mask = {__val = {0, 0, 0, 144959320, 0, 0, 0, 0, 7414496, 2147483648, 1, 0, 0, 0, 0, 2097152, 0, 3220042712, 6864008, 10485760, 3220042696, 5, 4294967295, 0, 0, 3220042760, 135398729, 10485760, 0, 5, 0, 10485760}}}}, tag = 0, retval = 0, prev = 0x0} state = 0 tree = (void *) 0x0 #22 0x080595f8 in main (argc=1, argv=0xbfedf4d4) at main.c:35 variable_in_this_stack_frame = 7348212 (gdb) info registers eax 0xe0 224 ecx 0xbfedd1ac -1074933332 edx 0xbfedd1ac -1074933332 ebx 0x8a3edf4 144961012 esp 0xbfedd0e0 0xbfedd0e0 ebp 0xbfedd168 0xbfedd168 esi 0x8b03de0 145767904 edi 0x8a47524 144995620 eip 0x80fd3e8 0x80fd3e8 eflags 0x10282 [ SF IF RF ] cs 0x73 115 ss 0x7b 123 ds 0x7b 123 es 0x7b 123 fs 0x0 0 gs 0x33 51 (gdb) x/16i $pc 0x80fd3e8 : mov 0x4(%eax),%ecx 0x80fd3eb : mov 0x8(%eax),%ebx 0x80fd3ee : mov 0xc(%eax),%eax 0x80fd3f1 : mov %ecx,-0x5c(%ebp) 0x80fd3f4 : mov %ebx,-0x58(%ebp) 0x80fd3f7 : mov %eax,-0x60(%ebp) 0x80fd3fa : mov -0x68(%ebp),%eax 0x80fd3fd : call 0x80fc850 0x80fd402 : test %eax,%eax 0x80fd404 : mov %eax,%esi 0x80fd406 : jne 0x80fd417 0x80fd408 : jmp 0x80fdb3a 0x80fd40d : lea 0x0(%esi),%esi 0x80fd410 : mov 0x4(%esi),%esi 0x80fd413 : test %esi,%esi 0x80fd415 : je 0x80fd475 (gdb) thread apply all backtrace Thread 2 (Thread 0xb7cd9b90 (LWP 6453)): #0 0x00119402 in __kernel_vsyscall () #1 0x00719b51 in __lll_mutex_unlock_wake () from /lib/libpthread.so.0 #2 0x00716889 in _L_mutex_unlock_101 () from /lib/libpthread.so.0 #3 0x007164f0 in __pthread_mutex_unlock_usercnt () from /lib/libpthread.so.0 #4 0x00717433 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #5 0x0811e613 in thread_timer (dummy=0x0) at thread_pthread.c:122 #6 0x0071345b in start_thread () from /lib/libpthread.so.0 #7 0x00693e5e in clone () from /lib/libc.so.6 Thread 1 (Thread 0xb7f5b6c0 (LWP 6450)): #0 0x080fd3e8 in iseq_setup (iseq=0x8b03de0, anchor=0xbfedd1ac) at compile.c:1872 #1 0x08107961 in rb_iseq_compile_node (self=144961012, node=0x8a47524) at compile.c:500 #2 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a47524, name=144961040, filename=145012028, line_no=229, parent=0, type=5, bopt=0, option=0xbfede184) at iseq.c:337 #3 0x080fe11a in new_child_iseq (iseq=0x8b008b8, node=0xbfedd1ac, name=3220033964, parent=0, type=5, line_no=114) at compile.c:915 #4 0x08100731 in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=, poped=1) at compile.c:4538 #5 0x080fe51d in iseq_compile_each (iseq=0x8b008b8, ret=0xbfedd70c, node=, poped=0) at compile.c:2964 #6 0x08107ea0 in rb_iseq_compile_node (self=144964288, node=0x8a407e0) at compile.c:448 #7 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a407e0, name=144964316, filename=145012028, line_no=39, parent=144965156, type=9, bopt=0, option=0xbfede184) at iseq.c:337 #8 0x080fe11a in new_child_iseq (iseq=0x8affbb0, node=0xbfedd1ac, name=3220033964, parent=144965156, type=9, line_no=19) at compile.c:915 #9 0x08101018 in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=, poped=1) at compile.c:4606 #10 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfedde20, node=, poped=1) at compile.c:2964 #11 0x080fee3f in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=, poped=1) at compile.c:2988 #12 0x080fe51d in iseq_compile_each (iseq=0x8affbb0, ret=0xbfede10c, node=, poped=0) at compile.c:2964 #13 0x08107c85 in rb_iseq_compile_node (self=144965156, node=0x8a3fe5c) at compile.c:459 #14 0x0810b1a9 in rb_iseq_new_with_bopt_and_opt (node=0x8a3fe5c, name=144965184, filename=145012028, line_no=1, parent=0, type=3, bopt=0, option=0xbfede184) at iseq.c:337 #15 0x0810c096 in rb_iseq_compile_with_option (src=145012000, file=145012028, line=1, opt=4) at iseq.c:486 #16 0x0810c1a7 in rb_iseq_compile (src=145012000, file=145012028, line=1) at iseq.c:494 #17 0x08123f01 in Init_prelude () at prelude.c:434 #18 0x080ceed5 in process_options (arg=3220042532) at ruby.c:1061 #19 0x0810fa5b in rb_vm_call_cfunc (recv=145225080, func=0x80cec10 , arg=3220042532, blockptr=0x0, filename=145030872) at vm.c:1381 #20 0x080cd0fd in ruby_process_options (argc=1, argv=0xbfedf4d4) at ruby.c:1815 #21 0x0805b61b in ruby_options (argc=1, argv=0xbfedf4d4) at eval.c:89 #22 0x080595f8 in main (argc=1, argv=0xbfedf4d4) at main.c:35