* symtab.h (current_objfile): Don't declare.

* objfiles.h (current_objfile): Don't declare.
	* objfiles.c (current_objfile): Remove.
	* mdebugread.c (current_objfile): New file-scope global.
	* dbxread.c (current_objfile): New file-scope global.
	* coffread.c (current_objfile): New file-scope global.
This commit is contained in:
Tom Tromey 2011-06-14 16:49:41 +00:00
parent 4d16d5754e
commit 91a81f6972
7 changed files with 23 additions and 21 deletions

View File

@ -1,3 +1,12 @@
2011-06-14 Tom Tromey <tromey@redhat.com>
* symtab.h (current_objfile): Don't declare.
* objfiles.h (current_objfile): Don't declare.
* objfiles.c (current_objfile): Remove.
* mdebugread.c (current_objfile): New file-scope global.
* dbxread.c (current_objfile): New file-scope global.
* coffread.c (current_objfile): New file-scope global.
2011-06-13 Pedro Alves <pedro@codesourcery.com>
* top.h (line): Rename to ...

View File

@ -49,6 +49,10 @@
extern void _initialize_coffread (void);
/* The objfile we are currently reading. */
static struct objfile *current_objfile;
struct coff_symfile_info
{
file_ptr min_lineno_offset; /* Where in file lowest line#s are. */

View File

@ -1,6 +1,6 @@
/* Read dbx symbol tables and convert to internal format, for GDB.
Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2008, 2009, 2010.
1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2008, 2009, 2010, 2011.
Free Software Foundation, Inc.
This file is part of GDB.
@ -105,6 +105,10 @@ struct symloc
#define FILE_STRING_OFFSET(p) (SYMLOC(p)->file_string_offset)
/* The objfile we are currently reading. */
static struct objfile *current_objfile;
/* Remember what we deduced to be the source language of this psymtab. */
static enum language psymtab_language = language_unknown;

View File

@ -78,6 +78,11 @@ extern void _initialize_mdebugread (void);
case the symbol's ELF section could not be represented in ECOFF. */
#define ECOFF_IN_ELF(bfd) (bfd_get_flavour (bfd) == bfd_target_elf_flavour \
&& bfd_get_section_by_name (bfd, ".mdebug") != NULL)
/* The objfile we are currently reading. */
static struct objfile *current_objfile;
/* We put a pointer to this structure in the read_symtab_private field

View File

@ -64,7 +64,6 @@ static void objfile_free_data (struct objfile *objfile);
/* Externally visible variables that are owned by this module.
See declarations in objfile.h for more info. */
struct objfile *current_objfile; /* For symbol file being read in */
struct objfile *rt_common_objfile; /* For runtime common symbols */
struct objfile_pspace_info

View File

@ -439,21 +439,6 @@ struct objfile
extern struct objfile *rt_common_objfile;
/* When we need to allocate a new type, we need to know which objfile_obstack
to allocate the type on, since there is one for each objfile. The places
where types are allocated are deeply buried in function call hierarchies
which know nothing about objfiles, so rather than trying to pass a
particular objfile down to them, we just do an end run around them and
set current_objfile to be whatever objfile we expect to be using at the
time types are being allocated. For instance, when we start reading
symbols for a particular objfile, we set current_objfile to point to that
objfile, and when we are done, we set it back to NULL, to ensure that we
never put a type someplace other than where we are expecting to put it.
FIXME: Maybe we should review the entire type handling system and
see if there is a better way to avoid this problem. */
extern struct objfile *current_objfile;
/* Declarations for functions defined in objfiles.c */
extern struct objfile *allocate_objfile (bfd *, int);

View File

@ -847,10 +847,6 @@ struct symtab
/* External variables and functions for the objects described above. */
/* See the comment in symfile.c about how current_objfile is used. */
extern struct objfile *current_objfile;
/* True if we are nested inside psymtab_to_symtab. */
extern int currently_reading_symtab;