* cofflink.c (coff_link_input_bfd): Fail if a section with no
authorIan Lance Taylor <ian@airs.com>
Wed, 13 Sep 1995 17:29:05 +0000 (17:29 +0000)
committerIan Lance Taylor <ian@airs.com>
Wed, 13 Sep 1995 17:29:05 +0000 (17:29 +0000)
contents has relocs.
PR 7979.

bfd/ChangeLog
bfd/cofflink.c

index 699529c..4a76d99 100644 (file)
@@ -1,3 +1,8 @@
+Wed Sep 13 13:27:53 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * cofflink.c (coff_link_input_bfd): Fail if a section with no
+       contents has relocs.
+
 Thu Sep 12 12:45:34 1995  steve chamberlain  <sac@slash.cygnus.com>
 
        * coffcode.h (coff_compute_section_file_positions): Keep the
index ea99908..10c0d68 100644 (file)
@@ -1737,7 +1737,20 @@ coff_link_input_bfd (finfo, input_bfd)
       bfd_byte *contents;
 
       if ((o->flags & SEC_HAS_CONTENTS) == 0)
-       continue;
+       {
+         if ((o->flags & SEC_RELOC) != 0
+             && o->reloc_count != 0)
+           {
+             ((*_bfd_error_handler)
+              ("%s: relocs in section `%s', but it has no contents",
+               bfd_get_filename (input_bfd),
+               bfd_get_section_name (input_bfd, o)));
+             bfd_set_error (bfd_error_no_contents);
+             return false;
+           }
+
+         continue;
+       }
 
       if (coff_section_data (input_bfd, o) != NULL
          && coff_section_data (input_bfd, o)->contents != NULL)