* coffgen.c (coff_renumber_symbols): Sort common symbols with
[binutils-gdb.git] / bfd / coffgen.c
index 4bce970a83660f58db00c1da533f6ae83c7aaf0e..cb9b2ba630cc636c2b6439b2be041f50adf7af6e 100644 (file)
@@ -634,16 +634,18 @@ coff_renumber_symbols (bfd_ptr, first_undef)
     for (i = 0; i < symbol_count; i++)
       if ((symbol_ptr_ptr[i]->flags & BSF_NOT_AT_END) != 0
          || (!bfd_is_und_section (symbol_ptr_ptr[i]->section)
+             && !bfd_is_com_section (symbol_ptr_ptr[i]->section)
              && ((symbol_ptr_ptr[i]->flags & (BSF_GLOBAL | BSF_FUNCTION))
                  != BSF_GLOBAL)))
        *newsyms++ = symbol_ptr_ptr[i];
 
     for (i = 0; i < symbol_count; i++)
       if (!bfd_is_und_section (symbol_ptr_ptr[i]->section)
-         && ((symbol_ptr_ptr[i]->flags & (BSF_GLOBAL
-                                          | BSF_NOT_AT_END
-                                          | BSF_FUNCTION))
-             == BSF_GLOBAL))
+         && (bfd_is_com_section (symbol_ptr_ptr[i]->section)
+             || ((symbol_ptr_ptr[i]->flags & (BSF_GLOBAL
+                                              | BSF_NOT_AT_END
+                                              | BSF_FUNCTION))
+                 == BSF_GLOBAL)))
        *newsyms++ = symbol_ptr_ptr[i];
 
     *first_undef = newsyms - bfd_ptr->outsymbols;