Version: 5.0 Platform: i586-pc-sco3.2v5.0.2 Compiler: gcc-2.95.2 I had another segv trouble with print_section_info() in gdb-4.18. I have a detailed report on it. It is unlikely to be interesting to anybody since 5.0 is released, but I can send it if requested. This segv is with 5.0. gdb is run like this: gdb <executable>. The executable heavily uses shared libraries. Then the following commands are passed to gdb. attach <process running <executable>> info target detach break *<<executable> entry point> run info target SEGV occurs while executing the last command. gdb backtrace immediately after SEGV is: -- #0 0x8102a21 in int_vasprintf (result=0x10f94, format=0x811f912 " is %s", args=0x8047308) at ../../gdb-5.0/libiberty/vasprintf.c:101 #1 0x8102aba in vasprintf (result=0x0, format=0x10f94 <Address 0x10f94 out of bounds>, args=0x8047374 "\224\017\001") at ../../gdb-5.0/libiberty/vasprintf.c:131 #2 0x80a2e93 in vfprintf_maybe_filtered (stream=0x10f94, format=0x10f94 <Address 0x10f94 out of bounds>, args=0x10f94 <Address 0x10f94 out of bounds>, filter=69524) at utils.c:2030 #3 0x80a2f0d in vfprintf_filtered (stream=0x0, format=0x10f94 <Address 0x10f94 out of bounds>, args=0x10f94 <Address 0x10f94 out of bounds>) at utils.c:2048 #4 0x80a305c in printf_filtered ( format=0x10f94 <Address 0x10f94 out of bounds>) at utils.c:2125 #5 0x808f0dc in print_section_info (t=0x815d460, abfd=0x81716a8) at ../../gdb-5.0/gdb/exec.c:597 #6 0x808f13e in exec_files_info (t=0x10f94) at ../../gdb-5.0/gdb/exec.c:610 #7 0x808a397 in target_info (args=0x0, from_tty=1) at ../../gdb-5.0/gdb/target.c:1105 #8 0x809d65a in execute_command (p=0x815dd2c "", from_tty=1) at top.c:1550 #9 0x8077c0c in command_handler (command=0x815dd28 "") at event-top.c:519 #10 0x80783be in command_line_handler (rl=0x817e000 "\fà\027\b") at event-top.c:815 #11 0x800cc3c4 in rl_callback_read_char () at ../../readline-4.1/callback.c:116 #12 0x807724f in rl_callback_read_char_wrapper (client_data=0x0) at event-top.c:170 #13 0x8077ae6 in stdin_event_handler (error=0, client_data=0x10f94) at event-top.c:426 #14 0x80b6814 in handle_file_event (event_file_desc=69524) at ../../gdb-5.0/gdb/event-loop.c:742 #15 0x80b62eb in process_event () at ../../gdb-5.0/gdb/event-loop.c:377 #16 0x80b6329 in gdb_do_one_event (data=0x0) at ../../gdb-5.0/gdb/event-loop.c:414 #17 0x809c840 in catch_errors (func=0x80b6300 <gdb_do_one_event>, args=0x0, errstring=0x10f94 <Address 0x10f94 out of bounds>, mask=6) at top.c:619 #18 0x80b6360 in start_event_loop () at ../../gdb-5.0/gdb/event-loop.c:450 #19 0x80773d2 in cli_command_loop () at event-top.c:200 #20 0x804b636 in captured_command_loop (data=0x0) at ../../gdb-5.0/gdb/main.c:104 #21 0x809c840 in catch_errors (func=0x804b61c <captured_command_loop>, args=0x0, errstring=0x10f94 <Address 0x10f94 out of bounds>, mask=6) at top.c:619 #22 0x804c27b in captured_main (data=0x10f94) at ../../gdb-5.0/gdb/main.c:749 #23 0x809c840 in catch_errors (func=0x804b66c <captured_main>, args=0x8047880, errstring=0x10f94 <Address 0x10f94 out of bounds>, mask=6) at top.c:619 #24 0x804c2a7 in main (argc=69524, argv=0x10f94) at ../../gdb-5.0/gdb/main.c:761 #25 0x804b4bb in _start () -- SEGV occurs due to invalid address passed to strlen(). This value equals 0x10f94 and appears to be stored in p->the_bfd_section->name and returned by bfd_section_name (p->bfd, p->the_bfd_section) expr in `exec.c' :: print_section_info(). It equals to invalid `errstring' address that appears in higher stack frames since main().