+2020-01-26  Tom Tromey  <tom@tromey.com>
+
+       * xcoffread.c (xcoff_read_symtab): Remove prints.  Add assert.
+       * psymtab.c (psymtab_to_symtab): Print verbose "Reading"
+       messages.
+       * mdebugread.c (mdebug_read_symtab): Remove prints.
+       * dwarf2read.c (dwarf2_psymtab::read_symtab): Remove prints.  Add
+       assert.
+       * dbxread.c (dbx_read_symtab): Remove prints.  Add assert.
+
 2020-01-26  Tom Tromey  <tom@tromey.com>
 
        * xcoffread.c (this_symtab_psymtab, read_xcoff_symtab)
 
 static void
 dbx_read_symtab (legacy_psymtab *self, struct objfile *objfile)
 {
-  if (self->readin)
-    {
-      fprintf_unfiltered (gdb_stderr, "Psymtab for %s already read in.  "
-                         "Shouldn't happen.\n",
-                         self->filename);
-      return;
-    }
+  gdb_assert (!self->readin);
 
   if (LDSYMLEN (self) || self->number_of_dependencies)
     {
-      /* Print the message now, before reading the string table,
-         to avoid disconcerting pauses.  */
-      if (info_verbose)
-       {
-         printf_filtered ("Reading in symbols for %s...", self->filename);
-         gdb_flush (gdb_stdout);
-       }
-
       next_symbol_text_func = dbx_next_symbol_text;
 
       {
       /* Match with global symbols.  This only needs to be done once,
          after all of the symtabs and dependencies have been read in.   */
       scan_file_globals (objfile);
-
-      /* Finish up the debug error message.  */
-      if (info_verbose)
-       printf_filtered ("done.\n");
     }
 }
 
 
   struct dwarf2_per_objfile *dwarf2_per_objfile
     = get_dwarf2_per_objfile (objfile);
 
-  if (readin)
-    {
-      warning (_("bug: psymtab for %s is already read in."),
-              filename);
-    }
-  else
+  gdb_assert (!readin);
+  /* If this psymtab is constructed from a debug-only objfile, the
+     has_section_at_zero flag will not necessarily be correct.  We
+     can get the correct value for this flag by looking at the data
+     associated with the (presumably stripped) associated objfile.  */
+  if (objfile->separate_debug_objfile_backlink)
     {
-      if (info_verbose)
-       {
-         printf_filtered (_("Reading in symbols for %s..."),
-                          filename);
-         gdb_flush (gdb_stdout);
-       }
+      struct dwarf2_per_objfile *dpo_backlink
+       = get_dwarf2_per_objfile (objfile->separate_debug_objfile_backlink);
 
-      /* If this psymtab is constructed from a debug-only objfile, the
-        has_section_at_zero flag will not necessarily be correct.  We
-        can get the correct value for this flag by looking at the data
-        associated with the (presumably stripped) associated objfile.  */
-      if (objfile->separate_debug_objfile_backlink)
-       {
-         struct dwarf2_per_objfile *dpo_backlink
-           = get_dwarf2_per_objfile (objfile->separate_debug_objfile_backlink);
-
-         dwarf2_per_objfile->has_section_at_zero
-           = dpo_backlink->has_section_at_zero;
-       }
-
-      dwarf2_per_objfile->reading_partial_symbols = 0;
+      dwarf2_per_objfile->has_section_at_zero
+       = dpo_backlink->has_section_at_zero;
+    }
 
-      psymtab_to_symtab_1 (this);
+  dwarf2_per_objfile->reading_partial_symbols = 0;
 
-      /* Finish up the debug error message.  */
-      if (info_verbose)
-       printf_filtered (_("done.\n"));
-    }
+  psymtab_to_symtab_1 (this);
 
   process_cu_includes (dwarf2_per_objfile);
 }
 
 static void
 mdebug_read_symtab (legacy_psymtab *self, struct objfile *objfile)
 {
-  if (info_verbose)
-    {
-      printf_filtered (_("Reading in symbols for %s..."), self->filename);
-      gdb_flush (gdb_stdout);
-    }
-
   next_symbol_text_func = mdebug_next_symbol_text;
 
   psymtab_to_symtab_1 (objfile, self, self->filename);
   /* Match with global symbols.  This only needs to be done once,
      after all of the symtabs and dependencies have been read in.  */
   scan_file_globals (objfile);
-
-  if (info_verbose)
-    printf_filtered (_("done.\n"));
 }
 \f
 /* File-level interface functions.  */
 
     {
       scoped_restore decrementer = increment_reading_symtab ();
 
+      if (info_verbose)
+       {
+         printf_filtered (_("Reading in symbols for %s..."),
+                          pst->filename);
+         gdb_flush (gdb_stdout);
+       }
+
       pst->read_symtab (objfile);
+
+      /* Finish up the debug error message.  */
+      if (info_verbose)
+       printf_filtered (_("done.\n"));
     }
 
   return pst->compunit_symtab;
 
 static void
 xcoff_read_symtab (legacy_psymtab *self, struct objfile *objfile)
 {
-  if (self->readin)
-    {
-      fprintf_unfiltered
-       (gdb_stderr, "Psymtab for %s already read in.  Shouldn't happen.\n",
-        self->filename);
-      return;
-    }
+  gdb_assert (!self->readin);
 
   if (((struct symloc *) self->read_symtab_private)->numsyms != 0
       || self->number_of_dependencies)
     {
-      /* Print the message now, before reading the string table,
-         to avoid disconcerting pauses.  */
-      if (info_verbose)
-       {
-         printf_filtered ("Reading in symbols for %s...", self->filename);
-         gdb_flush (gdb_stdout);
-       }
-
       next_symbol_text_func = xcoff_next_symbol_text;
 
       xcoff_psymtab_to_symtab_1 (objfile, self);
       /* Match with global symbols.  This only needs to be done once,
          after all of the symtabs and dependencies have been read in.   */
       scan_file_globals (objfile);
-
-      /* Finish up the debug error message.  */
-      if (info_verbose)
-       printf_filtered ("done.\n");
     }
 }
 \f