Step down from being global maintainer.
[deliverable/binutils-gdb.git] / bfd / elf32-m32c.c
index 88b8dacac18f62e2999e6e54d9e9e34f87a77941..b0428eb92ec213b3b893f56f78f0daee267cb394 100644 (file)
@@ -1,6 +1,5 @@
 /* M16C/M32C specific support for 32-bit ELF.
-   Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-   Free Software Foundation, Inc.
+   Copyright (C) 2005-2014 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -621,6 +620,10 @@ m32c_elf_check_relocs
          while (h->root.type == bfd_link_hash_indirect
                 || h->root.type == bfd_link_hash_warning)
            h = (struct elf_link_hash_entry *) h->root.u.i.link;
+
+         /* PR15323, ref flags aren't set for references in the same
+            object.  */
+         h->root.non_ir_ref = 1;
        }
 
       switch (ELF32_R_TYPE (rel->r_info))
@@ -917,32 +920,78 @@ dump_symtab (bfd * abfd, void *internal_syms, void *external_syms)
     {
       switch (ELF_ST_TYPE (isym->st_info))
        {
-       case STT_FUNC: st_info_str = "STT_FUNC";
-       case STT_SECTION: st_info_str = "STT_SECTION";
-       case STT_FILE: st_info_str = "STT_FILE";
-       case STT_OBJECT: st_info_str = "STT_OBJECT";
-       case STT_TLS: st_info_str = "STT_TLS";
-       default: st_info_str = "";
+       case STT_FUNC:
+         st_info_str = "STT_FUNC";
+         break;
+
+       case STT_SECTION:
+         st_info_str = "STT_SECTION";
+         break;
+
+       case STT_FILE:
+         st_info_str = "STT_FILE";
+         break;
+
+       case STT_OBJECT:
+         st_info_str = "STT_OBJECT";
+         break;
+
+       case STT_TLS:
+         st_info_str = "STT_TLS";
+         break;
+
+       default:
+         st_info_str = "";
        }
+
       switch (ELF_ST_BIND (isym->st_info))
        {
-       case STB_LOCAL: st_info_stb_str = "STB_LOCAL";
-       case STB_GLOBAL: st_info_stb_str = "STB_GLOBAL";
-       default: st_info_stb_str = "";
+       case STB_LOCAL:
+         st_info_stb_str = "STB_LOCAL";
+         break;
+
+       case STB_GLOBAL:
+         st_info_stb_str = "STB_GLOBAL";
+         break;
+
+       default:
+         st_info_stb_str = "";
        }
+
       switch (ELF_ST_VISIBILITY (isym->st_other))
        {
-       case STV_DEFAULT: st_other_str = "STV_DEFAULT";
-       case STV_INTERNAL: st_other_str = "STV_INTERNAL";
-       case STV_PROTECTED: st_other_str = "STV_PROTECTED";
-       default: st_other_str = "";
+       case STV_DEFAULT:
+         st_other_str = "STV_DEFAULT";
+         break;
+
+       case STV_INTERNAL:
+         st_other_str = "STV_INTERNAL";
+         break;
+
+       case STV_PROTECTED:
+         st_other_str = "STV_PROTECTED";
+         break;
+
+       default:
+         st_other_str = "";
        }
+
       switch (isym->st_shndx)
        {
-       case SHN_ABS: st_shndx_str = "SHN_ABS";
-       case SHN_COMMON: st_shndx_str = "SHN_COMMON";
-       case SHN_UNDEF: st_shndx_str = "SHN_UNDEF";
-       default: st_shndx_str = "";
+       case SHN_ABS:
+         st_shndx_str = "SHN_ABS";
+         break;
+
+       case SHN_COMMON:
+         st_shndx_str = "SHN_COMMON";
+         break;
+
+       case SHN_UNDEF:
+         st_shndx_str = "SHN_UNDEF";
+         break;
+
+       default:
+         st_shndx_str = "";
        }
 
       printf ("isym = %p st_value = %lx st_size = %lx st_name = (%lu) %s "
This page took 0.024096 seconds and 4 git commands to generate.