]> Git Repo - binutils.git/blobdiff - gdb/xcoffread.c
Fri Apr 29 14:26:35 1994 Stan Shebs ([email protected])
[binutils.git] / gdb / xcoffread.c
index e4dd816d3ed7f06fe231b2a9d1541c9fbdac536e..de8f77ac46e1db2f24326a4508f1a269cea77823 100644 (file)
@@ -983,16 +983,32 @@ xcoff_next_symbol_text ()
   struct internal_syment symbol;
   static struct complaint msg =
     {"Unexpected symbol continuation", 0, 0};
+  char *retval;
 
   bfd_coff_swap_sym_in (current_objfile->obfd, raw_symbol, &symbol);
-  if (symbol->n_zeroes)
-    complain (&msg);
-  else if (symbol->n_sclass & 0x80)
-    return debugsec + symbol->n_offset;
+  if (symbol.n_zeroes)
+    {
+      complain (&msg);
+
+      /* Return something which points to '\0' and hope the symbol reading
+        code does something reasonable.  */
+      retval = "";
+    }
+  else if (symbol.n_sclass & 0x80)
+    {
+      retval = debugsec + symbol.n_offset;
+      raw_symbol += coff_data (current_objfile->obfd)->local_symesz;
+      ++symnum;
+    }
   else
-    complain (&msg);
-  raw_symbol += coff_data (current_objfile->obfd)->local_symesz;
-  ++symnum;
+    {
+      complain (&msg);
+
+      /* Return something which points to '\0' and hope the symbol reading
+        code does something reasonable.  */
+      retval = "";
+    }
+  return retval;
 }
 
 /* read the whole symbol table of a given bfd. */
@@ -1370,7 +1386,7 @@ function_entry_point:
 #endif
            continue;
          }
-         break;
+         continue;
 
        default :               /* all other XTY_XXXs */
          break;
This page took 0.025507 seconds and 4 git commands to generate.