]> Git Repo - binutils.git/blobdiff - gdb/source.c
Automatic date update in version.in
[binutils.git] / gdb / source.c
index 9d9ff4bbc3e993247afca3f8a0bcf20e091e29d1..d0f2d1c763523da801eb77736b7c141267ba25ad 100644 (file)
@@ -115,7 +115,8 @@ private:
   int m_line = 0;
 };
 
-static program_space_key<current_source_location> current_source_key;
+static const registry<program_space>::key<current_source_location>
+     current_source_key;
 
 /* Default number of lines to print with commands like "list".
    This is based on guessing how many long (i.e. more than chars_per_line
@@ -329,7 +330,7 @@ select_source_symtab (struct symtab *s)
       if (sal.symtab == NULL)
        /* We couldn't find the location of `main', possibly due to missing
           line number info, fall back to line 1 in the corresponding file.  */
-       loc->set (symbol_symtab (bsym.symbol), 1);
+       loc->set (bsym.symbol->symtab (), 1);
       else
        loc->set (sal.symtab, std::max (sal.line - (lines_to_list - 1), 1));
       return;
@@ -1145,15 +1146,7 @@ find_and_open_source (const char *filename,
         helpful if part of the compilation directory was removed,
         e.g. using gcc's -fdebug-prefix-map, and we have added the missing
         prefix to source_path.  */
-      std::string cdir_filename (dirname);
-
-      /* Remove any trailing directory separators.  */
-      while (IS_DIR_SEPARATOR (cdir_filename.back ()))
-       cdir_filename.pop_back ();
-
-      /* Add our own directory separator.  */
-      cdir_filename.append (SLASH_STRING);
-      cdir_filename.append (filename_start);
+      std::string cdir_filename = path_join (dirname, filename_start);
 
       result = openp (path, OPF_SEARCH_IN_PATH | OPF_RETURN_REALPATH,
                      cdir_filename.c_str (), OPEN_MODE, fullname);
@@ -1202,7 +1195,8 @@ open_source_file (struct symtab *s)
              srcpath += s->filename;
            }
 
-         const struct bfd_build_id *build_id = build_id_bfd_get (ofp->obfd);
+         const struct bfd_build_id *build_id
+           = build_id_bfd_get (ofp->obfd.get ());
 
          /* Query debuginfod for the source file.  */
          if (build_id != nullptr && !srcpath.empty ())
@@ -1299,7 +1293,7 @@ symtab_to_filename_for_display (struct symtab *symtab)
   else if (filename_display_string == filename_display_relative)
     return symtab->filename;
   else
-    internal_error (__FILE__, __LINE__, _("invalid filename_display_string"));
+    internal_error (_("invalid filename_display_string"));
 }
 
 \f
This page took 0.027701 seconds and 4 git commands to generate.