* Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
[deliverable/binutils-gdb.git] / bfd / srec.c
index 3b1e0e73d2aac15d1eb0ccd8fce0616546fad556..e77ba407a51e776292459679b83ffbfc399a372e 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD back-end for s-record objects.
-   Copyright 1990, 91, 92, 93, 94, 95, 96, 97, 1998
+   Copyright 1990, 91, 92, 93, 94, 95, 96, 97, 98, 1999
    Free Software Foundation, Inc.
    Written by Steve Chamberlain of Cygnus Support <sac@cygnus.com>.
 
@@ -387,7 +387,7 @@ srec_scan (abfd)
                     && (c == ' ' || c == '\t'))
                ;
 
-             if (c == '\n')
+             if (c == '\n' || c == '\r')
                break;
 
              if (c == EOF)
@@ -469,14 +469,14 @@ srec_scan (abfd)
            }
          while (c == ' ' || c == '\t');
 
-         if (c != '\n')
+         if (c == '\n')
+           ++lineno;
+         else if (c != '\r')
            {
              srec_bad_byte (abfd, lineno, c, error);
              goto error_return;
            }
 
-         ++lineno;
-
          break;
     
        case 'S':
@@ -643,6 +643,9 @@ srec_object_p (abfd)
       || ! srec_scan (abfd))
     return NULL;
 
+  if (abfd->symcount > 0)
+    abfd->flags |= HAS_SYMS;
+
   return abfd->xvec;
 }
 
@@ -670,6 +673,9 @@ symbolsrec_object_p (abfd)
       || ! srec_scan (abfd))
     return NULL;
 
+  if (abfd->symcount > 0)
+    abfd->flags |= HAS_SYMS;
+
   return abfd->xvec;
 }
 
@@ -865,7 +871,7 @@ srec_set_section_contents (abfd, section, location, offset, bytes_to_do)
 
        }
       else if ((section->lma + offset + bytes_to_do - 1) <= 0xffffff
-              && tdata->type < 2)
+              && tdata->type <= 2)
        {
          tdata->type = 2;
        }
@@ -1059,7 +1065,8 @@ srec_write_symbols (abfd)
       for (i = 0; i < count; i++)
        {
          asymbol *s = table[i];
-         if (! bfd_is_local_label (abfd, s))
+         if (! bfd_is_local_label (abfd, s)
+             && (s->flags & BSF_DEBUGGING) == 0)
            {
              /* Just dump out non debug symbols */
              bfd_size_type l;
@@ -1132,8 +1139,8 @@ symbolsrec_write_object_contents (abfd)
 /*ARGSUSED*/
 static int
 srec_sizeof_headers (abfd, exec)
-     bfd *abfd;
-     boolean exec;
+     bfd *abfd ATTRIBUTE_UNUSED;
+     boolean exec ATTRIBUTE_UNUSED;
 {
   return 0;
 }
@@ -1202,7 +1209,7 @@ srec_get_symtab (abfd, alocation)
 /*ARGSUSED*/
 static void
 srec_get_symbol_info (ignore_abfd, symbol, ret)
-     bfd *ignore_abfd;
+     bfd *ignore_abfd ATTRIBUTE_UNUSED;
      asymbol *symbol;
      symbol_info *ret;
 {
@@ -1212,7 +1219,7 @@ srec_get_symbol_info (ignore_abfd, symbol, ret)
 /*ARGSUSED*/
 static void
 srec_print_symbol (ignore_abfd, afile, symbol, how)
-     bfd *ignore_abfd;
+     bfd *ignore_abfd ATTRIBUTE_UNUSED;
      PTR afile;
      asymbol *symbol;
      bfd_print_symbol_type how;
@@ -1255,6 +1262,7 @@ srec_print_symbol (ignore_abfd, afile, symbol, how)
 #define srec_bfd_get_relocated_section_contents \
   bfd_generic_get_relocated_section_contents
 #define srec_bfd_relax_section bfd_generic_relax_section
+#define srec_bfd_gc_sections bfd_generic_gc_sections
 #define srec_bfd_link_hash_table_create _bfd_generic_link_hash_table_create
 #define srec_bfd_link_add_symbols _bfd_generic_link_add_symbols
 #define srec_bfd_final_link _bfd_generic_final_link
This page took 0.043762 seconds and 4 git commands to generate.