aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog10
-rw-r--r--gdb/dbxread.c8
-rw-r--r--gdb/mdebugread.c5
-rw-r--r--gdb/stabsread.h4
4 files changed, 21 insertions, 6 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 629cd04..9b6a825 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,6 +1,16 @@
2001-09-04 Elena Zannoni <ezannoni@redhat.com>
From Daniel Jacobowitz <drow@mvista.com>
+ * dbxread.c (free_header_files): Make global.
+ (init_header_files): Likewise.
+ * stabsread.h (free_header_files): Add prototype.
+ (init_header_files): Likewise.
+ * mdebugread.c (mdebug_build_psymtabs): Initialize
+ properly before using the stabs debug reader.
+
+2001-09-04 Elena Zannoni <ezannoni@redhat.com>
+
+ From Daniel Jacobowitz <drow@mvista.com>
* dbxread.c (dbx_symfile_read): Only reinitialize
the psymbol list if mainline or if both static
and global lists are empty.
diff --git a/gdb/dbxread.c b/gdb/dbxread.c
index ba60fe1..da55dde 100644
--- a/gdb/dbxread.c
+++ b/gdb/dbxread.c
@@ -270,10 +270,6 @@ extern void _initialize_dbxread (void);
static void process_now (struct objfile *);
-static void free_header_files (void);
-
-static void init_header_files (void);
-
static void read_ofile_symtab (struct partial_symtab *);
static void dbx_psymtab_to_symtab (struct partial_symtab *);
@@ -319,7 +315,7 @@ static struct partial_symtab *start_psymtab (struct objfile *, char *,
/* Free up old header file tables */
-static void
+void
free_header_files (void)
{
if (this_object_header_files)
@@ -332,7 +328,7 @@ free_header_files (void)
/* Allocate new header file tables */
-static void
+void
init_header_files (void)
{
n_allocated_this_object_header_files = 10;
diff --git a/gdb/mdebugread.c b/gdb/mdebugread.c
index 6d1078a..ed7e490 100644
--- a/gdb/mdebugread.c
+++ b/gdb/mdebugread.c
@@ -491,6 +491,11 @@ mdebug_build_psymtabs (struct objfile *objfile,
debug_swap = swap;
debug_info = info;
+ stabsread_new_init ();
+ buildsym_new_init ();
+ free_header_files ();
+ init_header_files ();
+
/* Make sure all the FDR information is swapped in. */
if (info->fdr == (FDR *) NULL)
{
diff --git a/gdb/stabsread.h b/gdb/stabsread.h
index fd76e17..59504da 100644
--- a/gdb/stabsread.h
+++ b/gdb/stabsread.h
@@ -219,4 +219,8 @@ extern struct symbol *ref_search (int);
extern int resolve_cfront_continuation
(struct objfile *objfile, struct symbol *sym, char *p);
+extern void free_header_files (void);
+
+extern void init_header_files (void);
+
#undef EXTERN