bfd/
[deliverable/binutils-gdb.git] / bfd / elf32-i370.c
index 80c45f6fd1fac93ff6783f42a6f83aac7f959ee8..57854c88edd2662cb4420925327acd88e4bc731b 100644 (file)
@@ -1246,19 +1246,21 @@ i370_elf_relocate_section (output_bfd, info, input_bfd, input_section,
            }
          else if (h->root.type == bfd_link_hash_undefweak)
            relocation = 0;
-         else if (info->shared
+         else if (info->unresolved_syms_in_objects == RM_IGNORE
                   && ELF_ST_VISIBILITY (h->other) == STV_DEFAULT)
            relocation = 0;
          else
            {
-             (*info->callbacks->undefined_symbol) (info,
-                                                   h->root.root.string,
-                                                   input_bfd,
-                                                   input_section,
-                                                   rel->r_offset,
-                                                   TRUE);
-             ret = FALSE;
-             continue;
+             if ((*info->callbacks->undefined_symbol)
+                 (info, h->root.root.string, input_bfd,
+                  input_section, rel->r_offset,
+                  (info->unresolved_syms_in_objects == RM_GENERATE_ERROR
+                   || ELF_ST_VISIBILITY (h->other))))
+               {
+                 ret = FALSE;
+                 continue;
+               }
+             relocation = 0;
            }
        }
 
This page took 0.025254 seconds and 4 git commands to generate.