* buildsym.c (patch_subfile_names): Use set_last_source_file.

(start_symtab): Make 'name' and 'dirname' const.  Use
	set_last_source_file.
	(restart_symtab, reset_symtab_globals): Use set_last_source_file.
	(last_source_file): Define.  Now static.
	(set_last_source_file, get_last_source_file): New functions.
	* buildsym.h (last_source_file): Don't declare.
	(start_symtab): Update.
	(set_last_source_file, get_last_source_file): Declare.
	* coffread.c (complete_symtab): Use set_last_source_file.
	(coff_end_symtab): Likewise.
	(coff_symtab_read): Use set_last_source_file, get_last_source_file.
	* dbxread.c (read_dbx_symtab, read_ofile_symtab): Use
	set_last_source_file.
	(process_one_symbol): Use get_last_source_file.
	* mdebugread.c (parse_partial_symbols): Use set_last_source_file.
	(psymtab_to_symtab_1): Use get_last_source_file.
	* xcoffread.c (process_linenos): Use get_last_source_file.
	(complete_symtab): Use set_last_source_file.
	(read_xcoff_symtab): Use set_last_source_file, get_last_source_file.
	(scan_xcoff_symtab): Use set_last_source_file.
This commit is contained in:
Tom Tromey
2013-01-21 18:05:13 +00:00
parent 9d2ceabe7f
commit 46212e0bb5
7 changed files with 87 additions and 34 deletions

View File

@@ -45,12 +45,6 @@ struct pending_block;
#define HASHSIZE 127 /* Size of things hashed via
hashname(). */
/* Name of source file whose symbol data we are now processing. This
comes from a symbol of type N_SO for stabs. For Dwarf it comes
from the DW_AT_name attribute of a DW_TAG_compile_unit DIE. */
EXTERN char *last_source_file;
/* Core address of start of text of current source file. This too
comes from the N_SO symbol. For Dwarf it typically comes from the
DW_AT_low_pc attribute of a DW_TAG_compile_unit DIE. */
@@ -269,7 +263,8 @@ extern struct context_stack *pop_context (void);
extern void record_line (struct subfile *subfile, int line, CORE_ADDR pc);
extern void start_symtab (char *name, char *dirname, CORE_ADDR start_addr);
extern void start_symtab (const char *name, const char *dirname,
CORE_ADDR start_addr);
extern void restart_symtab (CORE_ADDR start_addr);
@@ -292,6 +287,15 @@ extern void record_producer (const char *producer);
extern void merge_symbol_lists (struct pending **srclist,
struct pending **targetlist);
/* Set the name of the last source file. NAME is copied by this
function. */
extern void set_last_source_file (const char *name);
/* Fetch the name of the last source file. */
extern const char *get_last_source_file (void);
/* The macro table for the compilation unit whose symbols we're
currently reading. All the symtabs for this CU will point to
this. */