PR linker/4844
authorNick Clifton <nickc@redhat.com>
Thu, 4 Oct 2007 13:55:25 +0000 (13:55 +0000)
committerNick Clifton <nickc@redhat.com>
Thu, 4 Oct 2007 13:55:25 +0000 (13:55 +0000)
* emultempl/pep.em (pep_find_data_imports): Issue a warning message if auto importing is triggered without
  --enable-auto-import having been specified on the command line.
* emultempl/pe.em (pe_find_data_imports): Likewise.

ld/ChangeLog
ld/emultempl/pe.em
ld/emultempl/pep.em

index dc5f02a..a611417 100644 (file)
@@ -1,5 +1,11 @@
 2007-10-04  Nick Clifton  <nickc@redhat.com>
 
+       PR linker/4844
+       * emultempl/pep.em (pep_find_data_imports): Issue a warning
+       message if auto importing is triggered without
+       --enable-auto-import having been specified on the command line.
+       * emultempl/pe.em (pe_find_data_imports): Likewise.
+
        PR linker/5097
        * emultempl/armelf.em (arm_elf_finish): Fix spelling typo.
 
index 43ce8e9..503f79e 100644 (file)
@@ -920,8 +920,20 @@ pe_find_data_imports (void)
              int nsyms, symsize, i;
 
              if (link_info.pei386_auto_import == -1)
-               info_msg (_("Info: resolving %s by linking to %s (auto-import)\n"),
-                         undef->root.string, buf);
+               {
+                 static bfd_boolean warned = FALSE;
+
+                 info_msg (_("Info: resolving %s by linking to %s (auto-import)\n"),
+                           undef->root.string, buf);
+
+                 /* PR linker/4844.  */
+                 if (! warned)
+                   {
+                     warned = TRUE;
+                     einfo (_("%P: warning: auto-importing has been activated without --enable-auto-import specified on the command line.\n\
+This should work unless it involves constant data structures referencing symbols from auto-imported DLLs."));
+                   }
+               }
 
              symsize = bfd_get_symtab_upper_bound (b);
              symbols = (asymbol **) xmalloc (symsize);
index 9e27e15..36b4f61 100644 (file)
@@ -884,8 +884,20 @@ pep_find_data_imports (void)
              int nsyms, symsize, i;
 
              if (link_info.pei386_auto_import == -1)
-               info_msg (_("Info: resolving %s by linking to %s (auto-import)\n"),
-                         undef->root.string, buf);
+               {
+                 static bfd_boolean warned = FALSE;
+
+                 info_msg (_("Info: resolving %s by linking to %s (auto-import)\n"),
+                           undef->root.string, buf);
+
+                 /* PR linker/4844.  */
+                 if (! warned)
+                   {
+                     warned = TRUE;
+                     einfo (_("%P: warning: auto-importing has been activated without --enable-auto-import specified on the command line.\n\
+This should work unless it involves constant data structures referencing symbols from auto-imported DLLs."));
+                   }
+               }
 
              symsize = bfd_get_symtab_upper_bound (b);
              symbols = xmalloc (symsize);