From: Fred Fish Date: Fri, 17 Jul 1992 17:16:26 +0000 (+0000) Subject: * dwarfread.c (read_file_scope): Pass contents of AT_comp_dir X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d4902ab0a703784e3dfba614ad38deefa2541098;p=binutils-gdb.git * dwarfread.c (read_file_scope): Pass contents of AT_comp_dir to start_symtab as the directory name. * dwarfread.c (completedieinfo): Strip off any leading hostname portion of the AT_comp_dir attribute string. Gdb doesn't know what to do with them (FIXME). --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 67aa2301930..355011f7d7d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +Fri Jul 17 10:14:56 1992 Fred Fish (fnf@cygnus.com) + + * dwarfread.c (read_file_scope): Pass contents of AT_comp_dir + to start_symtab as the directory name. + * dwarfread.c (completedieinfo): Strip off any leading hostname + portion of the AT_comp_dir attribute string. Gdb doesn't know + what to do with them (FIXME). + Thu Jul 16 13:37:09 1992 Stu Grossman (grossman at cygnus.com) * breakpoint.c (commands_command): Simplify code a bit, remove diff --git a/gdb/dwarfread.c b/gdb/dwarfread.c index 9cdfada3ec9..38714e2f763 100644 --- a/gdb/dwarfread.c +++ b/gdb/dwarfread.c @@ -1643,7 +1643,7 @@ read_file_scope (dip, thisdie, enddie, objfile) utypes = (struct type **) xmalloc (numutypes * sizeof (struct type *)); back_to = make_cleanup (free, utypes); memset (utypes, 0, numutypes * sizeof (struct type *)); - start_symtab (dip -> at_name, NULL, dip -> at_low_pc); + start_symtab (dip -> at_name, dip -> at_comp_dir, dip -> at_low_pc); decode_line_numbers (lnbase); process_dies (thisdie + dip -> die_length, enddie, objfile); symtab = end_symtab (dip -> at_high_pc, 0, 0, objfile); @@ -3274,7 +3274,17 @@ completedieinfo (dip, objfile) dip -> at_name = diep; break; case AT_comp_dir: - dip -> at_comp_dir = diep; + /* For now, ignore any "hostname:" portion, since gdb doesn't + know how to deal with it. (FIXME). */ + dip -> at_comp_dir = strrchr (diep, ':'); + if (dip -> at_comp_dir != NULL) + { + dip -> at_comp_dir++; + } + else + { + dip -> at_comp_dir = diep; + } break; case AT_producer: dip -> at_producer = diep;