diff --git a/gdb/cli/cli-cmds.c b/gdb/cli/cli-cmds.c index 945fd354d52..31b493e1c50 100644 --- a/gdb/cli/cli-cmds.c +++ b/gdb/cli/cli-cmds.c @@ -2050,8 +2050,8 @@ ambiguous_line_spec (gdb::array_view sals, static int cmp_symtabs (const symtab_and_line &sala, const symtab_and_line &salb) { - const char *dira = sala.symtab->dirname (); - const char *dirb = salb.symtab->dirname (); + const char *dira = sala.symtab->compunit ()->dirname (); + const char *dirb = salb.symtab->compunit ()->dirname (); int r; if (dira == NULL) diff --git a/gdb/source.c b/gdb/source.c index 020e94d4ae9..2025c93e93e 100644 --- a/gdb/source.c +++ b/gdb/source.c @@ -713,8 +713,8 @@ info_source_command (const char *ignore, int from_tty) cust = s->compunit (); gdb_printf (_("Current source file is %s\n"), s->filename); - if (s->dirname () != NULL) - gdb_printf (_("Compilation directory is %s\n"), s->dirname ()); + if (s->compunit ()->dirname () != NULL) + gdb_printf (_("Compilation directory is %s\n"), s->compunit ()->dirname ()); if (s->fullname) gdb_printf (_("Located in %s\n"), s->fullname); const std::vector *offsets; @@ -1180,7 +1180,7 @@ open_source_file (struct symtab *s) gdb::unique_xmalloc_ptr fullname (s->fullname); s->fullname = NULL; - scoped_fd fd = find_and_open_source (s->filename, s->dirname (), + scoped_fd fd = find_and_open_source (s->filename, s->compunit ()->dirname (), &fullname); if (fd.get () < 0) @@ -1192,9 +1192,9 @@ open_source_file (struct symtab *s) std::string srcpath; if (IS_ABSOLUTE_PATH (s->filename)) srcpath = s->filename; - else if (s->dirname () != nullptr) + else if (s->compunit ()->dirname () != nullptr) { - srcpath = s->dirname (); + srcpath = s->compunit ()->dirname (); srcpath += SLASH_STRING; srcpath += s->filename; } @@ -1268,10 +1268,11 @@ symtab_to_fullname (struct symtab *s) /* rewrite_source_path would be applied by find_and_open_source, we should report the pathname where GDB tried to find the file. */ - if (s->dirname () == NULL || IS_ABSOLUTE_PATH (s->filename)) + if (s->compunit ()->dirname () == nullptr + || IS_ABSOLUTE_PATH (s->filename)) fullname.reset (xstrdup (s->filename)); else - fullname.reset (concat (s->dirname (), SLASH_STRING, + fullname.reset (concat (s->compunit ()->dirname (), SLASH_STRING, s->filename, (char *) NULL)); s->fullname = rewrite_source_path (fullname.get ()).release (); diff --git a/gdb/symmisc.c b/gdb/symmisc.c index e8092e8af08..5d8d641fa27 100644 --- a/gdb/symmisc.c +++ b/gdb/symmisc.c @@ -249,9 +249,9 @@ dump_symtab_1 (struct symtab *symtab, struct ui_file *outfile) symtab_to_filename_for_display (symtab), host_address_to_string (symtab)); - if (symtab->dirname () != NULL) + if (symtab->compunit ()->dirname () != NULL) gdb_printf (outfile, "Compilation directory is %s\n", - symtab->dirname ()); + symtab->compunit ()->dirname ()); gdb_printf (outfile, "Read from object file %s (%s)\n", objfile_name (objfile), host_address_to_string (objfile)); diff --git a/gdb/symtab.h b/gdb/symtab.h index 25b4f7d2704..567c0fcce7c 100644 --- a/gdb/symtab.h +++ b/gdb/symtab.h @@ -1482,8 +1482,6 @@ struct symtab program_space *pspace () const; - const char *dirname () const; - /* Unordered chain of all filetabs in the compunit, with the exception that the "main" source file is the first entry in the list. */ @@ -1769,12 +1767,6 @@ symtab::objfile () const return this->compunit ()->objfile (); } -inline const char * -symtab::dirname () const -{ - return this->compunit ()->dirname (); -} - /* Return the language of CUST. */ extern enum language compunit_language (const struct compunit_symtab *cust);