]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - bfd/xsym.h
[gdb/build] Fix missing implicit constructor call with gcc 4.8
[thirdparty/binutils-gdb.git] / bfd / xsym.h
index 67aa5236eab4cf9d235e100f2d030c6e74479829..393b72b5e0a1de30229a35a001cb2e0db251519e 100644 (file)
@@ -1,12 +1,11 @@
 /* xSYM symbol-file support for BFD.
-   Copyright 1999, 2000, 2001, 2002, 2003, 2005
-   Free Software Foundation, Inc.
+   Copyright (C) 1999-2020 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02110-1301, USA.  */
+   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+   MA 02110-1301, USA.  */
 
+#include "sysdep.h"
 #include "bfd.h"
 #include <stdio.h>
 
 #ifndef __xSYM_H__
 #define __xSYM_H__
 
-#define BFD_SYM_VERSION_STR_3_1        "\013Version 3.1"
-#define BFD_SYM_VERSION_STR_3_2        "\013Version 3.2"
-#define BFD_SYM_VERSION_STR_3_3        "\013Version 3.3"
-#define BFD_SYM_VERSION_STR_3_4        "\013Version 3.4"
-#define BFD_SYM_VERSION_STR_3_5        "\013Version 3.5"
+#define BFD_SYM_VERSION_STR_3_1                "\013Version 3.1"
+#define BFD_SYM_VERSION_STR_3_2                "\013Version 3.2"
+#define BFD_SYM_VERSION_STR_3_3                "\013Version 3.3"
+#define BFD_SYM_VERSION_STR_3_4                "\013Version 3.4"
+#define BFD_SYM_VERSION_STR_3_5                "\013Version 3.5"
 #define BFD_SYM_END_OF_LIST_3_2                0xffff
 #define BFD_SYM_END_OF_LIST_3_4                0xffffffff
-#define BFD_SYM_END_OF_LIST            BFD_SYM_END_OF_LIST_3_4
+#define BFD_SYM_END_OF_LIST            BFD_SYM_END_OF_LIST_3_4
 #define BFD_SYM_FILE_NAME_INDEX_3_2    0xfffe
 #define BFD_SYM_FILE_NAME_INDEX_3_4    0xfffffffe
 #define BFD_SYM_FILE_NAME_INDEX                BFD_SYM_FILE_NAME_INDEX_3_4
@@ -122,8 +123,8 @@ struct bfd_sym_resources_table_entry
   unsigned short rte_res_number;  /* Resource Number.  */
   unsigned long rte_nte_index;    /* Name of the resource.  */
   unsigned long rte_mte_first;    /* Index of first module in the resource.  */
-  unsigned long rte_mte_last;     /* Index of the last module in the resource. */
-  unsigned long        rte_res_size;     /* Size of the resource.  */
+  unsigned long rte_mte_last;     /* Index of the last module in the resource.  */
+  unsigned long rte_res_size;     /* Size of the resource.  */
 };
 typedef struct bfd_sym_resources_table_entry bfd_sym_resources_table_entry;
 
@@ -144,21 +145,21 @@ typedef struct bfd_sym_resources_table_entry bfd_sym_resources_table_entry;
 
 struct bfd_sym_modules_table_entry
 {
-  unsigned long mte_rte_index;         /* Which resource it is in.  */
-  unsigned long mte_res_offset;        /* Offset into the resource.  */
-  unsigned long mte_size;              /* Size of module.  */
-  char mte_kind;                       /* What kind of module this is.  */
-  char mte_scope;                      /* How visible is it?  */
-  unsigned long mte_parent;            /* Containing module.  */
-  bfd_sym_file_reference mte_imp_fref; /* Implementation source.  */
-  unsigned long mte_imp_end;           /* End of implementation source.  */
-  unsigned long mte_nte_index;         /* The name of the module.  */
-  unsigned long mte_cmte_index;        /* Modules contained in this.  */
-  unsigned long mte_cvte_index;        /* Variables contained in this.  */
-  unsigned long mte_clte_index;        /* Local labels defined here.  */
-  unsigned long mte_ctte_index;        /* Types contained in this.  */
-  unsigned long mte_csnte_idx_1;       /* CSNTE index of mte_snbr_first.  */
-  unsigned long mte_csnte_idx_2;       /* CSNTE index of mte_snbr_last.  */
+  unsigned long mte_rte_index;         /* Which resource it is in.  */
+  unsigned long mte_res_offset;                /* Offset into the resource.  */
+  unsigned long mte_size;              /* Size of module.  */
+  char mte_kind;                       /* What kind of module this is.  */
+  char mte_scope;                      /* How visible is it?  */
+  unsigned long mte_parent;            /* Containing module.  */
+  bfd_sym_file_reference mte_imp_fref; /* Implementation source.  */
+  unsigned long mte_imp_end;           /* End of implementation source.  */
+  unsigned long mte_nte_index;         /* The name of the module.  */
+  unsigned long mte_cmte_index;                /* Modules contained in this.  */
+  unsigned long mte_cvte_index;                /* Variables contained in this.  */
+  unsigned long mte_clte_index;                /* Local labels defined here.  */
+  unsigned long mte_ctte_index;                /* Types contained in this.  */
+  unsigned long mte_csnte_idx_1;       /* CSNTE index of mte_snbr_first.  */
+  unsigned long mte_csnte_idx_2;       /* CSNTE index of mte_snbr_last.  */
 };
 typedef struct bfd_sym_modules_table_entry bfd_sym_modules_table_entry;
 
@@ -168,13 +169,13 @@ typedef struct bfd_sym_modules_table_entry bfd_sym_modules_table_entry;
    The table is ordered by increasing file offset.  Each new offset
    references a module.
 
-                               FRT     = FILE_SOURCE_START
-                                                       FILE_SOURCE_INCREMENT*
-                                                       END_OF_LIST.
+                       FRT     = FILE_SOURCE_START
+                                               FILE_SOURCE_INCREMENT*
+                                               END_OF_LIST.
 
        *** THIS MECHANISM IS VERY SLOW FOR FILE+STATEMENT_NUMBER TO
-       *** MODULE/CODE ADDRESS OPERATIONS.  ANOTHER MECHANISM IS
-       ***     REQUIRED!!  */
+       *** MODULE/CODE ADDRESS OPERATIONS.  ANOTHER MECHANISM IS
+       ***     REQUIRED!!  */
 
 union bfd_sym_file_references_table_entry
 {
@@ -259,7 +260,7 @@ typedef union bfd_sym_contained_modules_table_entry bfd_sym_contained_modules_ta
      == BFD_SYM_CVTE_BIG_LA
      Logical address bytes in constant pool, at offset 'big_la'.  */
 
-#define        BFD_SYM_CVTE_SCA 0          /* Indicate SCA variant of CVTE.  */
+#define        BFD_SYM_CVTE_SCA 0          /* Indicate SCA variant of CVTE.  */
 #define        BFD_SYM_CVTE_LA_MAX_SIZE 13 /* Max# of logical address bytes in a CVTE.  */
 #define        BFD_SYM_CVTE_BIG_LA 127     /* Indicates LA redirection to constant pool.  */
 
@@ -285,17 +286,17 @@ union bfd_sym_contained_variables_table_entry
     /* < SOURCE_FILE_CHANGE.  */
     unsigned long tte_index;
     unsigned long nte_index;
-    unsigned long file_delta;                       /* Increment from previous source.  */
+    unsigned long file_delta;                      /* Increment from previous source.  */
     unsigned char scope;
-    unsigned char la_size;                          /* #bytes of LAs below.  */
+    unsigned char la_size;                         /* #bytes of LAs below.  */
 
     union
     {
       /* la_size == BFD_SYM_CVTE_SCA.  */
       struct
       {
-       unsigned char sca_kind;                     /* Distinguish local from value/var formal.  */
-       unsigned char sca_class;                    /* The storage class itself.  */
+       unsigned char sca_kind;                     /* Distinguish local from value/var formal.  */
+       unsigned char sca_class;                    /* The storage class itself.  */
        unsigned long sca_offset;
       }
       scstruct;
@@ -303,15 +304,15 @@ union bfd_sym_contained_variables_table_entry
       /* la_size <= BFD_SYM_CVTE_LA_MAX_SIZE.  */
       struct {
        unsigned char la[BFD_SYM_CVTE_LA_MAX_SIZE]; /* Logical address bytes.  */
-       unsigned char la_kind;                      /* Eqv. cvte_location.sca_kind.  */
+       unsigned char la_kind;                      /* Eqv. cvte_location.sca_kind.  */
       }
       lastruct;
 
       /* la_size == BFD_SYM_CVTE_BIG_LA 127.  */
       struct
       {
-       unsigned long big_la;                       /* Logical address bytes in constant pool.  */
-       unsigned char big_la_kind;                  /* Eqv. cvte_location.sca_kind.  */
+       unsigned long big_la;                       /* Logical address bytes in constant pool.  */
+       unsigned char big_la_kind;                  /* Eqv. cvte_location.sca_kind.  */
       }
       biglastruct;
     }
@@ -548,7 +549,7 @@ typedef struct bfd_sym_data_struct bfd_sym_data_struct;
 extern bfd_boolean bfd_sym_mkobject
   (bfd *);
 extern void bfd_sym_print_symbol
-  (bfd *, PTR, asymbol *, bfd_print_symbol_type);
+  (bfd *, void *, asymbol *, bfd_print_symbol_type);
 extern bfd_boolean bfd_sym_valid
   (bfd *);
 extern unsigned char * bfd_sym_read_name_table
@@ -685,9 +686,7 @@ extern void bfd_sym_display_type_information_table
   (bfd *, FILE *);
 extern int bfd_sym_scan
   (bfd *, bfd_sym_version, bfd_sym_data_struct *);
-extern const bfd_target * bfd_sym_object_p
-  (bfd *);
-extern asymbol * bfd_sym_make_empty_symbol
+extern bfd_cleanup bfd_sym_object_p
   (bfd *);
 extern void bfd_sym_get_symbol_info
   (bfd *, asymbol *, symbol_info *);
@@ -696,6 +695,6 @@ extern long bfd_sym_get_symtab_upper_bound
 extern long bfd_sym_canonicalize_symtab
   (bfd *, asymbol **);
 extern int bfd_sym_sizeof_headers
-  (bfd *, bfd_boolean);
+  (bfd *, struct bfd_link_info *);
 
 #endif /* __xSYM_H__ */