aboutsummaryrefslogtreecommitdiff
path: root/gdb/symtab.c
diff options
context:
space:
mode:
authorCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>2007-10-24 13:25:16 +0000
committerCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>2007-10-24 13:25:16 +0000
commit51432cca1367d4ff610ed2d7c3fa64ba335eaa15 (patch)
tree934db9cc8120021bac23ed3e68153a81dd5ac70c /gdb/symtab.c
parent7d4c5211d241a38e569f69d1b99c8ec3cc11d3a2 (diff)
downloadgdb-51432cca1367d4ff610ed2d7c3fa64ba335eaa15.zip
gdb-51432cca1367d4ff610ed2d7c3fa64ba335eaa15.tar.gz
gdb-51432cca1367d4ff610ed2d7c3fa64ba335eaa15.tar.bz2
* symtab.c (find_line_symtab): scan through psymtabs
when exact_match is zero.
Diffstat (limited to 'gdb/symtab.c')
-rw-r--r--gdb/symtab.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/symtab.c b/gdb/symtab.c
index eeddddd..966bd73 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -2281,12 +2281,20 @@ find_line_symtab (struct symtab *symtab, int line, int *index, int *exact_match)
struct objfile *objfile;
struct symtab *s;
+ struct partial_symtab *p;
if (best_index >= 0)
best = best_linetable->item[best_index].line;
else
best = 0;
+ ALL_PSYMTABS (objfile, p)
+ {
+ if (strcmp (symtab->filename, p->filename) != 0)
+ continue;
+ PSYMTAB_TO_SYMTAB (p);
+ }
+
ALL_SYMTABS (objfile, s)
{
struct linetable *l;