allocate_psymtab has long cleared the new psymtab that is returned.
This patch documents this behavior and then removes some redundant
initializations.
gdb/ChangeLog
2019-01-10 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_end_psymtab): Remove some initializations.
* psymtab.c (allocate_psymtab): Add comment.
* psympriv.h (allocate_psymtab): Add comment.
* dwarf2read.c (dwarf2_create_include_psymtab): Remove some
initializations.
* dbxread.c (dbx_end_psymtab): Remove some initializations.
+2019-01-10 Tom Tromey <tom@tromey.com>
+
+ * xcoffread.c (xcoff_end_psymtab): Remove some initializations.
+ * psymtab.c (allocate_psymtab): Add comment.
+ * psympriv.h (allocate_psymtab): Add comment.
+ * dwarf2read.c (dwarf2_create_include_psymtab): Remove some
+ initializations.
+ * dbxread.c (dbx_end_psymtab): Remove some initializations.
+
2019-01-10 Tom Tromey <tom@tromey.com>
* symfile.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
subpst->dependencies[0] = pst;
subpst->number_of_dependencies = 1;
- subpst->globals_offset =
- subpst->n_global_syms =
- subpst->statics_offset =
- subpst->n_static_syms = 0;
-
- subpst->readin = 0;
- subpst->compunit_symtab = 0;
subpst->read_symtab = pst->read_symtab;
}
subpst->dependencies[0] = pst;
subpst->number_of_dependencies = 1;
- subpst->globals_offset = 0;
- subpst->n_global_syms = 0;
- subpst->statics_offset = 0;
- subpst->n_static_syms = 0;
- subpst->compunit_symtab = NULL;
subpst->read_symtab = pst->read_symtab;
- subpst->readin = 0;
/* No private part is necessary for include psymtabs. This property
can be used to differentiate between such include psymtabs and
extern void end_psymtab_common (struct objfile *, struct partial_symtab *);
-extern struct partial_symtab *allocate_psymtab (const char *,
- struct objfile *)
+/* Allocate a new partial symbol table associated with OBJFILE.
+ FILENAME (which must be non-NULL) is the filename of this partial
+ symbol table; it is copied into the appropriate storage. A new
+ partial symbol table is returned; aside from "next" and "filename",
+ its fields are initialized to zero. */
+
+extern struct partial_symtab *allocate_psymtab (const char *filename,
+ struct objfile *objfile)
ATTRIBUTE_NONNULL (1);
extern void discard_psymtab (struct objfile *, struct partial_symtab *);
objfile->static_psymbols.reserve (total_symbols / 10);
}
+/* See psympriv.h. */
+
struct partial_symtab *
allocate_psymtab (const char *filename, struct objfile *objfile)
{
subpst->dependencies[0] = pst;
subpst->number_of_dependencies = 1;
- subpst->globals_offset =
- subpst->n_global_syms =
- subpst->statics_offset =
- subpst->n_static_syms = 0;
-
- subpst->readin = 0;
- subpst->compunit_symtab = NULL;
subpst->read_symtab = pst->read_symtab;
}