along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include "defs.h"
-
-/* Standard C++ includes. */
-#include <string>
-
-/* Local non-gdb includes. */
-#include "block.h"
-#include "buildsym.h"
-#include "command.h"
#include "cp-support.h"
-#include "dictionary.h"
-#include "frame.h"
#include "gdb_obstack.h"
+#include "symtab.h"
+#include "symfile.h"
+#include "block.h"
+#include "objfiles.h"
#include "gdbtypes.h"
+#include "dictionary.h"
+#include "command.h"
+#include "frame.h"
+#include "buildsym.h"
#include "language.h"
#include "namespace.h"
-#include "objfiles.h"
-#include "symfile.h"
-#include "symtab.h"
+#include <string>
static struct block_symbol
cp_lookup_nested_symbol_1 (struct type *container_type,
const struct symbol *const symbol,
struct objfile *const objfile)
{
- if (SYMBOL_DEMANGLED_NAME (symbol) != NULL)
+ if (symbol->demangled_name () != NULL)
{
- const char *name = SYMBOL_DEMANGLED_NAME (symbol);
+ const char *name = symbol->demangled_name ();
unsigned int previous_component;
unsigned int next_component;
/* If the scope is a function/method, then look up NESTED as a local
static variable. E.g., "print 'function()::static_var'". */
- if (TYPE_CODE (scope_type) == TYPE_CODE_FUNC
- || TYPE_CODE (scope_type) == TYPE_CODE_METHOD)
+ if ((TYPE_CODE (scope_type) == TYPE_CODE_FUNC
+ || TYPE_CODE (scope_type) == TYPE_CODE_METHOD)
+ && domain == VAR_DOMAIN)
return lookup_symbol (nested, SYMBOL_BLOCK_VALUE (scope_sym.symbol),
VAR_DOMAIN, NULL);
/* Maybe we should store a dictionary in here instead. */
for (i = 0; i < num; ++i)
{
- if (strcmp (name, SYMBOL_NATURAL_NAME (syms[i])) == 0)
+ if (strcmp (name, syms[i]->natural_name ()) == 0)
return syms[i];
}
return NULL;
domain_name (domain));
}
- if (function != NULL && SYMBOL_LANGUAGE (function) == language_cplus)
+ if (function != NULL && function->language () == language_cplus)
{
/* Search the function's template parameters. */
if (SYMBOL_IS_CPLUS_TEMPLATE_FUNCTION (function))
/* Search the template parameters of the function's defining
context. */
- if (SYMBOL_NATURAL_NAME (function))
+ if (function->natural_name ())
{
struct type *context;
- std::string name_copy (SYMBOL_NATURAL_NAME (function));
+ std::string name_copy (function->natural_name ());
const struct language_defn *lang = language_def (language_cplus);
- struct gdbarch *arch = symbol_arch (function);
const struct block *parent = BLOCK_SUPERBLOCK (block);
struct symbol *sym;
else
{
name_copy.erase (prefix_len);
- context = lookup_typename (lang, arch,
+ context = lookup_typename (lang,
name_copy.c_str (),
parent, 1);
}