OSDN Git Service

include/
authorAlan Modra <amodra@bigpond.net.au>
Sun, 20 Feb 2005 14:59:07 +0000 (14:59 +0000)
committerAlan Modra <amodra@bigpond.net.au>
Sun, 20 Feb 2005 14:59:07 +0000 (14:59 +0000)
* xtensa-isa-internal.h (xtensa_length_decode_fn): Warning fix.
* xtensa-isa.h (xtensa_insnbuf_to_chars): Likewise.
(xtensa_insnbuf_from_chars, xtensa_isa_length_from_chars): Likewise.
include/coff/
* xcoff.h (struct xcoff_loader_info): Warning fix.
bfd/
* bfd-in.h (bfd_elf_bfd_from_remote_memory): Warning fix.
* coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Likewise.
* coff-rs6000.c (xcoff_write_armap_big): Warning fixes.  Remove
useless assignments.
(xcoff_write_archive_contents_big): Likewise.
(_bfd_xcoff_put_ldsymbol_name): Likewise.
* coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
* coffgen.c (coff_write_symbols): Make "written" a bfd_vma.
* cofflink.c (process_embedded_commands): Warning fixes.
* cpu-arm.c: Delete unnecessary prototypes.  Convert to C90.
Warning fixes.
* dwarf2.c: Warning fixes.
* elf-bfd.h: Likewise.
* elf-eh-frame.c: Likewise.
* elf-strtab.c: Likewise.
* elf.c: Likewise.
* elf32-m68k.c: Likewise.
* elf32-ppc.c: Likewise.
* elf32-sh-symbian.c: Likewise.
* elf32-sh.c: Delete unnecessary prototypes.  Warning fixes.
* elf64-sh64.c: Likewise.
* peicode.h: Likewise.
* elf64-mmix.c: Warning fixes.
* elfcode.h: Likewise.
* elfxx-mips.c: Likewise.
* libbfd-in.h: Likewise.
* libbfd.c: Likewise.
* mach-o.c: Likewise.
* merge.c: Likewise.
* mmo.c: Likewise.
* opncls.c: Likewise.
* pef.c: Likewise.
* srec.c: Likewise.
* vms-hdr.c: Likewise.
* vms-tir.c: Likewise.
* xtensa-isa.c: Likewise.
* xtensa-modules.c: Likewise.
* xsym.c: Likewise.
(pstrcmp): Use correct choice of string lengths.  Fix return value.
(bfd_sym_module_name): Correct string length.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.

42 files changed:
bfd/ChangeLog
bfd/bfd-in.h
bfd/bfd-in2.h
bfd/coff-m68k.c
bfd/coff-rs6000.c
bfd/coff64-rs6000.c
bfd/coffgen.c
bfd/cofflink.c
bfd/cpu-arm.c
bfd/dwarf2.c
bfd/elf-bfd.h
bfd/elf-eh-frame.c
bfd/elf-strtab.c
bfd/elf.c
bfd/elf32-m68k.c
bfd/elf32-ppc.c
bfd/elf32-sh-symbian.c
bfd/elf32-sh.c
bfd/elf64-mmix.c
bfd/elf64-sh64.c
bfd/elfcode.h
bfd/elfxx-mips.c
bfd/libbfd-in.h
bfd/libbfd.c
bfd/libbfd.h
bfd/mach-o.c
bfd/merge.c
bfd/mmo.c
bfd/opncls.c
bfd/pef.c
bfd/peicode.h
bfd/srec.c
bfd/vms-hdr.c
bfd/vms-tir.c
bfd/xsym.c
bfd/xtensa-isa.c
bfd/xtensa-modules.c
include/ChangeLog
include/coff/ChangeLog
include/coff/xcoff.h
include/xtensa-isa-internal.h
include/xtensa-isa.h

index 0b2e704..7729e55 100644 (file)
@@ -1,3 +1,52 @@
+2005-02-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * bfd-in.h (bfd_elf_bfd_from_remote_memory): Warning fix.
+       * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Likewise.
+       * coff-rs6000.c (xcoff_write_armap_big): Warning fixes.  Remove
+       useless assignments.
+       (xcoff_write_archive_contents_big): Likewise.
+       (_bfd_xcoff_put_ldsymbol_name): Likewise.
+       * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
+       * coffgen.c (coff_write_symbols): Make "written" a bfd_vma.
+       * cofflink.c (process_embedded_commands): Warning fixes.
+       * cpu-arm.c: Delete unnecessary prototypes.  Convert to C90.
+       Warning fixes.
+       * dwarf2.c: Warning fixes.
+       * elf-bfd.h: Likewise.
+       * elf-eh-frame.c: Likewise.
+       * elf-strtab.c: Likewise.
+       * elf.c: Likewise.
+       * elf32-m68k.c: Likewise.
+       * elf32-ppc.c: Likewise.
+       * elf32-sh-symbian.c: Likewise.
+       * elf32-sh.c: Delete unnecessary prototypes.  Warning fixes.
+       * elf64-sh64.c: Likewise.
+       * peicode.h: Likewise.
+       * elf64-mmix.c: Warning fixes.
+       * elfcode.h: Likewise.
+       * elfxx-mips.c: Likewise.
+       * libbfd-in.h: Likewise.
+       * libbfd.c: Likewise.
+       * mach-o.c: Likewise.
+       * merge.c: Likewise.
+       * mmo.c: Likewise.
+       * opncls.c: Likewise.
+       * pef.c: Likewise.
+       * srec.c: Likewise.
+       * vms-hdr.c: Likewise.
+       * vms-tir.c: Likewise.
+       * xtensa-isa.c: Likewise.
+       * xtensa-modules.c: Likewise.
+       * xsym.c: Likewise.
+       (pstrcmp): Use correct choice of string lengths.  Fix return value.
+       (bfd_sym_module_name): Correct string length.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2005-02-18  Alan Modra  <amodra@bigpond.net.au>
+
+       * coffgen.c (coff_write_symbols): Make "written" a bfd_vma.
+
 2005-02-17  Alexandre Oliva  <aoliva@redhat.com>
 
        * elf32-frv.c (elf32_frv_relocate_section): Remove warning from
index 033db48..37c6386 100644 (file)
@@ -681,7 +681,7 @@ extern int bfd_get_elf_phdrs
    the remote memory.  */
 extern bfd *bfd_elf_bfd_from_remote_memory
   (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep,
-   int (*target_read_memory) (bfd_vma vma, char *myaddr, int len));
+   int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr, int len));
 
 /* Return the arch_size field of an elf bfd, or -1 if not elf.  */
 extern int bfd_get_arch_size
index c05e7d7..930c242 100644 (file)
@@ -688,7 +688,7 @@ extern int bfd_get_elf_phdrs
    the remote memory.  */
 extern bfd *bfd_elf_bfd_from_remote_memory
   (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep,
-   int (*target_read_memory) (bfd_vma vma, char *myaddr, int len));
+   int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr, int len));
 
 /* Return the arch_size field of an elf bfd, or -1 if not elf.  */
 extern int bfd_get_arch_size
index 0947811..c1be3ee 100644 (file)
@@ -1,6 +1,6 @@
 /* BFD back-end for Motorola 68000 COFF binaries.
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999,
-   2000, 2001, 2002, 2003
+   2000, 2001, 2002, 2003, 2005
    Free Software Foundation, Inc.
    Written by Cygnus Support.
 
@@ -510,7 +510,7 @@ bfd_m68k_coff_create_embedded_relocs (abfd, info, datasec, relsec, errmsg)
                  (irel->r_vaddr - datasec->vma + datasec->output_offset), p);
       memset (p + 4, 0, 8);
       if (targetsec != NULL)
-       strncpy (p + 4, targetsec->output_section->name, 8);
+       strncpy ((char *) p + 4, targetsec->output_section->name, 8);
     }
 
   return TRUE;
index 1257fbb..7b2b16b 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD back-end for IBM RS/6000 "XCOFF" files.
-   Copyright 1990-1999, 2000, 2001, 2002, 2003, 2004
+   Copyright 1990-1999, 2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    FIXME: Can someone provide a transliteration of this name into ASCII?
    Using the following chars caused a compiler warning on HIUX (so I replaced
@@ -1849,8 +1849,8 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx)
   if (sym_32)
     {
       struct xcoff_ar_hdr_big *hdr;
-      bfd_byte *symbol_table;
-      bfd_byte *st;
+      char *symbol_table;
+      char *st;
       file_ptr fileoff;
 
       bfd_vma symbol_table_size =
@@ -1860,8 +1860,7 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx)
        + 8 * sym_32
        + str_32 + (str_32 & 1);
 
-      symbol_table = NULL;
-      symbol_table = (bfd_byte *) bfd_zmalloc (symbol_table_size);
+      symbol_table = bfd_zmalloc (symbol_table_size);
       if (symbol_table == NULL)
        return FALSE;
 
@@ -1941,7 +1940,6 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx)
       bfd_bwrite (symbol_table, symbol_table_size, abfd);
 
       free (symbol_table);
-      symbol_table = NULL;
 
       prevoff = nextoff;
       nextoff = nextoff + symbol_table_size;
@@ -1952,8 +1950,8 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx)
   if (sym_64)
     {
       struct xcoff_ar_hdr_big *hdr;
-      bfd_byte *symbol_table;
-      bfd_byte *st;
+      char *symbol_table;
+      char *st;
       file_ptr fileoff;
 
       bfd_vma symbol_table_size =
@@ -1963,8 +1961,7 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx)
        + 8 * sym_64
        + str_64 + (str_64 & 1);
 
-      symbol_table = NULL;
-      symbol_table = (bfd_byte *) bfd_zmalloc (symbol_table_size);
+      symbol_table = bfd_zmalloc (symbol_table_size);
       if (symbol_table == NULL)
        return FALSE;
 
@@ -2039,7 +2036,6 @@ xcoff_write_armap_big (abfd, elength, map, orl_count, stridx)
       bfd_bwrite (symbol_table, symbol_table_size, abfd);
 
       free (symbol_table);
-      symbol_table = NULL;
 
       PRINT20 (fhdr->symoff64, nextoff);
     }
@@ -2311,7 +2307,7 @@ xcoff_write_archive_contents_big (abfd)
   size_t i;
   struct xcoff_ar_hdr_big *hdr, ahdr;
   bfd_size_type size;
-  bfd_byte *member_table, *mt;
+  char *member_table, *mt;
   bfd_vma member_table_size;
 
   memset (&fhdr, 0, SIZEOF_AR_FILE_HDR_BIG);
@@ -2476,8 +2472,7 @@ xcoff_write_archive_contents_big (abfd)
                       + total_namlen);
 
   member_table_size += member_table_size & 1;
-  member_table = NULL;
-  member_table = (bfd_byte *) bfd_zmalloc (member_table_size);
+  member_table = bfd_zmalloc (member_table_size);
   if (member_table == NULL)
     return FALSE;
 
@@ -2530,7 +2525,6 @@ xcoff_write_archive_contents_big (abfd)
     return FALSE;
 
   free (member_table);
-  member_table = NULL;
 
   PRINT20 (fhdr.memoff, nextoff);
 
@@ -3530,7 +3524,7 @@ _bfd_xcoff_put_ldsymbol_name (abfd, ldinfo, ldsym, name)
       if (ldinfo->string_size + len + 3 > ldinfo->string_alc)
        {
          bfd_size_type newalc;
-         bfd_byte *newstrings;
+         char *newstrings;
 
          newalc = ldinfo->string_alc * 2;
          if (newalc == 0)
@@ -3538,8 +3532,7 @@ _bfd_xcoff_put_ldsymbol_name (abfd, ldinfo, ldsym, name)
          while (ldinfo->string_size + len + 3 > newalc)
            newalc *= 2;
 
-         newstrings = ((bfd_byte *)
-                       bfd_realloc ((PTR) ldinfo->strings, newalc));
+         newstrings = bfd_realloc (ldinfo->strings, newalc);
          if (newstrings == NULL)
            {
              ldinfo->failed = TRUE;
index c4dd1d8..0e14b34 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD back-end for IBM RS/6000 "XCOFF64" files.
-   Copyright 2000, 2001, 2002, 2003, 2004
+   Copyright 2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written Clinton Popetz.
    Contributed by Cygnus Support.
@@ -564,7 +564,7 @@ _bfd_xcoff64_put_ldsymbol_name (abfd, ldinfo, ldsym, name)
   if (ldinfo->string_size + len + 3 > ldinfo->string_alc)
     {
       bfd_size_type newalc;
-      bfd_byte *newstrings;
+      char *newstrings;
 
       newalc = ldinfo->string_alc * 2;
       if (newalc == 0)
@@ -572,8 +572,7 @@ _bfd_xcoff64_put_ldsymbol_name (abfd, ldinfo, ldsym, name)
       while (ldinfo->string_size + len + 3 > newalc)
        newalc *= 2;
 
-      newstrings = ((bfd_byte *)
-                   bfd_realloc ((PTR) ldinfo->strings, newalc));
+      newstrings = bfd_realloc (ldinfo->strings, newalc);
       if (newstrings == NULL)
        {
          ldinfo->failed = TRUE;
index 4b87b9b..4e76b2f 100644 (file)
@@ -1,6 +1,6 @@
 /* Support for the generic parts of COFF, for BFD.
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-   2000, 2001, 2002, 2003, 2004
+   2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written by Cygnus Support.
 
@@ -1155,7 +1155,7 @@ coff_write_symbols (abfd)
   bfd_size_type debug_string_size;
   unsigned int i;
   unsigned int limit = bfd_get_symcount (abfd);
-  bfd_signed_vma written = 0;
+  bfd_vma written = 0;
   asymbol **p;
 
   string_size = 0;
index 46770d8..19cb54f 100644 (file)
@@ -1,6 +1,6 @@
 /* COFF specific linker code.
    Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
-   2004 Free Software Foundation, Inc.
+   2004, 2005 Free Software Foundation, Inc.
    Written by Ian Lance Taylor, Cygnus Support.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -1221,16 +1221,16 @@ process_embedded_commands (bfd *output_bfd,
        free (copy);
       return 0;
     }
-  e = copy + sec->size;
+  e = (char *) copy + sec->size;
 
-  for (s = copy;  s < e ; )
+  for (s = (char *) copy; s < e ; )
     {
-      if (s[0]!= '-')
+      if (s[0] != '-')
        {
          s++;
          continue;
        }
-      if (strncmp (s,"-attr", 5) == 0)
+      if (strncmp (s, "-attr", 5) == 0)
        {
          char *name;
          char *attribs;
index ea923c3..cd7c7a6 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD support for the ARM processor
-   Copyright 1994, 1997, 1999, 2000, 2002, 2003, 2004
+   Copyright 1994, 1997, 1999, 2000, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Contributed by Richard Earnshaw (rwe@pegasus.esprit.ec.org)
 
 #include "libbfd.h"
 #include "libiberty.h"
 
-static const bfd_arch_info_type * compatible
-  PARAMS ((const bfd_arch_info_type *, const bfd_arch_info_type *));
-static bfd_boolean scan
-  PARAMS ((const struct bfd_arch_info *, const char *));
-static bfd_boolean arm_check_note
-  PARAMS ((bfd *, char *, bfd_size_type, const char *, char **));
-
 /* This routine is provided two arch_infos and works out which ARM
    machine which would be compatible with both and returns a pointer
    to its info structure.  */
 
 static const bfd_arch_info_type *
-compatible (a,b)
-     const bfd_arch_info_type * a;
-     const bfd_arch_info_type * b;
+compatible (const bfd_arch_info_type *a, const bfd_arch_info_type *b)
 {
   /* If a & b are for different architecture we can do nothing.  */
   if (a->arch != b->arch)
@@ -105,9 +96,7 @@ processors[] =
 };
 
 static bfd_boolean
-scan (info, string)
-     const struct bfd_arch_info * info;
-     const char * string;
+scan (const struct bfd_arch_info *info, const char *string)
 {
   int  i;
 
@@ -162,9 +151,7 @@ const bfd_arch_info_type bfd_arm_arch =
    Returns TRUE if they were merged successfully or FALSE otherwise.  */
 
 bfd_boolean
-bfd_arm_merge_machines (ibfd, obfd)
-     bfd * ibfd;
-     bfd * obfd;
+bfd_arm_merge_machines (bfd *ibfd, bfd *obfd)
 {
   unsigned int in  = bfd_get_mach (ibfd);
   unsigned int out = bfd_get_mach (obfd);
@@ -226,12 +213,11 @@ typedef struct
 } arm_Note;
 
 static bfd_boolean
-arm_check_note (abfd, buffer, buffer_size, expected_name, description_return)
-     bfd *           abfd;
-     char *          buffer;
-     bfd_size_type   buffer_size;
-     const char *    expected_name;
-     char **         description_return;
+arm_check_note (bfd *abfd,
+               bfd_byte *buffer,
+               bfd_size_type buffer_size,
+               const char *expected_name,
+               char **description_return)
 {
   unsigned long namesz;
   unsigned long descsz;
@@ -246,7 +232,7 @@ arm_check_note (abfd, buffer, buffer_size, expected_name, description_return)
   namesz = bfd_get_32 (abfd, buffer);
   descsz = bfd_get_32 (abfd, buffer + offsetof (arm_Note, descsz));
   type   = bfd_get_32 (abfd, buffer + offsetof (arm_Note, type));
-  descr  = buffer + offsetof (arm_Note, name);
+  descr  = (char *) buffer + offsetof (arm_Note, name);
 
   /* Check for buffer overflow.  */
   if (namesz + descsz + offsetof (arm_Note, name) > buffer_size)
@@ -279,9 +265,7 @@ arm_check_note (abfd, buffer, buffer_size, expected_name, description_return)
 #define NOTE_ARCH_STRING       "arch: "
 
 bfd_boolean
-bfd_arm_update_notes (abfd, note_section)
-     bfd * abfd;
-     const char * note_section;
+bfd_arm_update_notes (bfd *abfd, const char *note_section)
 {
   asection *     arm_arch_section;
   bfd_size_type  buffer_size;
@@ -329,7 +313,9 @@ bfd_arm_update_notes (abfd, note_section)
 
   if (strcmp (arch_string, expected) != 0)
     {
-      strcpy (buffer + offsetof (arm_Note, name) + ((strlen (NOTE_ARCH_STRING) + 3) & ~3), expected);
+      strcpy ((char *) buffer + (offsetof (arm_Note, name)
+                                + ((strlen (NOTE_ARCH_STRING) + 3) & ~3)),
+             expected);
 
       if (! bfd_set_section_contents (abfd, arm_arch_section, buffer,
                                      (file_ptr) 0, buffer_size))
@@ -374,9 +360,7 @@ architectures[] =
 
 /* Extract the machine number stored in a note section.  */
 unsigned int
-bfd_arm_get_mach_from_notes (abfd, note_section)
-     bfd * abfd;
-     const char * note_section;
+bfd_arm_get_mach_from_notes (bfd *abfd, const char *note_section)
 {
   asection *     arm_arch_section;
   bfd_size_type  buffer_size;
index d5544d9..be8ba38 100644 (file)
@@ -1,6 +1,6 @@
 /* DWARF 2 support.
    Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
-   2004 Free Software Foundation, Inc.
+   2004, 2005 Free Software Foundation, Inc.
 
    Adapted from gdb/dwarf2read.c by Gavin Koch of Cygnus Solutions
    (gavin@cygnus.com).
@@ -71,44 +71,44 @@ struct attribute
 struct dwarf_block
 {
   unsigned int size;
-  char *data;
+  bfd_byte *data;
 };
 
 struct dwarf2_debug
 {
   /* A list of all previously read comp_units.  */
-  struct comp_unitall_comp_units;
+  struct comp_unit *all_comp_units;
 
   /* The next unread compilation unit within the .debug_info section.
      Zero indicates that the .debug_info section has not been loaded
      into a buffer yet.  */
-  char* info_ptr;
+  bfd_byte *info_ptr;
 
   /* Pointer to the end of the .debug_info section memory buffer.  */
-  char* info_ptr_end;
+  bfd_byte *info_ptr_end;
 
   /* Pointer to the section and address of the beginning of the
      section.  */
-  asectionsec;
-  char* sec_info_ptr;
+  asection *sec;
+  bfd_byte *sec_info_ptr;
 
   /* Pointer to the symbol table.  */
-  asymbol** syms;
+  asymbol **syms;
 
   /* Pointer to the .debug_abbrev section loaded into memory.  */
-  char* dwarf_abbrev_buffer;
+  bfd_byte *dwarf_abbrev_buffer;
 
   /* Length of the loaded .debug_abbrev section.  */
   unsigned long dwarf_abbrev_size;
 
   /* Buffer for decode_line_info.  */
-  char *dwarf_line_buffer;
+  bfd_byte *dwarf_line_buffer;
 
   /* Length of the loaded .debug_line section.  */
   unsigned long dwarf_line_size;
 
   /* Pointer to the .debug_str section loaded into memory.  */
-  char* dwarf_str_buffer;
+  bfd_byte *dwarf_str_buffer;
 
   /* Length of the loaded .debug_str section.  */
   unsigned long dwarf_str_size;
@@ -127,48 +127,48 @@ struct arange
 struct comp_unit
 {
   /* Chain the previously read compilation units.  */
-  struct comp_unitnext_unit;
+  struct comp_unit *next_unit;
 
   /* Keep the bdf convenient (for memory allocation).  */
-  bfdabfd;
+  bfd *abfd;
 
   /* The lowest and higest addresses contained in this compilation
      unit as specified in the compilation unit header.  */
   struct arange arange;
 
   /* The DW_AT_name attribute (for error messages).  */
-  charname;
+  char *name;
 
   /* The abbrev hash table.  */
-  struct abbrev_info** abbrevs;
+  struct abbrev_info **abbrevs;
 
   /* Note that an error was found by comp_unit_find_nearest_line.  */
   int error;
 
   /* The DW_AT_comp_dir attribute.  */
-  charcomp_dir;
+  char *comp_dir;
 
   /* TRUE if there is a line number table associated with this comp. unit.  */
   int stmtlist;
 
   /* Pointer to the current comp_unit so that we can find a given entry
      by its reference.  */
-  char *info_ptr_unit;
+  bfd_byte *info_ptr_unit;
 
   /* The offset into .debug_line of the line number table.  */
   unsigned long line_offset;
 
   /* Pointer to the first child die for the comp unit.  */
-  char *first_child_die_ptr;
+  bfd_byte *first_child_die_ptr;
 
   /* The end of the comp unit.  */
-  char *end_ptr;
+  bfd_byte *end_ptr;
 
   /* The decoded line number, NULL if not yet decoded.  */
-  struct line_info_tableline_table;
+  struct line_info_table *line_table;
 
   /* A list of the functions found in this comp. unit.  */
-  struct funcinfofunction_table;
+  struct funcinfo *function_table;
 
   /* Pointer to dwarf2_debug structure.  */
   struct dwarf2_debug *stash;
@@ -211,38 +211,38 @@ struct attr_abbrev
 /* Read dwarf information from a buffer.  */
 
 static unsigned int
-read_1_byte (bfd *abfd ATTRIBUTE_UNUSED, char *buf)
+read_1_byte (bfd *abfd ATTRIBUTE_UNUSED, bfd_byte *buf)
 {
   return bfd_get_8 (abfd, buf);
 }
 
 static int
-read_1_signed_byte (bfd *abfd ATTRIBUTE_UNUSED, char *buf)
+read_1_signed_byte (bfd *abfd ATTRIBUTE_UNUSED, bfd_byte *buf)
 {
   return bfd_get_signed_8 (abfd, buf);
 }
 
 static unsigned int
-read_2_bytes (bfd *abfd, char *buf)
+read_2_bytes (bfd *abfd, bfd_byte *buf)
 {
   return bfd_get_16 (abfd, buf);
 }
 
 static unsigned int
-read_4_bytes (bfd *abfd, char *buf)
+read_4_bytes (bfd *abfd, bfd_byte *buf)
 {
   return bfd_get_32 (abfd, buf);
 }
 
 static bfd_uint64_t
-read_8_bytes (bfd *abfd, char *buf)
+read_8_bytes (bfd *abfd, bfd_byte *buf)
 {
   return bfd_get_64 (abfd, buf);
 }
 
-static char *
+static bfd_byte *
 read_n_bytes (bfd *abfd ATTRIBUTE_UNUSED,
-             char *buf,
+             bfd_byte *buf,
              unsigned int size ATTRIBUTE_UNUSED)
 {
   /* If the size of a host char is 8 bits, we can return a pointer
@@ -253,27 +253,29 @@ read_n_bytes (bfd *abfd ATTRIBUTE_UNUSED,
 
 static char *
 read_string (bfd *abfd ATTRIBUTE_UNUSED,
-            char *buf,
+            bfd_byte *buf,
             unsigned int *bytes_read_ptr)
 {
   /* Return a pointer to the embedded string.  */
-  if (*buf == '\0')
+  char *str = (char *) buf;
+  if (*str == '\0')
     {
       *bytes_read_ptr = 1;
       return NULL;
     }
 
-  *bytes_read_ptr = strlen (buf) + 1;
-  return buf;
+  *bytes_read_ptr = strlen (str) + 1;
+  return str;
 }
 
 static char *
 read_indirect_string (struct comp_unit* unit,
-                     char *buf,
+                     bfd_byte *buf,
                      unsigned int *bytes_read_ptr)
 {
   bfd_uint64_t offset;
   struct dwarf2_debug *stash = unit->stash;
+  char *str;
 
   if (unit->offset_size == 4)
     offset = read_4_bytes (unit->abfd, buf);
@@ -315,16 +317,16 @@ read_indirect_string (struct comp_unit* unit,
       return NULL;
     }
 
-  buf = stash->dwarf_str_buffer + offset;
-  if (*buf == '\0')
+  str = (char *) stash->dwarf_str_buffer + offset;
+  if (*str == '\0')
     return NULL;
-  return buf;
+  return str;
 }
 
 /* END VERBATIM */
 
 static bfd_uint64_t
-read_address (struct comp_unit *unit, char *buf)
+read_address (struct comp_unit *unit, bfd_byte *buf)
 {
   switch (unit->addr_size)
     {
@@ -370,7 +372,7 @@ static struct abbrev_info**
 read_abbrevs (bfd *abfd, bfd_uint64_t offset, struct dwarf2_debug *stash)
 {
   struct abbrev_info **abbrevs;
-  char *abbrev_ptr;
+  bfd_byte *abbrev_ptr;
   struct abbrev_info *cur_abbrev;
   unsigned int abbrev_number, bytes_read, abbrev_name;
   unsigned int abbrev_form, hash_number;
@@ -477,11 +479,11 @@ read_abbrevs (bfd *abfd, bfd_uint64_t offset, struct dwarf2_debug *stash)
 
 /* Read an attribute value described by an attribute form.  */
 
-static char *
+static bfd_byte *
 read_attribute_value (struct attribute *attr,
                      unsigned form,
                      struct comp_unit *unit,
-                     char *info_ptr)
+                     bfd_byte *info_ptr)
 {
   bfd *abfd = unit->abfd;
   unsigned int bytes_read;
@@ -605,11 +607,11 @@ read_attribute_value (struct attribute *attr,
 
 /* Read an attribute described by an abbreviated attribute.  */
 
-static char *
+static bfd_byte *
 read_attribute (struct attribute *attr,
                struct attr_abbrev *abbrev,
                struct comp_unit *unit,
-               char *info_ptr)
+               bfd_byte *info_ptr)
 {
   attr->name = abbrev->name;
   info_ptr = read_attribute_value (attr, abbrev->form, unit, info_ptr);
@@ -625,7 +627,7 @@ struct line_info
 {
   struct line_info* prev_line;
   bfd_vma address;
-  charfilename;
+  char *filename;
   unsigned int line;
   unsigned int column;
   int end_sequence;            /* End of (sequential) code sequence.  */
@@ -644,8 +646,8 @@ struct line_info_table
   bfd* abfd;
   unsigned int num_files;
   unsigned int num_dirs;
-  charcomp_dir;
-  char** dirs;
+  char *comp_dir;
+  char **dirs;
   struct fileinfo* files;
   struct line_info* last_line;  /* largest VMA */
   struct line_info* lcl_head;   /* local head; used in 'add_line_info' */
@@ -654,7 +656,7 @@ struct line_info_table
 struct funcinfo
 {
   struct funcinfo *prev_func;
-  charname;
+  char *name;
   bfd_vma low;
   bfd_vma high;
 };
@@ -763,7 +765,7 @@ add_line_info (struct line_info_table *table,
 static char *
 concat_filename (struct line_info_table *table, unsigned int file)
 {
-  charfilename;
+  char *filename;
 
   if (file - 1 >= table->num_files)
     {
@@ -776,7 +778,7 @@ concat_filename (struct line_info_table *table, unsigned int file)
 
   if (! IS_ABSOLUTE_PATH (filename))
     {
-      chardirname = (table->files[file - 1].dir
+      char *dirname = (table->files[file - 1].dir
                       ? table->dirs[table->files[file - 1].dir - 1]
                       : table->comp_dir);
 
@@ -846,8 +848,8 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
 {
   bfd *abfd = unit->abfd;
   struct line_info_table* table;
-  char *line_ptr;
-  char *line_end;
+  bfd_byte *line_ptr;
+  bfd_byte *line_end;
   struct line_head lh;
   unsigned int i, bytes_read, offset_size;
   char *cur_file, *cur_dir;
@@ -1265,7 +1267,7 @@ static char *
 find_abstract_instance_name (struct comp_unit *unit, bfd_uint64_t die_ref)
 {
   bfd *abfd = unit->abfd;
-  char *info_ptr;
+  bfd_byte *info_ptr;
   unsigned int abbrev_number, bytes_read, i;
   struct abbrev_info *abbrev;
   struct attribute attr;
@@ -1306,7 +1308,7 @@ static bfd_boolean
 scan_unit_for_functions (struct comp_unit *unit)
 {
   bfd *abfd = unit->abfd;
-  char *info_ptr = unit->first_child_die_ptr;
+  bfd_byte *info_ptr = unit->first_child_die_ptr;
   int nesting_level = 1;
 
   while (nesting_level)
@@ -1315,7 +1317,7 @@ scan_unit_for_functions (struct comp_unit *unit)
       struct abbrev_info *abbrev;
       struct attribute attr;
       struct funcinfo *func;
-      charname = 0;
+      char *name = 0;
 
       abbrev_number = read_unsigned_leb128 (abfd, info_ptr, &bytes_read);
       info_ptr += bytes_read;
@@ -1417,7 +1419,7 @@ static struct comp_unit *
 parse_comp_unit (bfd *abfd,
                 struct dwarf2_debug *stash,
                 bfd_vma unit_length,
-                char *info_ptr_unit,
+                bfd_byte *info_ptr_unit,
                 unsigned int offset_size)
 {
   struct comp_unit* unit;
@@ -1428,8 +1430,8 @@ parse_comp_unit (bfd *abfd,
   unsigned int abbrev_number, bytes_read, i;
   struct abbrev_info *abbrev;
   struct attribute attr;
-  char *info_ptr = stash->info_ptr;
-  char *end_ptr = info_ptr + unit_length;
+  bfd_byte *info_ptr = stash->info_ptr;
+  bfd_byte *end_ptr = info_ptr + unit_length;
   bfd_size_type amt;
 
   version = read_2_bytes (abfd, info_ptr);
@@ -1527,7 +1529,7 @@ parse_comp_unit (bfd *abfd,
 
        case DW_AT_comp_dir:
          {
-           charcomp_dir = attr.u.str;
+           char *comp_dir = attr.u.str;
            if (comp_dir)
              {
                /* Irix 6.2 native cc prepends <machine>.: to the compilation
@@ -1791,7 +1793,7 @@ _bfd_dwarf2_find_nearest_line (bfd *abfd,
       bfd_vma length;
       bfd_boolean found;
       unsigned int offset_size = addr_size;
-      char *info_ptr_unit = stash->info_ptr;
+      bfd_byte *info_ptr_unit = stash->info_ptr;
 
       length = read_4_bytes (abfd, stash->info_ptr);
       /* A 0xffffff length is the DWARF3 way of indicating we use
index 4676a27..4c93e80 100644 (file)
@@ -269,7 +269,7 @@ struct cie
 {
   struct cie_header hdr;
   unsigned char version;
-  unsigned char augmentation[20];
+  char augmentation[20];
   bfd_vma code_align;
   bfd_signed_vma data_align;
   bfd_vma ra_column;
@@ -955,7 +955,7 @@ struct elf_backend_data
      see elf.c, elfcode.h.  */
   bfd *(*elf_backend_bfd_from_remote_memory)
      (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep,
-      int (*target_read_memory) (bfd_vma vma, char *myaddr, int len));
+      int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr, int len));
 
   /* This function is used by `_bfd_elf_get_synthetic_symtab';
      see elf.c.  */
@@ -1780,10 +1780,10 @@ extern char *elfcore_write_lwpstatus
 
 extern bfd *_bfd_elf32_bfd_from_remote_memory
   (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep,
-   int (*target_read_memory) (bfd_vma, char *, int));
+   int (*target_read_memory) (bfd_vma, bfd_byte *, int));
 extern bfd *_bfd_elf64_bfd_from_remote_memory
   (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep,
-   int (*target_read_memory) (bfd_vma, char *, int));
+   int (*target_read_memory) (bfd_vma, bfd_byte *, int));
 
 /* SH ELF specific routine.  */
 
index deea1e3..5a01ab3 100644 (file)
@@ -453,7 +453,7 @@ _bfd_elf_discard_section_eh_frame
 
   for (;;)
     {
-      unsigned char *aug;
+      char *aug;
       bfd_byte *start, *end, *insns;
       bfd_size_type length;
 
@@ -563,10 +563,10 @@ _bfd_elf_discard_section_eh_frame
 
          /* Cannot handle unknown versions.  */
          REQUIRE (cie.version == 1 || cie.version == 3);
-         REQUIRE (strlen (buf) < sizeof (cie.augmentation));
+         REQUIRE (strlen ((char *) buf) < sizeof (cie.augmentation));
 
-         strcpy (cie.augmentation, buf);
-         buf = strchr (buf, '\0') + 1;
+         strcpy (cie.augmentation, (char *) buf);
+         buf = (bfd_byte *) strchr ((char *) buf, '\0') + 1;
          ENSURE_NO_RELOCS (buf);
          if (buf[0] == 'e' && buf[1] == 'h')
            {
@@ -1088,7 +1088,7 @@ _bfd_elf_write_section_eh_frame (bfd *abfd,
              || ent->need_lsda_relative
              || ent->per_encoding_relative)
            {
-             unsigned char *aug;
+             char *aug;
              unsigned int action, extra_string, extra_data;
              unsigned int per_width, per_encoding;
 
@@ -1102,8 +1102,8 @@ _bfd_elf_write_section_eh_frame (bfd *abfd,
 
              /* Skip length, id and version.  */
              buf += 9;
-             aug = buf;
-             buf = strchr (buf, '\0') + 1;
+             aug = (char *) buf;
+             buf += strlen (aug) + 1;
              skip_leb128 (&buf, end);
              skip_leb128 (&buf, end);
              skip_leb128 (&buf, end);
@@ -1117,7 +1117,7 @@ _bfd_elf_write_section_eh_frame (bfd *abfd,
 
              /* Make room for the new augmentation string and data bytes.  */
              memmove (buf + extra_string + extra_data, buf, end - buf);
-             memmove (aug + extra_string, aug, buf - aug);
+             memmove (aug + extra_string, aug, buf - (bfd_byte *) aug);
              buf += extra_string;
              end += extra_string + extra_data;
 
index 673b9d7..460d26b 100644 (file)
@@ -1,5 +1,5 @@
 /* ELF strtab with GC and suffix merging support.
-   Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+   Copyright 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
    Written by Jakub Jelinek <jakub@redhat.com>.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -263,8 +263,8 @@ strrevcmp (const void *a, const void *b)
   struct elf_strtab_hash_entry *B = *(struct elf_strtab_hash_entry **) b;
   unsigned int lenA = A->len;
   unsigned int lenB = B->len;
-  const unsigned char *s = A->root.string + lenA - 1;
-  const unsigned char *t = B->root.string + lenB - 1;
+  const unsigned char *s = (const unsigned char *) A->root.string + lenA - 1;
+  const unsigned char *t = (const unsigned char *) B->root.string + lenB - 1;
   int l = lenA < lenB ? lenA : lenB;
 
   while (l)
index 2ab84e4..dd76dad 100644 (file)
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -210,10 +210,10 @@ bfd_elf_hash (const char *namearg)
    file, into a newly allocated buffer, and return a pointer to the
    buffer.  */
 
-static char *
+static bfd_byte *
 elf_read (bfd *abfd, file_ptr offset, bfd_size_type size)
 {
-  char *buf;
+  bfd_byte *buf;
 
   if ((buf = bfd_alloc (abfd, size)) == NULL)
     return NULL;
@@ -253,15 +253,15 @@ char *
 bfd_elf_get_str_section (bfd *abfd, unsigned int shindex)
 {
   Elf_Internal_Shdr **i_shdrp;
-  char *shstrtab = NULL;
+  bfd_byte *shstrtab = NULL;
   file_ptr offset;
   bfd_size_type shstrtabsize;
 
   i_shdrp = elf_elfsections (abfd);
   if (i_shdrp == 0 || i_shdrp[shindex] == 0)
-    return 0;
+    return NULL;
 
-  shstrtab = (char *) i_shdrp[shindex]->contents;
+  shstrtab = i_shdrp[shindex]->contents;
   if (shstrtab == NULL)
     {
       /* No cached one, attempt to read, and cache what we read.  */
@@ -270,7 +270,7 @@ bfd_elf_get_str_section (bfd *abfd, unsigned int shindex)
       shstrtab = elf_read (abfd, offset, shstrtabsize);
       i_shdrp[shindex]->contents = shstrtab;
     }
-  return shstrtab;
+  return (char *) shstrtab;
 }
 
 char *
@@ -5576,8 +5576,8 @@ swap_out_syms (bfd *abfd,
   Elf_Internal_Shdr *symtab_hdr;
   Elf_Internal_Shdr *symtab_shndx_hdr;
   Elf_Internal_Shdr *symstrtab_hdr;
-  char *outbound_syms;
-  char *outbound_shndx;
+  bfd_byte *outbound_syms;
+  bfd_byte *outbound_shndx;
   int idx;
   bfd_size_type amt;
   bfd_boolean name_local_sections;
@@ -7866,7 +7866,7 @@ bfd_elf_bfd_from_remote_memory
   (bfd *templ,
    bfd_vma ehdr_vma,
    bfd_vma *loadbasep,
-   int (*target_read_memory) (bfd_vma, char *, int))
+   int (*target_read_memory) (bfd_vma, bfd_byte *, int))
 {
   return (*get_elf_backend_data (templ)->elf_backend_bfd_from_remote_memory)
     (templ, ehdr_vma, loadbasep, target_read_memory);
index 53ea587..c98674d 100644 (file)
@@ -2170,7 +2170,7 @@ bfd_m68k_elf32_create_embedded_relocs (abfd, info, datasec, relsec, errmsg)
       bfd_put_32 (abfd, irel->r_offset + datasec->output_offset, p);
       memset (p + 4, 0, 8);
       if (targetsec != NULL)
-       strncpy (p + 4, targetsec->output_section->name, 8);
+       strncpy ((char *) p + 4, targetsec->output_section->name, 8);
     }
 
   if (isymbuf != NULL && symtab_hdr->contents != (unsigned char *) isymbuf)
index 6a1c4e5..b38a48a 100644 (file)
@@ -6110,7 +6110,7 @@ ppc_elf_final_write_processing (bfd *abfd, bfd_boolean linker ATTRIBUTE_UNUSED)
   bfd_put_32 (abfd, sizeof APUINFO_LABEL, buffer);
   bfd_put_32 (abfd, num_entries * 4, buffer + 4);
   bfd_put_32 (abfd, 0x2, buffer + 8);
-  strcpy (buffer + 12, APUINFO_LABEL);
+  strcpy ((char *) buffer + 12, APUINFO_LABEL);
 
   length = 20;
   for (i = 0; i < num_entries; i++)
index adce088..549da3a 100644 (file)
@@ -1,5 +1,5 @@
 /* Renesas / SuperH specific support for Symbian 32-bit ELF files
-   Copyright 2004
+   Copyright 2004, 2005
    Free Software Foundation, Inc.
    Contributed by Red Hat
 
@@ -96,8 +96,8 @@
 typedef struct symbol_rename
 {
   struct symbol_rename *       next;
-  bfd_byte *                   current_name;
-  bfd_byte *                   new_name;
+  char *                       current_name;
+  char *                       new_name;
   struct elf_link_hash_entry * current_hash;
   unsigned long                new_symndx;
 }
@@ -109,7 +109,7 @@ static symbol_rename * rename_list = NULL;
 
 static bfd_boolean
 sh_symbian_import_as (struct bfd_link_info *info, bfd * abfd,
-                     bfd_byte * current_name, bfd_byte * new_name)
+                     char * current_name, char * new_name)
 {
   struct elf_link_hash_entry * new_hash;
   symbol_rename * node;
@@ -173,7 +173,7 @@ sh_symbian_import_as (struct bfd_link_info *info, bfd * abfd,
 
 
 static bfd_boolean
-sh_symbian_import (bfd * abfd ATTRIBUTE_UNUSED, bfd_byte * name)
+sh_symbian_import (bfd * abfd ATTRIBUTE_UNUSED, char * name)
 {
   if (DEBUG)
     fprintf (stderr, "IMPORT '%s'\n", name);
@@ -184,7 +184,7 @@ sh_symbian_import (bfd * abfd ATTRIBUTE_UNUSED, bfd_byte * name)
 }
 
 static bfd_boolean
-sh_symbian_export (bfd * abfd ATTRIBUTE_UNUSED, bfd_byte * name)
+sh_symbian_export (bfd * abfd ATTRIBUTE_UNUSED, char * name)
 {
   if (DEBUG)
     fprintf (stderr, "EXPORT '%s'\n", name);
@@ -202,14 +202,14 @@ static bfd_boolean
 sh_symbian_process_embedded_commands (struct bfd_link_info *info, bfd * abfd,
                                      asection * sec, bfd_byte * contents)
 {
-  bfd_byte *s;
-  bfd_byte *e;
+  char *s;
+  char *e;
   bfd_boolean result = TRUE;
   bfd_size_type sz = sec->rawsize ? sec->rawsize : sec->size;
 
-  for (s = contents, e = s + sz; s < e;)
+  for (s = (char *) contents, e = s + sz; s < e;)
     {
-      bfd_byte * directive = s;
+      char * directive = s;
 
       switch (*s)
        {
@@ -229,9 +229,9 @@ sh_symbian_process_embedded_commands (struct bfd_link_info *info, bfd * abfd,
            result = FALSE;
          else
            {
-             bfd_byte * new_name;
-             bfd_byte * new_name_end;
-             bfd_byte   name_end_char;
+             char * new_name;
+             char * new_name_end;
+             char   name_end_char;
 
              /* Skip the IMPORT directive.  */
              s += strlen (DIRECTIVE_IMPORT);
@@ -282,9 +282,9 @@ sh_symbian_process_embedded_commands (struct bfd_link_info *info, bfd * abfd,
                }
              else
                {
-                 bfd_byte * current_name;
-                 bfd_byte * current_name_end;
-                 bfd_byte   current_name_end_char;
+                 char * current_name;
+                 char * current_name_end;
+                 char   current_name_end_char;
 
                  /* Skip the 'AS '.  */
                  s += strlen (DIRECTIVE_AS);
@@ -331,9 +331,9 @@ sh_symbian_process_embedded_commands (struct bfd_link_info *info, bfd * abfd,
            result = FALSE;
          else
            {
-             bfd_byte * name;
-             bfd_byte * name_end;
-             bfd_byte   name_end_char;
+             char * name;
+             char * name_end;
+             char   name_end_char;
 
              /* Skip the directive.  */
              s += strlen (DIRECTIVE_EXPORT);
@@ -374,7 +374,8 @@ sh_symbian_process_embedded_commands (struct bfd_link_info *info, bfd * abfd,
       if (! result)
        {
          if (DEBUG)
-           fprintf (stderr, "offset into .directive section: %d\n", directive - contents);
+           fprintf (stderr, "offset into .directive section: %d\n",
+                    directive - (char *) contents);
          
          bfd_set_error (bfd_error_invalid_operation);
          _bfd_error_handler (_("%B: Unrecognised .directive command: %s"),
index 149ef9f..05b0665 100644 (file)
@@ -32,20 +32,6 @@ static bfd_reloc_status_type sh_elf_reloc
   (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **);
 static bfd_reloc_status_type sh_elf_ignore_reloc
   (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **);
-static reloc_howto_type *sh_elf_reloc_type_lookup
-  (bfd *, bfd_reloc_code_real_type);
-static void sh_elf_info_to_howto
-  (bfd *, arelent *, Elf_Internal_Rela *);
-static bfd_boolean sh_elf_set_private_flags
-  (bfd *, flagword);
-static bfd_boolean sh_elf_copy_private_data
-  (bfd *, bfd *);
-static bfd_boolean sh_elf_merge_private_data
-  (bfd *, bfd *);
-static bfd_boolean sh_elf_set_mach_from_flags
-  (bfd *);
-static bfd_boolean sh_elf_relax_section
-  (bfd *, asection *, struct bfd_link_info *, bfd_boolean *);
 static bfd_boolean sh_elf_relax_delete_bytes
   (bfd *, asection *, bfd_vma, int);
 static bfd_boolean sh_elf_align_loads
@@ -54,67 +40,12 @@ static bfd_boolean sh_elf_align_loads
 static bfd_boolean sh_elf_swap_insns
   (bfd *, asection *, void *, bfd_byte *, bfd_vma);
 #endif
-static bfd_boolean sh_elf_relocate_section
-  (bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *,
-   Elf_Internal_Rela *, Elf_Internal_Sym *, asection **);
-static bfd_byte *sh_elf_get_relocated_section_contents
-  (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *,
-   bfd_boolean, asymbol **);
-static void sh_elf_copy_indirect_symbol
-  (const struct elf_backend_data *, struct elf_link_hash_entry *,
-   struct elf_link_hash_entry *);
 static int sh_elf_optimized_tls_reloc
   (struct bfd_link_info *, int, int);
-static bfd_boolean sh_elf_mkobject
-  (bfd *);
-static bfd_boolean sh_elf_object_p
-  (bfd *);
-static bfd_boolean sh_elf_check_relocs
-  (bfd *, struct bfd_link_info *, asection *, const Elf_Internal_Rela *);
-static struct bfd_hash_entry *sh_elf_link_hash_newfunc
-  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
-static struct bfd_link_hash_table *sh_elf_link_hash_table_create
-  (bfd *);
-static bfd_boolean sh_elf_adjust_dynamic_symbol
-  (struct bfd_link_info *, struct elf_link_hash_entry *);
-static bfd_boolean sh_elf_size_dynamic_sections
-  (bfd *, struct bfd_link_info *);
-static bfd_boolean sh_elf_finish_dynamic_symbol
-  (bfd *, struct bfd_link_info *, struct elf_link_hash_entry *,
-   Elf_Internal_Sym *);
-static bfd_boolean sh_elf_finish_dynamic_sections
-  (bfd *, struct bfd_link_info *);
-static bfd_reloc_status_type sh_elf_reloc_loop
-  (int, bfd *, asection *, bfd_byte *, bfd_vma, asection *, bfd_vma,
-   bfd_vma);
-static bfd_boolean create_got_section
-  (bfd *, struct bfd_link_info *);
-static bfd_boolean sh_elf_create_dynamic_sections
-  (bfd *, struct bfd_link_info *);
 static bfd_vma dtpoff_base
   (struct bfd_link_info *);
 static bfd_vma tpoff
   (struct bfd_link_info *, bfd_vma);
-static asection * sh_elf_gc_mark_hook
-  (asection *, struct bfd_link_info *, Elf_Internal_Rela *,
-   struct elf_link_hash_entry *, Elf_Internal_Sym *);
-static bfd_boolean sh_elf_gc_sweep_hook
-  (bfd *, struct bfd_link_info *, asection *, const Elf_Internal_Rela *);
-static bfd_boolean allocate_dynrelocs
-  (struct elf_link_hash_entry *, void *);
-static bfd_boolean readonly_dynrelocs
-  (struct elf_link_hash_entry *, void *);
-static enum elf_reloc_type_class sh_elf_reloc_type_class
-  (const Elf_Internal_Rela *);
-#ifdef INCLUDE_SHMEDIA
-inline static void movi_shori_putval (bfd *, unsigned long, char *);
-#endif
-#if !defined SH_TARGET_ALREADY_DEFINED
-static bfd_boolean elf32_shlin_grok_prstatus
-  (bfd *abfd, Elf_Internal_Note *note);
-static bfd_boolean elf32_shlin_grok_psinfo
-  (bfd *abfd, Elf_Internal_Note *note);
-#endif
 
 /* The name of the dynamic interpreter.  This is put in the .interp
    section.  */
@@ -3369,7 +3300,7 @@ static const bfd_byte *elf_sh_pic_plt_entry;
 #define elf_sh_plt_reloc_offset(info) (info->shared ? 52 : 44)
 
 inline static void
-movi_shori_putval (bfd *output_bfd, unsigned long value, char *addr)
+movi_shori_putval (bfd *output_bfd, unsigned long value, bfd_byte *addr)
 {
   bfd_put_32 (output_bfd,
              bfd_get_32 (output_bfd, addr)
index 8a4bea2..c831d9f 100644 (file)
@@ -1,5 +1,5 @@
 /* MMIX-specific support for 64-bit ELF.
-   Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
    Contributed by Hans-Peter Nilsson <hp@bitrange.com>
 
 This file is part of BFD, the Binary File Descriptor library.
@@ -993,7 +993,7 @@ mmix_elf_perform_relocation (isec, howto, datap, addr, value)
             position for the stub.  There's supposed to be room allocated
             for the stub.  */
          bfd_byte *stubcontents
-           = ((char *) datap
+           = ((bfd_byte *) datap
               - (addr - (isec->output_section->vma + isec->output_offset))
               + size
               + mmix_elf_section_data (isec)->pjs.stub_offset);
index 15f7a43..7bd6a04 100644 (file)
@@ -1,5 +1,6 @@
 /* SuperH SH64-specific support for 64-bit ELF
-   Copyright 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2000, 2001, 2002, 2003, 2004, 2005
+   Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -107,70 +108,10 @@ struct elf_sh64_link_hash_table
 #define sh64_elf64_hash_table(p) \
   ((struct elf_sh64_link_hash_table *) ((p)->hash))
 
-static bfd_boolean sh_elf64_copy_private_data
-  (bfd *, bfd *);
-static bfd_boolean sh_elf64_copy_private_data_internal
-  (bfd *, bfd *);
-static bfd_boolean sh_elf64_merge_private_data
-  (bfd *, bfd *);
 static bfd_reloc_status_type sh_elf64_ignore_reloc
   (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **);
 static bfd_reloc_status_type sh_elf64_reloc
   (bfd *, arelent *, asymbol *, void *, asection *, bfd *, char **);
-static reloc_howto_type *sh_elf64_reloc_type_lookup
-  (bfd *, bfd_reloc_code_real_type);
-static void sh_elf64_info_to_howto
-  (bfd *, arelent *, Elf_Internal_Rela *);
-static bfd_boolean sh_elf64_relocate_section
-  (bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *,
-   Elf_Internal_Rela *, Elf_Internal_Sym *, asection **);
-static bfd_byte *sh_elf64_get_relocated_section_contents
-  (bfd *, struct bfd_link_info *, struct bfd_link_order *, bfd_byte *,
-   bfd_boolean, asymbol **);
-static bfd_boolean sh_elf64_set_mach_from_flags
-  (bfd *);
-static bfd_boolean sh_elf64_set_private_flags
-  (bfd *, flagword);
-static asection *sh_elf64_gc_mark_hook
-  (asection *, struct bfd_link_info *, Elf_Internal_Rela *,
-   struct elf_link_hash_entry *, Elf_Internal_Sym *);
-static bfd_boolean sh_elf64_gc_sweep_hook
-  (bfd *, struct bfd_link_info *, asection *, const Elf_Internal_Rela *);
-static bfd_boolean sh_elf64_check_relocs
-  (bfd *, struct bfd_link_info *, asection *, const Elf_Internal_Rela *);
-static int sh64_elf64_get_symbol_type
-  (Elf_Internal_Sym *, int);
-static bfd_boolean sh64_elf64_add_symbol_hook
-  (bfd *, struct bfd_link_info *, Elf_Internal_Sym *, const char **,
-   flagword *, asection **, bfd_vma *);
-static bfd_boolean sh64_elf64_link_output_symbol_hook
-  (struct bfd_link_info *, const char *, Elf_Internal_Sym *, asection *,
-   struct elf_link_hash_entry *);
-static bfd_boolean sh64_elf64_fake_sections
-  (bfd *, Elf_Internal_Shdr *, asection *);
-static void sh64_elf64_final_write_processing
-  (bfd *, bfd_boolean);
-static struct bfd_hash_entry *sh64_elf64_link_hash_newfunc
-  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
-static struct bfd_link_hash_table *sh64_elf64_link_hash_table_create
-  (bfd *);
-inline static void movi_shori_putval
-  (bfd *, unsigned long, char *);
-inline static void movi_3shori_putval
-  (bfd *, bfd_vma, char *);
-static bfd_boolean sh64_elf64_create_dynamic_sections
-  (bfd *, struct bfd_link_info *);
-static bfd_boolean sh64_elf64_adjust_dynamic_symbol
-  (struct bfd_link_info *info, struct elf_link_hash_entry *);
-static bfd_boolean sh64_elf64_discard_copies
-  (struct elf_sh64_link_hash_entry *, void *);
-static bfd_boolean sh64_elf64_size_dynamic_sections
-  (bfd *, struct bfd_link_info *);
-static bfd_boolean sh64_elf64_finish_dynamic_symbol
-  (bfd *, struct bfd_link_info *, struct elf_link_hash_entry *,
-   Elf_Internal_Sym *);
-static bfd_boolean sh64_elf64_finish_dynamic_sections
-  (bfd *, struct bfd_link_info *);
 
 static reloc_howto_type sh_elf64_howto_table[] = {
   /* No relocation.  */
@@ -2271,7 +2212,7 @@ sh_elf64_get_relocated_section_contents (bfd *output_bfd,
 
 /* Set the SHF_SH5_ISA32 flag for ISA SHmedia code sections.  */
 
-bfd_boolean
+static bfd_boolean
 sh64_elf64_fake_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
                          Elf_Internal_Shdr *elf_section_hdr,
                          asection *asect)
@@ -3199,7 +3140,7 @@ sh64_elf64_link_hash_table_create (bfd *abfd)
 }
 
 inline static void
-movi_shori_putval (bfd *output_bfd, unsigned long value, char *addr)
+movi_shori_putval (bfd *output_bfd, unsigned long value, bfd_byte *addr)
 {
   bfd_put_32 (output_bfd,
              bfd_get_32 (output_bfd, addr)
@@ -3212,7 +3153,7 @@ movi_shori_putval (bfd *output_bfd, unsigned long value, char *addr)
 }
 
 inline static void
-movi_3shori_putval (bfd *output_bfd, bfd_vma value, char *addr)
+movi_3shori_putval (bfd *output_bfd, bfd_vma value, bfd_byte *addr)
 {
   bfd_put_32 (output_bfd,
              bfd_get_32 (output_bfd, addr)
index 87b2663..fd0daca 100644 (file)
@@ -1499,7 +1499,7 @@ NAME(_bfd_elf,bfd_from_remote_memory)
   (bfd *templ,
    bfd_vma ehdr_vma,
    bfd_vma *loadbasep,
-   int (*target_read_memory) (bfd_vma, char *, int))
+   int (*target_read_memory) (bfd_vma, bfd_byte *, int))
 {
   Elf_External_Ehdr x_ehdr;    /* Elf file header, external form */
   Elf_Internal_Ehdr i_ehdr;    /* Elf file header, internal form */
@@ -1508,13 +1508,13 @@ NAME(_bfd_elf,bfd_from_remote_memory)
   bfd *nbfd;
   struct bfd_in_memory *bim;
   int contents_size;
-  char *contents;
+  bfd_byte *contents;
   int err;
   unsigned int i;
   bfd_vma loadbase;
 
   /* Read in the ELF header in external format.  */
-  err = target_read_memory (ehdr_vma, (char *) &x_ehdr, sizeof x_ehdr);
+  err = target_read_memory (ehdr_vma, (bfd_byte *) &x_ehdr, sizeof x_ehdr);
   if (err)
     {
       bfd_set_error (bfd_error_system_call);
@@ -1574,7 +1574,7 @@ NAME(_bfd_elf,bfd_from_remote_memory)
       bfd_set_error (bfd_error_no_memory);
       return NULL;
     }
-  err = target_read_memory (ehdr_vma + i_ehdr.e_phoff, (char *) x_phdrs,
+  err = target_read_memory (ehdr_vma + i_ehdr.e_phoff, (bfd_byte *) x_phdrs,
                            i_ehdr.e_phnum * sizeof x_phdrs[0]);
   if (err)
     {
index 9c14ffe..4d73239 100644 (file)
@@ -818,7 +818,7 @@ mips_elf_create_procedure_table (void *handle, bfd *abfd,
       ss = bfd_malloc (count);
       if (ss == NULL)
        goto error_return;
-      if (! _bfd_ecoff_get_accumulated_ss (handle, ss))
+      if (! _bfd_ecoff_get_accumulated_ss (handle, (bfd_byte *) ss))
        goto error_return;
 
       count = hdr->ipdMax;
index 65d5d82..396ece3 100644 (file)
@@ -2,7 +2,8 @@
    (This include file is not for users of the library.)
 
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+   1999, 2000, 2001, 2002, 2003, 2004, 2005
+   Free Software Foundation, Inc.
 
    Written by Cygnus Support.
 
@@ -686,6 +687,6 @@ extern void bfd_section_already_linked_table_traverse
   (bfd_boolean (*) (struct bfd_section_already_linked_hash_entry *,
                    void *), void *);
 
-extern bfd_vma read_unsigned_leb128 (bfd *, char *, unsigned int *);
-extern bfd_signed_vma read_signed_leb128 (bfd *, char *, unsigned int *);
+extern bfd_vma read_unsigned_leb128 (bfd *, bfd_byte *, unsigned int *);
+extern bfd_signed_vma read_signed_leb128 (bfd *, bfd_byte *, unsigned int *);
 
index ec1864c..26ab404 100644 (file)
@@ -1,6 +1,6 @@
 /* Assorted BFD support routines, only used internally.
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-   2000, 2001, 2002, 2003, 2004
+   2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written by Cygnus Support.
 
@@ -865,12 +865,12 @@ warn_deprecated (const char *what,
 
 bfd_vma
 read_unsigned_leb128 (bfd *abfd ATTRIBUTE_UNUSED,
-                     char *buf,
+                     bfd_byte *buf,
                      unsigned int *bytes_read_ptr)
 {
   bfd_vma result;
   unsigned int num_read;
-  int shift;
+  unsigned int shift;
   unsigned char byte;
 
   result = 0;
@@ -878,7 +878,7 @@ read_unsigned_leb128 (bfd *abfd ATTRIBUTE_UNUSED,
   num_read = 0;
   do
     {
-      byte = bfd_get_8 (abfd, (bfd_byte *) buf);
+      byte = bfd_get_8 (abfd, buf);
       buf++;
       num_read++;
       result |= (((bfd_vma) byte & 0x7f) << shift);
@@ -893,12 +893,12 @@ read_unsigned_leb128 (bfd *abfd ATTRIBUTE_UNUSED,
 
 bfd_signed_vma
 read_signed_leb128 (bfd *abfd ATTRIBUTE_UNUSED,
-                   char *buf,
-                   unsigned int * bytes_read_ptr)
+                   bfd_byte *buf,
+                   unsigned int *bytes_read_ptr)
 {
   bfd_vma result;
-  unsigned shift;
-  int num_read;
+  unsigned int shift;
+  unsigned int num_read;
   unsigned char byte;
 
   result = 0;
@@ -906,14 +906,14 @@ read_signed_leb128 (bfd *abfd ATTRIBUTE_UNUSED,
   num_read = 0;
   do
     {
-      byte = bfd_get_8 (abfd, (bfd_byte *) buf);
+      byte = bfd_get_8 (abfd, buf);
       buf ++;
       num_read ++;
       result |= (((bfd_vma) byte & 0x7f) << shift);
       shift += 7;
     }
   while (byte & 0x80);
-  if ((shift < 8 * sizeof (result)) && (byte & 0x40))
+  if (shift < 8 * sizeof (result) && (byte & 0x40))
     result |= (((bfd_vma) -1) << shift);
   *bytes_read_ptr = num_read;
   return result;
index f021a97..2f475aa 100644 (file)
@@ -7,7 +7,8 @@
    (This include file is not for users of the library.)
 
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+   1999, 2000, 2001, 2002, 2003, 2004, 2005
+   Free Software Foundation, Inc.
 
    Written by Cygnus Support.
 
@@ -691,8 +692,8 @@ extern void bfd_section_already_linked_table_traverse
   (bfd_boolean (*) (struct bfd_section_already_linked_hash_entry *,
                    void *), void *);
 
-extern bfd_vma read_unsigned_leb128 (bfd *, char *, unsigned int *);
-extern bfd_signed_vma read_signed_leb128 (bfd *, char *, unsigned int *);
+extern bfd_vma read_unsigned_leb128 (bfd *, bfd_byte *, unsigned int *);
+extern bfd_signed_vma read_signed_leb128 (bfd *, bfd_byte *, unsigned int *);
 
 /* Extracted from init.c.  */
 /* Extracted from libbfd.c.  */
index 8337f19..b8c6ecb 100644 (file)
@@ -798,7 +798,7 @@ bfd_mach_o_scan_read_symtab_strtab (abfd, sym)
          bfd_set_error (bfd_error_file_truncated);
          return -1;
        }
-      sym->strtab = b->buffer + sym->stroff;
+      sym->strtab = (char *) b->buffer + sym->stroff;
       return 0;
     }
 
@@ -2120,7 +2120,7 @@ bfd_mach_o_core_file_failing_command (abfd)
   if (ret < 0)
     return NULL;
 
-  return buf;
+  return (char *) buf;
 }
 
 int
index eb8ec66..3efbd43 100644 (file)
@@ -1,5 +1,5 @@
 /* SEC_MERGE support.
-   Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
    Written by Jakub Jelinek <jakub@redhat.com>.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -446,7 +446,8 @@ record_section (struct sec_merge_info *sinfo,
          eltalign = ((eltalign ^ (eltalign - 1)) + 1) >> 1;
          if (!eltalign || eltalign > mask)
            eltalign = mask + 1;
-         entry = sec_merge_add (sinfo->htab, p, (unsigned) eltalign, secinfo);
+         entry = sec_merge_add (sinfo->htab, (char *) p, (unsigned) eltalign,
+                                secinfo);
          if (! entry)
            goto error_return;
          p += entry->len;
@@ -477,7 +478,7 @@ record_section (struct sec_merge_info *sinfo,
                  if (!nul && !((p - secinfo->contents) & mask))
                    {
                      nul = TRUE;
-                     entry = sec_merge_add (sinfo->htab, p,
+                     entry = sec_merge_add (sinfo->htab, (char *) p,
                                             (unsigned) mask + 1, secinfo);
                      if (! entry)
                        goto error_return;
@@ -491,7 +492,7 @@ record_section (struct sec_merge_info *sinfo,
     {
       for (p = secinfo->contents; p < end; p += sec->entsize)
        {
-         entry = sec_merge_add (sinfo->htab, p, 1, secinfo);
+         entry = sec_merge_add (sinfo->htab, (char *) p, 1, secinfo);
          if (! entry)
            goto error_return;
        }
@@ -512,8 +513,8 @@ strrevcmp (const void *a, const void *b)
   struct sec_merge_hash_entry *B = *(struct sec_merge_hash_entry **) b;
   unsigned int lenA = A->len;
   unsigned int lenB = B->len;
-  const unsigned char *s = A->root.string + lenA - 1;
-  const unsigned char *t = B->root.string + lenB - 1;
+  const unsigned char *s = (const unsigned char *) A->root.string + lenA - 1;
+  const unsigned char *t = (const unsigned char *) B->root.string + lenB - 1;
   int l = lenA < lenB ? lenA : lenB;
 
   while (l)
@@ -537,8 +538,8 @@ strrevcmp_align (const void *a, const void *b)
   struct sec_merge_hash_entry *B = *(struct sec_merge_hash_entry **) b;
   unsigned int lenA = A->len;
   unsigned int lenB = B->len;
-  const unsigned char *s = A->root.string + lenA - 1;
-  const unsigned char *t = B->root.string + lenB - 1;
+  const unsigned char *s = (const unsigned char *) A->root.string + lenA - 1;
+  const unsigned char *t = (const unsigned char *) B->root.string + lenB - 1;
   int l = lenA < lenB ? lenA : lenB;
   int tail_align = (lenA & (A->alignment - 1)) - (lenB & (A->alignment - 1));
 
@@ -829,7 +830,7 @@ _bfd_merged_section_offset (bfd *output_bfd ATTRIBUTE_UNUSED, asection **psec,
     {
       p = secinfo->contents + (offset / sec->entsize) * sec->entsize;
     }
-  entry = sec_merge_hash_lookup (secinfo->htab, p, 0, FALSE);
+  entry = sec_merge_hash_lookup (secinfo->htab, (char *) p, 0, FALSE);
   if (!entry)
     {
       if (! secinfo->htab->strings)
index 03b4e2e..b24988f 100644 (file)
--- a/bfd/mmo.c
+++ b/bfd/mmo.c
@@ -1,5 +1,5 @@
 /* BFD back-end for mmo objects (MMIX-specific object-format).
-   Copyright 2001, 2002, 2003, 2004
+   Copyright 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written by Hans-Peter Nilsson (hp@bitrange.com).
    Infrastructure and other bits originally copied from srec.c and
@@ -424,7 +424,7 @@ static bfd_boolean mmo_has_leading_or_trailing_zero_tetra_p (bfd *,
    particular input or caller; put such things into the bfd or elsewhere.
    Look ma, no static per-invocation data!  */
 
-static unsigned
+static
 char valid_mmo_symbol_character_set[/* A-Z a-z (we assume consecutive
                                       codes; sorry EBCDIC:ers!).  */
                                    + 'Z' - 'A' + 1 + 'z' - 'a' + 1
@@ -947,7 +947,7 @@ mmo_get_generic_spec_data_section (bfd *abfd, int spec_data_number)
 static asection *
 mmo_get_spec_section (bfd *abfd, int spec_data_number)
 {
-  bfd_byte *secname;
+  char *secname;
   asection *sec;
   bfd_byte buf[4];
   unsigned int secname_length;
@@ -996,7 +996,7 @@ mmo_get_spec_section (bfd *abfd, int spec_data_number)
       if (bfd_bread (secname + i * 4, 4, abfd) != 4)
        goto format_error_free;
 
-      if (secname[i * 4] == LOP)
+      if (secname[i * 4] == (char) LOP)
        {
          /* A bit of overkill, but we handle char 0x98 in a section name,
             and recognize misparsing.  */
@@ -2547,7 +2547,7 @@ EXAMPLE
 
   mmo_write_tetra_raw (abfd, LOP_SPEC_SECTION);
   mmo_write_tetra (abfd, (strlen (sec->name) + 3) / 4);
-  mmo_write_chunk (abfd, sec->name, strlen (sec->name));
+  mmo_write_chunk (abfd, (bfd_byte *) sec->name, strlen (sec->name));
   mmo_flush_chunk (abfd);
   /* FIXME: We can get debug sections (.debug_line & Co.) with a section
      flag still having SEC_RELOC set.  Investigate.  This might be true
index 7358cf3..ffbf65d 100644 (file)
@@ -1,6 +1,6 @@
 /* opncls.c -- open and close a BFD.
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000,
-   2001, 2002, 2003, 2004
+   2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
 
    Written by Cygnus Support.
@@ -980,6 +980,7 @@ get_debug_link_info (bfd *abfd, unsigned long *crc32_out)
   unsigned long crc32;
   bfd_byte *contents;
   int crc_offset;
+  char *name;
 
   BFD_ASSERT (abfd);
   BFD_ASSERT (crc32_out);
@@ -997,13 +998,14 @@ get_debug_link_info (bfd *abfd, unsigned long *crc32_out)
     }
 
   /* Crc value is stored after the filename, aligned up to 4 bytes.  */
-  crc_offset = strlen (contents) + 1;
+  name = (char *) contents;
+  crc_offset = strlen (name) + 1;
   crc_offset = (crc_offset + 3) & ~3;
 
   crc32 = bfd_get_32 (abfd, contents + crc_offset);
 
   *crc32_out = crc32;
-  return contents;
+  return name;
 }
 
 /*
@@ -1022,7 +1024,7 @@ DESCRIPTION
 static bfd_boolean
 separate_debug_file_exists (const char *name, const unsigned long crc)
 {
-  static char buffer [8 * 1024];
+  static unsigned char buffer [8 * 1024];
   unsigned long file_crc = 0;
   int fd;
   bfd_size_type count;
@@ -1286,7 +1288,7 @@ bfd_fill_in_gnu_debuglink_section (bfd *abfd,
   char * contents;
   bfd_size_type crc_offset;
   FILE * handle;
-  static char buffer[8 * 1024];
+  static unsigned char buffer[8 * 1024];
   size_t count;
 
   if (abfd == NULL || sect == NULL || filename == NULL)
index 22d302f..450bdda 100644 (file)
--- a/bfd/pef.c
+++ b/bfd/pef.c
@@ -106,7 +106,7 @@ bfd_pef_print_symbol (abfd, afile, symbol, how)
       fprintf (file, " %-5s %s", symbol->section->name, symbol->name);
       if (strncmp (symbol->name, "__traceback_", strlen ("__traceback_")) == 0)
        {
-         char *buf = alloca (symbol->udata.i);
+         unsigned char *buf = alloca (symbol->udata.i);
          size_t offset = symbol->value + 4;
          size_t len = symbol->udata.i;
          int ret;
@@ -884,7 +884,8 @@ static int bfd_pef_parse_function_stubs (abfd, codesec, codebuf, codelen,
          goto error;
 
        max = loaderlen - (header.loader_strings_offset + imports[index].name);
-       symname = loaderbuf + header.loader_strings_offset + imports[index].name;
+       symname = (char *) loaderbuf;
+       symname += header.loader_strings_offset + imports[index].name;
        namelen = 0;
        for (s = symname; s < (symname + max); s++)
          {
@@ -978,7 +979,7 @@ static long bfd_pef_parse_symbols (abfd, csym)
   count = 0;
   if (codesec != NULL)
     {
-      unsigned long ncount = 0;
+      long ncount = 0;
       bfd_pef_parse_traceback_tables (abfd, codesec, codebuf, codelen,
                                      &ncount, csym);
       count += ncount;
index 8f41793..1282bb9 100644 (file)
@@ -1,6 +1,6 @@
 /* Support for the generic parts of PE/PEI, for BFD.
-   Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
-   Free Software Foundation, Inc.
+   Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+   2005 Free Software Foundation, Inc.
    Written by Cygnus Solutions.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -130,15 +130,6 @@ typedef struct
   struct internal_reloc * int_reltab;
 }
 pe_ILF_vars;
-
-static asection_ptr       pe_ILF_make_a_section   PARAMS ((pe_ILF_vars *, const char *, unsigned int, flagword));
-static void               pe_ILF_make_a_reloc     PARAMS ((pe_ILF_vars *, bfd_vma, bfd_reloc_code_real_type, asection_ptr));
-static void               pe_ILF_make_a_symbol    PARAMS ((pe_ILF_vars *, const char *, const char *, asection_ptr, flagword));
-static void               pe_ILF_save_relocs      PARAMS ((pe_ILF_vars *, asection_ptr));
-static void              pe_ILF_make_a_symbol_reloc  PARAMS ((pe_ILF_vars *, bfd_vma, bfd_reloc_code_real_type, struct bfd_symbol **, unsigned int));
-static bfd_boolean        pe_ILF_build_a_bfd      PARAMS ((bfd *, unsigned int, bfd_byte *, bfd_byte *, unsigned int, unsigned int));
-static const bfd_target * pe_ILF_object_p         PARAMS ((bfd *));
-static const bfd_target * pe_bfd_object_p        PARAMS ((bfd *));
 #endif /* COFF_IMAGE_WITH_PE */
 
 /**********************************************************************/
@@ -740,8 +731,8 @@ static jump_table jtab[] =
 static bfd_boolean
 pe_ILF_build_a_bfd (bfd *           abfd,
                    unsigned int    magic,
-                   bfd_byte *      symbol_name,
-                   bfd_byte *      source_dll,
+                   char *          symbol_name,
+                   char *          source_dll,
                    unsigned int    ordinal,
                    unsigned int    types)
 {
@@ -837,10 +828,10 @@ pe_ILF_build_a_bfd (bfd *           abfd,
   vars.int_reltab  = (struct internal_reloc *) ptr;
   ptr += SIZEOF_ILF_INT_RELOCS;
 
-  vars.string_table = ptr;
-  vars.string_ptr   = ptr + STRING_SIZE_SIZE;
+  vars.string_table = (char *) ptr;
+  vars.string_ptr   = (char *) ptr + STRING_SIZE_SIZE;
   ptr += SIZEOF_ILF_STRINGS;
-  vars.end_string_ptr = ptr;
+  vars.end_string_ptr = (char *) ptr;
 
   /* The remaining space in bim->buffer is used
      by the pe_ILF_make_a_section() function.  */
@@ -930,7 +921,7 @@ pe_ILF_build_a_bfd (bfd *           abfd,
       id6->contents[0] = ordinal & 0xff;
       id6->contents[1] = ordinal >> 8;
 
-      strcpy (id6->contents + 2, symbol);
+      strcpy ((char *) id6->contents + 2, symbol);
     }
 
   if (import_name_type != IMPORT_ORDINAL)
@@ -1042,7 +1033,7 @@ pe_ILF_build_a_bfd (bfd *           abfd,
 
       /* Create an import symbol for the DLL, without the
        .dll suffix.  */
-      ptr = strrchr (source_dll, '.');
+      ptr = (bfd_byte *) strrchr (source_dll, '.');
       if (ptr)
        * ptr = 0;
       pe_ILF_make_a_symbol (& vars, "__IMPORT_DESCRIPTOR_", source_dll, NULL, 0);
@@ -1087,8 +1078,8 @@ pe_ILF_object_p (bfd * abfd)
 {
   bfd_byte        buffer[16];
   bfd_byte *      ptr;
-  bfd_byte *      symbol_name;
-  bfd_byte *      source_dll;
+  char *          symbol_name;
+  char *          source_dll;
   unsigned int    machine;
   bfd_size_type   size;
   unsigned int    ordinal;
@@ -1225,11 +1216,12 @@ pe_ILF_object_p (bfd * abfd)
       return NULL;
     }
 
-  symbol_name = ptr;
-  source_dll  = ptr + strlen (ptr) + 1;
+  symbol_name = (char *) ptr;
+  source_dll  = symbol_name + strlen (symbol_name) + 1;
 
   /* Verify that the strings are null terminated.  */
-  if (ptr[size - 1] != 0 || ((unsigned long) (source_dll - ptr) >= size))
+  if (ptr[size - 1] != 0
+      || (bfd_size_type) ((bfd_byte *) source_dll - ptr) >= size)
     {
       _bfd_error_handler
        (_("%B: string not null terminated in ILF object file."), abfd);
index e184a20..93480c7 100644 (file)
@@ -1,6 +1,6 @@
 /* BFD back-end for s-record objects.
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-   2000, 2001, 2002, 2003, 2004
+   2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written by Steve Chamberlain of Cygnus Support <sac@cygnus.com>.
 
@@ -1014,7 +1014,8 @@ srec_write_header (abfd)
     len = 40;
 
   return srec_write_record (abfd, 0, (bfd_vma) 0,
-                           abfd->filename, abfd->filename + len);
+                           (bfd_byte *) abfd->filename,
+                           (bfd_byte *) abfd->filename + len);
 }
 
 static bfd_boolean
index c261111..35b94ef 100644 (file)
@@ -1,6 +1,6 @@
 /* vms-hdr.c -- BFD back-end for VMS/VAX (openVMS/VAX) and
    EVAX (openVMS/Alpha) files.
-   Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002
+   Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2005
    Free Software Foundation, Inc.
 
    HDR record handling functions
@@ -225,7 +225,8 @@ get_vms_time_string ()
   pnt[10] = 0;
   pnt[16] = 0;
   pnt[24] = 0;
-  sprintf (tbuf, "%2s-%3s-%s %s", pnt + 8, pnt + 4, pnt + 20, pnt + 11);
+  sprintf ((char *) tbuf, "%2s-%3s-%s %s",
+          pnt + 8, pnt + 4, pnt + 20, pnt + 11);
 #else
 #include <starlet.h>
   struct
index 2a4908b..7c0f9b6 100644 (file)
@@ -1,6 +1,6 @@
 /* vms-tir.c -- BFD back-end for VAX (openVMS/VAX) and
    EVAX (openVMS/Alpha) files.
-   Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004
+   Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005
    Free Software Foundation, Inc.
 
    TIR record handling functions
@@ -1598,7 +1598,7 @@ tir_ctl (bfd *abfd, unsigned char *ptr)
     case TIR_S_C_CTL_SETRB:
       /* Set relocation base: pop stack, set image location counter
         arg: none.  */
-      dummy = _bfd_vms_pop (abfd, &psect);
+      dummy = _bfd_vms_pop (abfd, (int *) &psect);
       if (psect >= PRIV (section_count))
        alloc_section (abfd, psect);
       image_set_ptr (abfd, (int) psect, (uquad) dummy);
@@ -1622,7 +1622,7 @@ tir_ctl (bfd *abfd, unsigned char *ptr)
     case TIR_S_C_CTL_STLOC:
       /* Set location: pop index, restore location counter from index
         arg: none.  */
-      dummy = _bfd_vms_pop (abfd, &psect);
+      dummy = _bfd_vms_pop (abfd, (int *) &psect);
       (*_bfd_error_handler) (_("%s: not fully implemented"),
                             tir_cmd_name (ptr[-1]));
       break;
@@ -1630,7 +1630,7 @@ tir_ctl (bfd *abfd, unsigned char *ptr)
     case TIR_S_C_CTL_STKDL:
       /* Stack defined location: pop index, push location counter from index
         arg: none.  */
-      dummy = _bfd_vms_pop (abfd, &psect);
+      dummy = _bfd_vms_pop (abfd, (int *) &psect);
       (*_bfd_error_handler) (_("%s: not fully implemented"),
                             tir_cmd_name (ptr[-1]));
       break;
index 247e5c3..6b80dcf 100644 (file)
@@ -1,5 +1,5 @@
 /* xSYM symbol-file support for BFD.
-   Copyright 1999, 2000, 2001, 2002, 2003, 2004
+   Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 #define bfd_sym_bfd_link_split_section _bfd_generic_link_split_section
 #define bfd_sym_get_section_contents_in_window  _bfd_generic_get_section_contents_in_window
 
-static int pstrcmp PARAMS ((unsigned char *, unsigned char *));
 static unsigned long compute_offset
   PARAMS ((unsigned long, unsigned long, unsigned long, unsigned long));
 
 extern const bfd_target sym_vec;
 
 static int
-pstrcmp (a, b)
-     unsigned char *a;
-     unsigned char *b;
+pstrcmp (const char *as, const char *bs)
 {
+  const unsigned char *a = (const unsigned char *) as;
+  const unsigned char *b = (const unsigned char *) bs;
   unsigned char clen;
   int ret;
 
-  clen = (a[0] > b[0]) ? a[0] : b[0];
+  clen = (a[0] > b[0]) ? b[0] : a[0];
   ret = memcmp (a + 1, b + 1, clen);
   if (ret != 0)
     return ret;
@@ -79,7 +78,7 @@ pstrcmp (a, b)
   else if (a[0] < b[0])
     return -1;
   else
-    return 0;
+    return 1;
 }
 
 static unsigned long
@@ -255,7 +254,7 @@ bfd_sym_read_version (abfd, version)
      bfd *abfd;
      bfd_sym_version *version;
 {
-  unsigned char version_string[32];
+  char version_string[32];
   long ret;
 
   ret = bfd_bread (version_string, sizeof (version_string), abfd);
@@ -1207,12 +1206,12 @@ bfd_sym_symbol_name (abfd, index)
   sdata = abfd->tdata.sym_data;
 
   if (index == 0)
-    return "";
+    return (const unsigned char *) "";
 
   index *= 2;
   if ((index / sdata->header.dshb_page_size)
       > sdata->header.dshb_nte.dti_page_count)
-    return "\009[INVALID]";
+    return (const unsigned char *) "\09[INVALID]";
 
   return (const unsigned char *) sdata->name_table + index;
 }
@@ -1225,7 +1224,7 @@ bfd_sym_module_name (abfd, index)
   bfd_sym_modules_table_entry entry;
 
   if (bfd_sym_fetch_modules_table_entry (abfd, &entry, index) < 0)
-    return "\011[INVALID]";
+    return (const unsigned char *) "\09[INVALID]";
 
   return bfd_sym_symbol_name (abfd, entry.mte_nte_index);
 }
@@ -1727,26 +1726,28 @@ bfd_sym_print_type_information (abfd, f, buf, len, offset, offsetptr)
 
     case 3:
       {
-       unsigned long value;
+       long value;
 
        fprintf (f, "scalar (0x%x) of ", type);
        bfd_sym_print_type_information (abfd, f, buf, len, offset, &offset);
        bfd_sym_fetch_long (buf, len, offset, &offset, &value);
-       fprintf (f, " (%lu)", value);
+       fprintf (f, " (%lu)", (unsigned long) value);
        break;
       }
 
     case 5:
       {
-       unsigned long lower, upper, nelem;
-       unsigned long i;
+       long lower, upper, nelem;
+       int i;
 
        fprintf (f, "enumeration (0x%x) of ", type);
        bfd_sym_print_type_information (abfd, f, buf, len, offset, &offset);
        bfd_sym_fetch_long (buf, len, offset, &offset, &lower);
        bfd_sym_fetch_long (buf, len, offset, &offset, &upper);
        bfd_sym_fetch_long (buf, len, offset, &offset, &nelem);
-       fprintf (f, " from %lu to %lu with %lu elements: ", lower, upper, nelem);
+       fprintf (f, " from %lu to %lu with %lu elements: ",
+                (unsigned long) lower, (unsigned long) upper,
+                (unsigned long) nelem);
 
        for (i = 0; i < nelem; i++)
          {
index f5fa3c2..68d33c6 100644 (file)
@@ -1,5 +1,5 @@
 /* Configurable Xtensa ISA support.
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -120,7 +120,9 @@ byte_to_bit_index (int byte_index)
    both.  */
 
 int
-xtensa_insnbuf_to_chars (xtensa_isa isa, const xtensa_insnbuf insn, char *cp,
+xtensa_insnbuf_to_chars (xtensa_isa isa,
+                        const xtensa_insnbuf insn,
+                        unsigned char *cp,
                         int num_chars)
 {
   xtensa_isa_internal *intisa = (xtensa_isa_internal *) isa;
@@ -178,7 +180,9 @@ xtensa_insnbuf_to_chars (xtensa_isa isa, const xtensa_insnbuf insn, char *cp,
    by endianness.  */
     
 void
-xtensa_insnbuf_from_chars (xtensa_isa isa, xtensa_insnbuf insn, const char *cp,
+xtensa_insnbuf_from_chars (xtensa_isa isa,
+                          xtensa_insnbuf insn,
+                          const unsigned char *cp,
                           int num_chars)
 {
   xtensa_isa_internal *intisa = (xtensa_isa_internal *) isa;
@@ -392,7 +396,7 @@ xtensa_isa_maxlength (xtensa_isa isa)
 
 
 int
-xtensa_isa_length_from_chars (xtensa_isa isa, const char *cp)
+xtensa_isa_length_from_chars (xtensa_isa isa, const unsigned char *cp)
 {
   xtensa_isa_internal *intisa = (xtensa_isa_internal *) isa;
   return (intisa->length_decode_fn) (cp);
index bc0cf73..5fe58d4 100644 (file)
@@ -1,5 +1,5 @@
 /* Xtensa configuration-specific ISA information.
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -9074,7 +9074,7 @@ static int length_table[16] = {
 };
 
 static int
-length_decoder (const char *insn)
+length_decoder (const unsigned char *insn)
 {
   int op0 = (insn[0] >> 4) & 0xf;
   return length_table[op0];
index 2d85bd3..90e1d6f 100644 (file)
@@ -1,3 +1,9 @@
+2005-02-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * xtensa-isa-internal.h (xtensa_length_decode_fn): Warning fix.
+       * xtensa-isa.h (xtensa_insnbuf_to_chars): Likewise.
+       (xtensa_insnbuf_from_chars, xtensa_isa_length_from_chars): Likewise.
+
 2005-02-14  Paolo Bonzini  <bonzini@gnu.org>
 
        PR bootstrap/19818
index 3d2c66d..88cf310 100644 (file)
@@ -1,3 +1,7 @@
+2005-02-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * xcoff.h (struct xcoff_loader_info): Warning fix.
+
 2005-01-10  Inderpreet Singh <inderpreetb@noida.hcltech.com>
 
        * maxq.h (F_MAXQ10, F_MAXQ20): Define.
index 64a9ee1..a70449e 100644 (file)
@@ -1,6 +1,6 @@
 /* Internal format of XCOFF object file data structures for BFD.
 
-   Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+   Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005
    Free Software Foundation, Inc.
    Written by Ian Lance Taylor <ian@cygnus.com>, Cygnus Support.
 
@@ -409,7 +409,7 @@ struct xcoff_loader_info
   size_t string_size;
 
   /* String table.  */
-  bfd_byte *strings;
+  char *strings;
 
   /* Allocated size of string table.  */
   size_t string_alc;
index 44e53f9..7ec2b9e 100644 (file)
@@ -1,5 +1,5 @@
 /* Internal definitions for configurable Xtensa ISA support.
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -49,7 +49,7 @@ typedef int (*xtensa_do_reloc_fn) (uint32 *, uint32);
 typedef int (*xtensa_undo_reloc_fn) (uint32 *, uint32);
 typedef void (*xtensa_opcode_encode_fn) (xtensa_insnbuf);
 typedef int (*xtensa_format_decode_fn) (const xtensa_insnbuf);
-typedef int (*xtensa_length_decode_fn) (const char *);
+typedef int (*xtensa_length_decode_fn) (const unsigned char *);
 
 typedef struct xtensa_format_internal_struct
 {
index 025e317..5c22902 100644 (file)
@@ -1,5 +1,5 @@
 /* Interface definition for configurable Xtensa ISA support.
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -209,11 +209,11 @@ xtensa_insnbuf_free (xtensa_isa isa, xtensa_insnbuf buf);
 
 extern int
 xtensa_insnbuf_to_chars (xtensa_isa isa, const xtensa_insnbuf insn,
-                        char *cp, int num_chars);
+                        unsigned char *cp, int num_chars);
 
 extern void
 xtensa_insnbuf_from_chars (xtensa_isa isa, xtensa_insnbuf insn,
-                          const char *cp, int num_chars);
+                          const unsigned char *cp, int num_chars);
 
 \f
 /* ISA information.  */
@@ -242,7 +242,7 @@ xtensa_isa_maxlength (xtensa_isa isa);
    XTENSA_UNDEFINED on error.  */
 
 extern int
-xtensa_isa_length_from_chars (xtensa_isa isa, const char *cp);
+xtensa_isa_length_from_chars (xtensa_isa isa, const unsigned char *cp);
 
 
 /* Get the number of stages in the processor's pipeline.  The pipeline