mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 10:35:12 +08:00
* dwarf2read.c (dwarf_decode_lines): Use the complete filename
when creating include psymtabs.
This commit is contained in:
parent
a9df7c4413
commit
5b5464adf1
@ -1,3 +1,8 @@
|
||||
2004-03-09 Joel Brobecker <brobecker@adacore.com>
|
||||
|
||||
* dwarf2read.c (dwarf_decode_lines): Use the complete filename
|
||||
when creating include psymtabs.
|
||||
|
||||
2005-03-08 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* environ.h (struct environ): Rename to ...
|
||||
|
@ -6622,9 +6622,29 @@ dwarf_decode_lines (struct line_header *lh, char *comp_dir, bfd *abfd,
|
||||
for (file_index = 0; file_index < lh->num_file_names; file_index++)
|
||||
if (lh->file_names[file_index].included_p == 1)
|
||||
{
|
||||
char *include_name = lh->file_names [file_index].name;
|
||||
const struct file_entry fe = lh->file_names [file_index];
|
||||
char *include_name = fe.name;
|
||||
char *dir_name = NULL;
|
||||
char *pst_filename = pst->filename;
|
||||
|
||||
if (strcmp (include_name, pst->filename) != 0)
|
||||
if (fe.dir_index)
|
||||
dir_name = lh->include_dirs[fe.dir_index - 1];
|
||||
|
||||
if (!IS_ABSOLUTE_PATH (include_name) && dir_name != NULL)
|
||||
{
|
||||
include_name =
|
||||
concat (dir_name, SLASH_STRING, include_name, NULL);
|
||||
make_cleanup (xfree, include_name);
|
||||
}
|
||||
|
||||
if (!IS_ABSOLUTE_PATH (pst_filename) && pst->dirname != NULL)
|
||||
{
|
||||
pst_filename =
|
||||
concat (pst->dirname, SLASH_STRING, pst_filename, NULL);
|
||||
make_cleanup (xfree, pst_filename);
|
||||
}
|
||||
|
||||
if (strcmp (include_name, pst_filename) != 0)
|
||||
dwarf2_create_include_psymtab (include_name, pst, objfile);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user