1 2004-11-24 Andrew Cagney <cagney@gnu.org>
3 * printcmd.c (build_address_symbolic): Find a section for the
6 Index: gdb-6.8.50.20081128/gdb/printcmd.c
7 ===================================================================
8 --- gdb-6.8.50.20081128.orig/gdb/printcmd.c 2008-12-04 01:36:05.000000000 +0100
9 +++ gdb-6.8.50.20081128/gdb/printcmd.c 2008-12-04 01:37:18.000000000 +0100
10 @@ -616,6 +616,14 @@ build_address_symbolic (CORE_ADDR addr,
11 addr = overlay_mapped_address (addr, section);
14 + /* To ensure that the symbol returned belongs to the correct setion
15 + (and that the last [random] symbol from the previous section
16 + isn't returned) try to find the section containing PC. First try
17 + the overlay code (which by default returns NULL); and second try
18 + the normal section code (which almost always succeeds). */
19 + section = find_pc_overlay (addr);
20 + if (section == NULL)
21 + section = find_pc_section (addr);
23 /* First try to find the address in the symbol table, then
24 in the minsyms. Take the closest one. */