* coffgen.c (coff_fix_symbol_name): Don't try to set up file
authorIan Lance Taylor <ian@airs.com>
Fri, 6 Oct 1995 22:35:01 +0000 (22:35 +0000)
committerIan Lance Taylor <ian@airs.com>
Fri, 6 Oct 1995 22:35:01 +0000 (22:35 +0000)
auxent if there isn't one.
(coff_write_symbols): If there is no file auxent, use SYMNMLEN
rather than FILNMLEN as the maximum name length.

bfd/ChangeLog
bfd/coffgen.c

index 728337e23b1354f46bcc2c3dc7779b737425f439..0ceebc3a2d43363bc72e83dd165f31c2f2af990b 100644 (file)
@@ -23,6 +23,11 @@ Fri Oct  6 12:24:47 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
 
 Fri Oct  6 12:04:02 1995  Ian Lance Taylor  <ian@cygnus.com>
 
+       * coffgen.c (coff_fix_symbol_name): Don't try to set up file
+       auxent if there isn't one.
+       (coff_write_symbols): If there is no file auxent, use SYMNMLEN
+       rather than FILNMLEN as the maximum name length.
+
        * coffcode.h (bfd_coff_backend_data): Add new field
        _bfd_coff_print_aux.
        (bfd_coff_print_aux): New static function.
index fe3676b0ad84e7408c76c0221fbdc62ba99758fd..0df46b715f5780cff64c737b48b1adaeb6270fba 100644 (file)
@@ -624,7 +624,8 @@ coff_fix_symbol_name (abfd, symbol, native, string_size_p,
     }
   name_length = strlen (name);
 
-  if (native->u.syment.n_sclass == C_FILE)
+  if (native->u.syment.n_sclass == C_FILE
+      && native->u.syment.n_numaux > 0)
     {
       strncpy (native->u.syment._n._n_name, ".file", SYMNMLEN);
       auxent = &(native + 1)->u.auxent;
@@ -652,7 +653,7 @@ coff_fix_symbol_name (abfd, symbol, native, string_size_p,
        }
     }
   else
-    {                          /* NOT A C_FILE SYMBOL */
+    {
       if (name_length <= SYMNMLEN)
        {
          /* This name will fit into the symbol neatly */
@@ -1024,7 +1025,8 @@ coff_write_symbols (abfd)
                 Don't write it into the string table.  */
              maxlen = name_length;
            }
-         else if (c_symbol->native->u.syment.n_sclass == C_FILE)
+         else if (c_symbol->native->u.syment.n_sclass == C_FILE
+                  && c_symbol->native->u.syment.n_numaux > 0)
            maxlen = FILNMLEN;
          else
            maxlen = SYMNMLEN;