/* Private partial symbol table definitions.
- Copyright (C) 2009 Free Software Foundation, Inc.
+ Copyright (C) 2009, 2010 Free Software Foundation, Inc.
This file is part of GDB.
#include "psymtab.h"
+struct psymbol_allocation_list;
+
/* A partial_symbol records the name, domain, and address class of
symbols whose types we have not parsed yet. For functions, it also
contains their memory address, so we can find them from a PC value.
/* Information that lets read_symtab() locate the part of the symbol table
that this psymtab corresponds to. This information is private to the
format-dependent symbol reading routines. For further detail examine
- the various symbol reading modules. Should really be (void *) but is
- (char *) as with other such gdb variables. (FIXME) */
+ the various symbol reading modules. */
- char *read_symtab_private;
+ void *read_symtab_private;
/* Non-zero if the symtab corresponding to this psymtab has been readin */
extern void sort_pst_symbols (struct partial_symtab *);
+/* Add any kind of symbol to a psymbol_allocation_list. */
+
+extern const
+struct partial_symbol *add_psymbol_to_list (char *, int, int, domain_enum,
+ enum address_class,
+ struct psymbol_allocation_list *,
+ long, CORE_ADDR,
+ enum language, struct objfile *);
+
+extern void init_psymbol_list (struct objfile *, int);
+
+extern struct partial_symtab *start_psymtab_common (struct objfile *,
+ struct section_offsets *,
+ const char *, CORE_ADDR,
+ struct partial_symbol **,
+ struct partial_symbol **);
+
+extern struct partial_symtab *allocate_psymtab (const char *,
+ struct objfile *);
+
+extern void discard_psymtab (struct partial_symtab *);
+
/* Traverse all psymtabs in one objfile. */
#define ALL_OBJFILE_PSYMTABS(objfile, p) \