}
if (coff_data (abfd)->link_info
- && ! coff_data (abfd)->link_info->relocatable
- && ! coff_data (abfd)->link_info->shared
+ && ! bfd_link_relocatable (coff_data (abfd)->link_info)
+ && ! bfd_link_pic (coff_data (abfd)->link_info)
&& strcmp (scnhdr_int->s_name, ".text") == 0)
{
/* By inference from looking at MS output, the 32 bit field
return sizeof (struct external_IMAGE_DEBUG_DIRECTORY);
}
-static CODEVIEW_INFO *
+CODEVIEW_INFO *
_bfd_XXi_slurp_codeview_record (bfd * abfd, file_ptr where, unsigned long length, CODEVIEW_INFO *cvinfo)
{
char buffer[256+1];
if (regions.resource_start != NULL)
fprintf (file, " Resources start at offset: %#03x\n",
(int) (regions.resource_start - regions.section_start));
-
+
free (regions.section_start);
return TRUE;
}
sizeof_tables_and_entries += 8;
sizeof_strings += (entry->name_id.name.len + 1) * 2;
-
+
if (entry->is_dir)
rsrc_compute_region_sizes (entry->value.directory);
else
{
asection * rsrc_sec = bfd_get_section_by_name (input, ".rsrc");
- if (rsrc_sec != NULL)
+ /* PR 18372 - skip discarded .rsrc sections. */
+ if (rsrc_sec != NULL && !discarded_section (rsrc_sec))
{
if (num_input_rsrc == max_num_input_rsrc)
{