diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 39585f0..0aca3d3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,15 @@
 2019-10-27  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.
+
+2019-10-27  Tom Tromey  <tom@tromey.com>
+
 	* xcoffread.c (this_symtab_psymtab, read_xcoff_symtab)
 	(xcoff_psymtab_to_symtab_1, xcoff_read_symtab)
 	(xcoff_start_psymtab, xcoff_end_psymtab, scan_xcoff_symtab): Use
diff --git a/gdb/dbxread.c b/gdb/dbxread.c
index ce04951..a288071 100644
--- a/gdb/dbxread.c
+++ b/gdb/dbxread.c
@@ -2119,24 +2119,10 @@
 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;
 
       {
@@ -2157,10 +2143,6 @@
       /* 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");
     }
 }
 
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 2408098..9209a4d 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -9472,41 +9472,23 @@
   struct dwarf2_per_objfile *dwarf2_per_objfile
     = get_dwarf2_per_objfile (objfile);
 
-  if (readin)
+  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)
     {
-      warning (_("bug: psymtab for %s is already read in."),
-	       filename);
+      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;
     }
-  else
-    {
-      if (info_verbose)
-	{
-	  printf_filtered (_("Reading in symbols for %s..."),
-			   filename);
-	  gdb_flush (gdb_stdout);
-	}
 
-      /* 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->reading_partial_symbols = 0;
 
-	  dwarf2_per_objfile->has_section_at_zero
-	    = dpo_backlink->has_section_at_zero;
-	}
-
-      dwarf2_per_objfile->reading_partial_symbols = 0;
-
-      psymtab_to_symtab_1 (this);
-
-      /* Finish up the debug error message.  */
-      if (info_verbose)
-	printf_filtered (_("done.\n"));
-    }
+  psymtab_to_symtab_1 (this);
 
   process_cu_includes (dwarf2_per_objfile);
 }
diff --git a/gdb/mdebugread.c b/gdb/mdebugread.c
index cf10a25..6fde729 100644
--- a/gdb/mdebugread.c
+++ b/gdb/mdebugread.c
@@ -277,12 +277,6 @@
 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);
@@ -290,9 +284,6 @@
   /* 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"));
 }
 
 /* File-level interface functions.  */
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index f0d1237..ee7f9dc 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -759,7 +759,18 @@
     {
       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;
diff --git a/gdb/xcoffread.c b/gdb/xcoffread.c
index f35e74a..9a63af6 100644
--- a/gdb/xcoffread.c
+++ b/gdb/xcoffread.c
@@ -1874,25 +1874,11 @@
 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);
@@ -1900,10 +1886,6 @@
       /* 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");
     }
 }
 
