gdb/rs6000: Use default gdbarch methods where possible
[deliverable/binutils-gdb.git] / gdb / symfile.c
index 61483824f63409b6fbf0fbd91908add235e35e9b..5736666506fe3bae8c82eeba7d21cbebb07dcdc4 100644 (file)
@@ -2427,19 +2427,12 @@ remove_symbol_file_command (const char *args, int from_tty)
 void
 reread_symbols (void)
 {
-  struct objfile *objfile;
   long new_modtime;
   struct stat new_statbuf;
   int res;
   std::vector<struct objfile *> new_objfiles;
 
-  /* With the addition of shared libraries, this should be modified,
-     the load time should be saved in the partial symbol tables, since
-     different tables may come from different source files.  FIXME.
-     This routine should then walk down each partial symbol table
-     and see if the symbol table that it originates from has been changed.  */
-
-  for (objfile = object_files; objfile; objfile = objfile->next)
+  for (objfile *objfile : current_program_space->objfiles ())
     {
       if (objfile->obfd == NULL)
        continue;
@@ -2556,7 +2549,7 @@ reread_symbols (void)
          objfile->sections = NULL;
          objfile->compunit_symtabs = NULL;
          objfile->template_symbols = NULL;
-         objfile->static_links = NULL;
+         objfile->static_links.reset (nullptr);
 
          /* obstack_init also initializes the obstack so it is
             empty.  We could use obstack_specify_allocation but
@@ -2580,7 +2573,6 @@ reread_symbols (void)
          objfile_set_sym_fns (objfile, find_sym_fns (objfile->obfd));
 
          build_objfile_section_table (objfile);
-         terminate_minimal_symbol_table (objfile);
 
          /* We use the same section offsets as from last time.  I'm not
             sure whether that is always correct for shared libraries.  */
@@ -2795,8 +2787,8 @@ allocate_symtab (struct compunit_symtab *cust, const char *filename)
     = OBSTACK_ZALLOC (&objfile->objfile_obstack, struct symtab);
 
   symtab->filename
-    = (const char *) bcache (filename, strlen (filename) + 1,
-                            objfile->per_bfd->filename_cache);
+    = ((const char *) objfile->per_bfd->filename_cache.insert
+       (filename, strlen (filename) + 1));
   symtab->fullname = NULL;
   symtab->language = deduce_language_from_filename (filename);
 
@@ -2902,12 +2894,6 @@ clear_symtab_users (symfile_add_flags add_flags)
   clear_pc_function_cache ();
   gdb::observers::new_objfile.notify (NULL);
 
-  /* Clear globals which might have pointed into a removed objfile.
-     FIXME: It's not clear which of these are supposed to persist
-     between expressions and which ought to be reset each time.  */
-  expression_context_block = NULL;
-  innermost_block.reset ();
-
   /* Varobj may refer to old symbols, perform a cleanup.  */
   varobj_invalidate ();
 
This page took 0.024893 seconds and 4 git commands to generate.