/* Definitions for reading symbol files into GDB.
Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001
+ 2000, 2001, 2002, 2003
Free Software Foundation, Inc.
This file is part of GDB.
/* This file requires that you first include "bfd.h". */
+/* Opaque declarations. */
+struct objfile;
+struct obstack;
+struct block;
+
/* Partial symbols are stored in the psymbol_cache and pointers to them
are kept in a dynamically grown array that is obtained from malloc and
grown as necessary via realloc. Each objfile typically has two of these,
/* The default version of sym_fns.sym_offsets for readers that don't
do anything special. */
-extern void
-default_symfile_offsets (struct objfile *objfile, struct section_addr_info *);
+extern void default_symfile_offsets (struct objfile *objfile,
+ struct section_addr_info *);
-extern void
-extend_psymbol_list (struct psymbol_allocation_list *, struct objfile *);
+extern void extend_psymbol_list (struct psymbol_allocation_list *,
+ struct objfile *);
/* Add any kind of symbol to a psymbol_allocation_list. */
/* #include "demangle.h" */
extern void
-add_psymbol_to_list (char *, int, namespace_enum, enum address_class,
+add_psymbol_to_list (char *, int, domain_enum, enum address_class,
struct psymbol_allocation_list *, long, CORE_ADDR,
enum language, struct objfile *);
extern void
-add_psymbol_with_dem_name_to_list (char *, int, char *, int, namespace_enum,
+add_psymbol_with_dem_name_to_list (char *, int, char *, int, domain_enum,
enum address_class,
struct psymbol_allocation_list *,
long, CORE_ADDR,
extern void init_entry_point_info (struct objfile *);
-extern void
-syms_from_objfile (struct objfile *, struct section_addr_info *, int, int);
+extern void syms_from_objfile (struct objfile *,
+ struct section_addr_info *,
+ struct section_offsets *, int,
+ int, int);
extern void new_symfile_objfile (struct objfile *, int, int);
/* Free all memory allocated by build_section_addr_info_from_section_table. */
-extern void
-free_section_addr_info (struct section_addr_info *);
+extern void free_section_addr_info (struct section_addr_info *);
extern struct partial_symtab *start_psymtab_common (struct objfile *,
(and add a null character at the end in the copy).
Returns the address of the copy. */
-extern char *obsavestring (char *, int, struct obstack *);
+extern char *obsavestring (const char *, int, struct obstack *);
/* Concatenate strings S1, S2 and S3; return the new string.
Space is found in the symbol_obstack. */
extern void discard_psymtab (struct partial_symtab *);
-extern void find_lowest_section (bfd *, asection *, PTR);
+extern void find_lowest_section (bfd *, asection *, void *);
extern bfd *symfile_bfd_open (char *);
+extern int get_section_index (struct objfile *, char *);
+
/* Utility functions for overlay sections: */
extern enum overlay_debugging_state {
ovly_off,
/* Clear GDB symbol tables. */
extern void symbol_file_clear (int from_tty);
+extern bfd_byte *symfile_relocate_debug_section (bfd *abfd, asection *sectp,
+ bfd_byte *buf);
+
/* From dwarfread.c */
extern void