gdb: remove SYMBOL_DOMAIN macro

Add a getter and a setter for a symbol's domain.  Remove the
corresponding macro and adjust all callers.

Change-Id: I54465b50ac89739c663859a726aef8cdc6e4b8f3
This commit is contained in:
Simon Marchi 2022-01-27 21:50:32 -05:00
parent 66d7f48f80
commit 6c9c307c67
19 changed files with 107 additions and 99 deletions

View file

@ -290,7 +290,7 @@ ada_funcall (int nargs)
int array_arity = 0; int array_arity = 0;
struct type *callee_t = nullptr; struct type *callee_t = nullptr;
if (vvo == nullptr if (vvo == nullptr
|| SYMBOL_DOMAIN (vvo->get_symbol ()) != UNDEF_DOMAIN) || vvo->get_symbol ()->domain () != UNDEF_DOMAIN)
{ {
struct value *callee_v = callee->evaluate (nullptr, struct value *callee_v = callee->evaluate (nullptr,
pstate->expout.get (), pstate->expout.get (),
@ -1435,7 +1435,7 @@ write_ambiguous_var (struct parser_state *par_state,
{ {
struct symbol *sym = new (&temp_parse_space) symbol (); struct symbol *sym = new (&temp_parse_space) symbol ();
SYMBOL_DOMAIN (sym) = UNDEF_DOMAIN; sym->set_domain (UNDEF_DOMAIN);
sym->set_linkage_name (obstack_strndup (&temp_parse_space, name, len)); sym->set_linkage_name (obstack_strndup (&temp_parse_space, name, len));
sym->set_language (language_ada, nullptr); sym->set_language (language_ada, nullptr);

View file

@ -4477,7 +4477,7 @@ lesseq_defined_than (struct symbol *sym0, struct symbol *sym1)
{ {
if (sym0 == sym1) if (sym0 == sym1)
return 1; return 1;
if (SYMBOL_DOMAIN (sym0) != SYMBOL_DOMAIN (sym1) if (sym0->domain () != sym1->domain ()
|| sym0->aclass () != sym1->aclass ()) || sym0->aclass () != sym1->aclass ())
return 0; return 0;
@ -5740,7 +5740,7 @@ ada_add_block_symbols (std::vector<struct block_symbol> &result,
sym != NULL; sym != NULL;
sym = block_iter_match_next (lookup_name, &iter)) sym = block_iter_match_next (lookup_name, &iter))
{ {
if (symbol_matches_domain (sym->language (), SYMBOL_DOMAIN (sym), domain)) if (symbol_matches_domain (sym->language (), sym->domain (), domain))
{ {
if (sym->aclass () != LOC_UNRESOLVED) if (sym->aclass () != LOC_UNRESOLVED)
{ {
@ -5780,7 +5780,7 @@ ada_add_block_symbols (std::vector<struct block_symbol> &result,
ALL_BLOCK_SYMBOLS (block, iter, sym) ALL_BLOCK_SYMBOLS (block, iter, sym)
{ {
if (symbol_matches_domain (sym->language (), if (symbol_matches_domain (sym->language (),
SYMBOL_DOMAIN (sym), domain)) sym->domain (), domain))
{ {
int cmp; int cmp;
@ -10411,7 +10411,7 @@ ada_var_value_operation::evaluate (struct type *expect_type,
{ {
symbol *sym = std::get<0> (m_storage).symbol; symbol *sym = std::get<0> (m_storage).symbol;
if (SYMBOL_DOMAIN (sym) == UNDEF_DOMAIN) if (sym->domain () == UNDEF_DOMAIN)
/* Only encountered when an unresolved symbol occurs in a /* Only encountered when an unresolved symbol occurs in a
context other than a function call, in which case, it is context other than a function call, in which case, it is
invalid. */ invalid. */
@ -10501,7 +10501,7 @@ ada_var_value_operation::resolve (struct expression *exp,
struct type *context_type) struct type *context_type)
{ {
symbol *sym = std::get<0> (m_storage).symbol; symbol *sym = std::get<0> (m_storage).symbol;
if (SYMBOL_DOMAIN (sym) == UNDEF_DOMAIN) if (sym->domain () == UNDEF_DOMAIN)
{ {
block_symbol resolved block_symbol resolved
= ada_resolve_variable (sym, std::get<0> (m_storage).block, = ada_resolve_variable (sym, std::get<0> (m_storage).block,
@ -10666,7 +10666,7 @@ ada_funcall_operation::evaluate (struct type *expect_type,
ada_var_value_operation *avv ada_var_value_operation *avv
= dynamic_cast<ada_var_value_operation *> (callee_op.get ()); = dynamic_cast<ada_var_value_operation *> (callee_op.get ());
if (avv != nullptr if (avv != nullptr
&& SYMBOL_DOMAIN (avv->get_symbol ()) == UNDEF_DOMAIN) && avv->get_symbol ()->domain () == UNDEF_DOMAIN)
error (_("Unexpected unresolved symbol, %s, during evaluation"), error (_("Unexpected unresolved symbol, %s, during evaluation"),
avv->get_symbol ()->print_name ()); avv->get_symbol ()->print_name ());
@ -10810,7 +10810,7 @@ ada_funcall_operation::resolve (struct expression *exp,
return false; return false;
symbol *sym = avv->get_symbol (); symbol *sym = avv->get_symbol ();
if (SYMBOL_DOMAIN (sym) != UNDEF_DOMAIN) if (sym->domain () != UNDEF_DOMAIN)
return false; return false;
const std::vector<operation_up> &args_up = std::get<1> (m_storage); const std::vector<operation_up> &args_up = std::get<1> (m_storage);

View file

@ -664,7 +664,7 @@ block_iter_match_next (const lookup_name_info &name,
bool bool
best_symbol (struct symbol *a, const domain_enum domain) best_symbol (struct symbol *a, const domain_enum domain)
{ {
return (SYMBOL_DOMAIN (a) == domain return (a->domain () == domain
&& a->aclass () != LOC_UNRESOLVED); && a->aclass () != LOC_UNRESOLVED);
} }
@ -678,11 +678,10 @@ better_symbol (struct symbol *a, struct symbol *b, const domain_enum domain)
if (b == NULL) if (b == NULL)
return a; return a;
if (SYMBOL_DOMAIN (a) == domain if (a->domain () == domain && b->domain () != domain)
&& SYMBOL_DOMAIN (b) != domain)
return a; return a;
if (SYMBOL_DOMAIN (b) == domain
&& SYMBOL_DOMAIN (a) != domain) if (b->domain () == domain && a->domain () != domain)
return b; return b;
if (a->aclass () != LOC_UNRESOLVED && b->aclass () == LOC_UNRESOLVED) if (a->aclass () != LOC_UNRESOLVED && b->aclass () == LOC_UNRESOLVED)
@ -730,7 +729,7 @@ block_lookup_symbol (const struct block *block, const char *name,
make sure there is no "better" matching symbol, i.e., one with make sure there is no "better" matching symbol, i.e., one with
exactly the same domain. PR 16253. */ exactly the same domain. PR 16253. */
if (symbol_matches_domain (sym->language (), if (symbol_matches_domain (sym->language (),
SYMBOL_DOMAIN (sym), domain)) sym->domain (), domain))
other = better_symbol (other, sym, domain); other = better_symbol (other, sym, domain);
} }
return other; return other;
@ -751,7 +750,7 @@ block_lookup_symbol (const struct block *block, const char *name,
ALL_BLOCK_SYMBOLS_WITH_NAME (block, lookup_name, iter, sym) ALL_BLOCK_SYMBOLS_WITH_NAME (block, lookup_name, iter, sym)
{ {
if (symbol_matches_domain (sym->language (), if (symbol_matches_domain (sym->language (),
SYMBOL_DOMAIN (sym), domain)) sym->domain (), domain))
{ {
sym_found = sym; sym_found = sym;
if (!SYMBOL_IS_ARGUMENT (sym)) if (!SYMBOL_IS_ARGUMENT (sym))
@ -819,7 +818,7 @@ block_lookup_symbol_primary (const struct block *block, const char *name,
STRUCT vs VAR domain symbols. So if a matching symbol is found, STRUCT vs VAR domain symbols. So if a matching symbol is found,
make sure there is no "better" matching symbol, i.e., one with make sure there is no "better" matching symbol, i.e., one with
exactly the same domain. PR 16253. */ exactly the same domain. PR 16253. */
if (symbol_matches_domain (sym->language (), SYMBOL_DOMAIN (sym), domain)) if (symbol_matches_domain (sym->language (), sym->domain (), domain))
other = better_symbol (other, sym, domain); other = better_symbol (other, sym, domain);
} }
@ -846,7 +845,7 @@ block_find_symbol (const struct block *block, const char *name,
{ {
/* MATCHER is deliberately called second here so that it never sees /* MATCHER is deliberately called second here so that it never sees
a non-domain-matching symbol. */ a non-domain-matching symbol. */
if (symbol_matches_domain (sym->language (), SYMBOL_DOMAIN (sym), domain) if (symbol_matches_domain (sym->language (), sym->domain (), domain)
&& matcher (sym, data)) && matcher (sym, data))
return sym; return sym;
} }

View file

@ -1491,7 +1491,7 @@ patch_opaque_types (struct symtab *s)
but search the whole chain, as there may be several syms but search the whole chain, as there may be several syms
from different files with the same name. */ from different files with the same name. */
if (real_sym->aclass () == LOC_TYPEDEF if (real_sym->aclass () == LOC_TYPEDEF
&& SYMBOL_DOMAIN (real_sym) == VAR_DOMAIN && real_sym->domain () == VAR_DOMAIN
&& SYMBOL_TYPE (real_sym)->code () == TYPE_CODE_PTR && SYMBOL_TYPE (real_sym)->code () == TYPE_CODE_PTR
&& TYPE_LENGTH (TYPE_TARGET_TYPE (SYMBOL_TYPE (real_sym))) != 0) && TYPE_LENGTH (TYPE_TARGET_TYPE (SYMBOL_TYPE (real_sym))) != 0)
{ {
@ -1565,7 +1565,7 @@ process_coff_symbol (struct coff_symbol *cs,
/* default assumptions */ /* default assumptions */
SYMBOL_VALUE (sym) = cs->c_value; SYMBOL_VALUE (sym) = cs->c_value;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
sym->set_section_index (cs_to_section (cs, objfile)); sym->set_section_index (cs_to_section (cs, objfile));
if (ISFCN (cs->c_type)) if (ISFCN (cs->c_type))
@ -1653,7 +1653,7 @@ process_coff_symbol (struct coff_symbol *cs,
case C_TPDEF: case C_TPDEF:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
/* If type has no name, give it one. */ /* If type has no name, give it one. */
if (SYMBOL_TYPE (sym)->name () == 0) if (SYMBOL_TYPE (sym)->name () == 0)
@ -1708,7 +1708,7 @@ process_coff_symbol (struct coff_symbol *cs,
case C_UNTAG: case C_UNTAG:
case C_ENTAG: case C_ENTAG:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = STRUCT_DOMAIN; sym->set_domain (STRUCT_DOMAIN);
/* Some compilers try to be helpful by inventing "fake" /* Some compilers try to be helpful by inventing "fake"
names for anonymous enums, structures, and unions, like names for anonymous enums, structures, and unions, like
@ -2099,7 +2099,7 @@ coff_read_enum_type (int index, int length, int lastsym,
name = obstack_strdup (&objfile->objfile_obstack, name); name = obstack_strdup (&objfile->objfile_obstack, name);
sym->set_linkage_name (name); sym->set_linkage_name (name);
sym->set_aclass_index (LOC_CONST); sym->set_aclass_index (LOC_CONST);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
SYMBOL_VALUE (sym) = ms->c_value; SYMBOL_VALUE (sym) = ms->c_value;
add_symbol_to_list (sym, symlist); add_symbol_to_list (sym, symlist);
nsyms++; nsyms++;

View file

@ -67,7 +67,7 @@ convert_one_symbol (compile_c_instance *context,
else else
sym_type = context->convert_type (SYMBOL_TYPE (sym.symbol)); sym_type = context->convert_type (SYMBOL_TYPE (sym.symbol));
if (SYMBOL_DOMAIN (sym.symbol) == STRUCT_DOMAIN) if (sym.symbol->domain () == STRUCT_DOMAIN)
{ {
/* Binding a tag, so we don't need to build a decl. */ /* Binding a tag, so we don't need to build a decl. */
context->plugin ().tagbind (sym.symbol->natural_name (), context->plugin ().tagbind (sym.symbol->natural_name (),

View file

@ -58,7 +58,7 @@ convert_one_symbol (compile_cplus_instance *instance,
else else
sym_type = instance->convert_type (SYMBOL_TYPE (sym.symbol)); sym_type = instance->convert_type (SYMBOL_TYPE (sym.symbol));
if (SYMBOL_DOMAIN (sym.symbol) == STRUCT_DOMAIN) if (sym.symbol->domain () == STRUCT_DOMAIN)
{ {
/* Nothing to do. */ /* Nothing to do. */
} }
@ -374,7 +374,7 @@ gcc_cplus_convert_symbol (void *datum,
{ {
found = true; found = true;
convert_symbol_sym (instance, identifier, it, convert_symbol_sym (instance, identifier, it,
SYMBOL_DOMAIN (it.symbol)); it.symbol->domain ());
} }
} }

View file

@ -451,7 +451,7 @@ ctf_add_enum_member_cb (const char *name, int enum_value, void *arg)
sym->set_language (language_c, &ccp->of->objfile_obstack); sym->set_language (language_c, &ccp->of->objfile_obstack);
sym->compute_and_set_names (name, false, ccp->of->per_bfd); sym->compute_and_set_names (name, false, ccp->of->per_bfd);
sym->set_aclass_index (LOC_CONST); sym->set_aclass_index (LOC_CONST);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
SYMBOL_TYPE (sym) = fip->ptype; SYMBOL_TYPE (sym) = fip->ptype;
add_symbol_to_list (sym, ccp->builder->get_global_symbols ()); add_symbol_to_list (sym, ccp->builder->get_global_symbols ());
} }
@ -479,7 +479,7 @@ new_symbol (struct ctf_context *ccp, struct type *type, ctf_id_t tid)
sym->set_language (language_c, &objfile->objfile_obstack); sym->set_language (language_c, &objfile->objfile_obstack);
sym->compute_and_set_names (name, false, objfile->per_bfd); sym->compute_and_set_names (name, false, objfile->per_bfd);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
sym->set_aclass_index (LOC_OPTIMIZED_OUT); sym->set_aclass_index (LOC_OPTIMIZED_OUT);
if (type != nullptr) if (type != nullptr)
@ -492,7 +492,7 @@ new_symbol (struct ctf_context *ccp, struct type *type, ctf_id_t tid)
case CTF_K_UNION: case CTF_K_UNION:
case CTF_K_ENUM: case CTF_K_ENUM:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = STRUCT_DOMAIN; sym->set_domain (STRUCT_DOMAIN);
break; break;
case CTF_K_FUNCTION: case CTF_K_FUNCTION:
sym->set_aclass_index (LOC_STATIC); sym->set_aclass_index (LOC_STATIC);
@ -506,7 +506,7 @@ new_symbol (struct ctf_context *ccp, struct type *type, ctf_id_t tid)
case CTF_K_INTEGER: case CTF_K_INTEGER:
case CTF_K_FLOAT: case CTF_K_FLOAT:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
break; break;
case CTF_K_POINTER: case CTF_K_POINTER:
break; break;
@ -1170,7 +1170,7 @@ ctf_add_var_cb (const char *name, ctf_id_t id, void *arg)
sym = new (&ccp->of->objfile_obstack) symbol; sym = new (&ccp->of->objfile_obstack) symbol;
OBJSTAT (ccp->of, n_syms++); OBJSTAT (ccp->of, n_syms++);
SYMBOL_TYPE (sym) = type; SYMBOL_TYPE (sym) = type;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
sym->set_aclass_index (LOC_OPTIMIZED_OUT); sym->set_aclass_index (LOC_OPTIMIZED_OUT);
sym->compute_and_set_names (name, false, ccp->of->per_bfd); sym->compute_and_set_names (name, false, ccp->of->per_bfd);
add_symbol_to_list (sym, ccp->builder->get_file_symbols ()); add_symbol_to_list (sym, ccp->builder->get_file_symbols ());
@ -1206,7 +1206,7 @@ add_stt_entries (struct ctf_context *ccp, int functions)
sym = new (&ccp->of->objfile_obstack) symbol; sym = new (&ccp->of->objfile_obstack) symbol;
OBJSTAT (ccp->of, n_syms++); OBJSTAT (ccp->of, n_syms++);
SYMBOL_TYPE (sym) = type; SYMBOL_TYPE (sym) = type;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
sym->set_aclass_index (LOC_STATIC); sym->set_aclass_index (LOC_STATIC);
sym->compute_and_set_names (tname, false, ccp->of->per_bfd); sym->compute_and_set_names (tname, false, ccp->of->per_bfd);
add_symbol_to_list (sym, ccp->builder->get_global_symbols ()); add_symbol_to_list (sym, ccp->builder->get_global_symbols ());

View file

@ -8916,7 +8916,7 @@ fixup_go_packaging (struct dwarf2_cu *cu)
sym->compute_and_set_names (saved_package_name, false, objfile->per_bfd); sym->compute_and_set_names (saved_package_name, false, objfile->per_bfd);
/* This is not VAR_DOMAIN because we want a way to ensure a lookup of, /* This is not VAR_DOMAIN because we want a way to ensure a lookup of,
e.g., "main" finds the "main" module and not C's main(). */ e.g., "main" finds the "main" module and not C's main(). */
SYMBOL_DOMAIN (sym) = STRUCT_DOMAIN; sym->set_domain (STRUCT_DOMAIN);
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_TYPE (sym) = type; SYMBOL_TYPE (sym) = type;
@ -21717,7 +21717,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
/* Default assumptions. /* Default assumptions.
Use the passed type or decode it from the die. */ Use the passed type or decode it from the die. */
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
sym->set_aclass_index (LOC_OPTIMIZED_OUT); sym->set_aclass_index (LOC_OPTIMIZED_OUT);
if (type != NULL) if (type != NULL)
SYMBOL_TYPE (sym) = type; SYMBOL_TYPE (sym) = type;
@ -21765,7 +21765,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
else else
sym->set_aclass_index (LOC_OPTIMIZED_OUT); sym->set_aclass_index (LOC_OPTIMIZED_OUT);
SYMBOL_TYPE (sym) = objfile_type (objfile)->builtin_core_addr; SYMBOL_TYPE (sym) = objfile_type (objfile)->builtin_core_addr;
SYMBOL_DOMAIN (sym) = LABEL_DOMAIN; sym->set_domain (LABEL_DOMAIN);
add_symbol_to_list (sym, cu->list_in_scope); add_symbol_to_list (sym, cu->list_in_scope);
break; break;
case DW_TAG_subprogram: case DW_TAG_subprogram:
@ -21964,7 +21964,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
case DW_TAG_set_type: case DW_TAG_set_type:
case DW_TAG_enumeration_type: case DW_TAG_enumeration_type:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = STRUCT_DOMAIN; sym->set_domain (STRUCT_DOMAIN);
{ {
/* NOTE: carlton/2003-11-10: C++ class symbols shouldn't /* NOTE: carlton/2003-11-10: C++ class symbols shouldn't
@ -22002,14 +22002,14 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
break; break;
case DW_TAG_typedef: case DW_TAG_typedef:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
list_to_add = cu->list_in_scope; list_to_add = cu->list_in_scope;
break; break;
case DW_TAG_array_type: case DW_TAG_array_type:
case DW_TAG_base_type: case DW_TAG_base_type:
case DW_TAG_subrange_type: case DW_TAG_subrange_type:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
list_to_add = cu->list_in_scope; list_to_add = cu->list_in_scope;
break; break;
case DW_TAG_enumerator: case DW_TAG_enumerator:
@ -22036,12 +22036,12 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
break; break;
case DW_TAG_module: case DW_TAG_module:
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_DOMAIN (sym) = MODULE_DOMAIN; sym->set_domain (MODULE_DOMAIN);
list_to_add = cu->get_builder ()->get_global_symbols (); list_to_add = cu->get_builder ()->get_global_symbols ();
break; break;
case DW_TAG_common_block: case DW_TAG_common_block:
sym->set_aclass_index (LOC_COMMON_BLOCK); sym->set_aclass_index (LOC_COMMON_BLOCK);
SYMBOL_DOMAIN (sym) = COMMON_BLOCK_DOMAIN; sym->set_domain (COMMON_BLOCK_DOMAIN);
add_symbol_to_list (sym, cu->list_in_scope); add_symbol_to_list (sym, cu->list_in_scope);
break; break;
default: default:

View file

@ -595,7 +595,7 @@ info_common_command_for_block (const struct block *block, const char *comname,
get_user_print_options (&opts); get_user_print_options (&opts);
ALL_BLOCK_SYMBOLS (block, iter, sym) ALL_BLOCK_SYMBOLS (block, iter, sym)
if (SYMBOL_DOMAIN (sym) == COMMON_BLOCK_DOMAIN) if (sym->domain () == COMMON_BLOCK_DOMAIN)
{ {
const struct common_block *common = SYMBOL_VALUE_COMMON_BLOCK (sym); const struct common_block *common = SYMBOL_VALUE_COMMON_BLOCK (sym);
size_t index; size_t index;

View file

@ -559,7 +559,7 @@ finalize_symtab (struct gdb_symtab *stab, struct objfile *objfile)
BLOCK_END (new_block) = (CORE_ADDR) gdb_block_iter.end; BLOCK_END (new_block) = (CORE_ADDR) gdb_block_iter.end;
/* The name. */ /* The name. */
SYMBOL_DOMAIN (block_name) = VAR_DOMAIN; block_name->set_domain (VAR_DOMAIN);
block_name->set_aclass_index (LOC_BLOCK); block_name->set_aclass_index (LOC_BLOCK);
symbol_set_symtab (block_name, filetab); symbol_set_symtab (block_name, filetab);
SYMBOL_TYPE (block_name) = lookup_function_type (block_type); SYMBOL_TYPE (block_name) = lookup_function_type (block_type);

View file

@ -1001,7 +1001,7 @@ language_arch_info::type_and_symbol::alloc_type_symbol
SYMBOL_OBJFILE_OWNED (symbol) = 0; SYMBOL_OBJFILE_OWNED (symbol) = 0;
symbol->set_section_index (0); symbol->set_section_index (0);
SYMBOL_TYPE (symbol) = type; SYMBOL_TYPE (symbol) = type;
SYMBOL_DOMAIN (symbol) = VAR_DOMAIN; symbol->set_domain (VAR_DOMAIN);
symbol->set_aclass_index (LOC_TYPEDEF); symbol->set_aclass_index (LOC_TYPEDEF);
return symbol; return symbol;
} }

View file

@ -3995,7 +3995,7 @@ find_label_symbols_in_block (const struct block *block,
ALL_BLOCK_SYMBOLS (block, iter, sym) ALL_BLOCK_SYMBOLS (block, iter, sym)
{ {
if (symbol_matches_domain (sym->language (), if (symbol_matches_domain (sym->language (),
SYMBOL_DOMAIN (sym), LABEL_DOMAIN) sym->domain (), LABEL_DOMAIN)
&& cmp (sym->search_name (), name, name_len) == 0) && cmp (sym->search_name (), name, name_len) == 0)
{ {
result->push_back ({sym, block}); result->push_back ({sym, block});

View file

@ -562,7 +562,7 @@ add_data_symbol (SYMR *sh, union aux_ext *ax, int bigend,
struct symbol *s, int aclass_index, struct block *b, struct symbol *s, int aclass_index, struct block *b,
struct objfile *objfile, const char *name) struct objfile *objfile, const char *name)
{ {
SYMBOL_DOMAIN (s) = VAR_DOMAIN; s->set_domain (VAR_DOMAIN);
s->set_aclass_index (aclass_index); s->set_aclass_index (aclass_index);
add_symbol (s, top_stack->cur_st, b); add_symbol (s, top_stack->cur_st, b);
@ -675,7 +675,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
name = "this"; /* FIXME, not alloc'd in obstack. */ name = "this"; /* FIXME, not alloc'd in obstack. */
s = new_symbol (name); s = new_symbol (name);
SYMBOL_DOMAIN (s) = VAR_DOMAIN; s->set_domain (VAR_DOMAIN);
SYMBOL_IS_ARGUMENT (s) = 1; SYMBOL_IS_ARGUMENT (s) = 1;
switch (sh->sc) switch (sh->sc)
{ {
@ -703,7 +703,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
case stLabel: /* label, goes into current block. */ case stLabel: /* label, goes into current block. */
s = new_symbol (name); s = new_symbol (name);
SYMBOL_DOMAIN (s) = VAR_DOMAIN; /* So that it can be used */ s->set_domain (VAR_DOMAIN); /* So that it can be used */
s->set_aclass_index (LOC_LABEL); /* but not misused. */ s->set_aclass_index (LOC_LABEL); /* but not misused. */
SET_SYMBOL_VALUE_ADDRESS (s, (CORE_ADDR) sh->value); SET_SYMBOL_VALUE_ADDRESS (s, (CORE_ADDR) sh->value);
SYMBOL_TYPE (s) = objfile_type (objfile)->builtin_int; SYMBOL_TYPE (s) = objfile_type (objfile)->builtin_int;
@ -744,7 +744,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
break; break;
} }
s = new_symbol (name); s = new_symbol (name);
SYMBOL_DOMAIN (s) = VAR_DOMAIN; s->set_domain (VAR_DOMAIN);
s->set_aclass_index (LOC_BLOCK); s->set_aclass_index (LOC_BLOCK);
/* Type of the return value. */ /* Type of the return value. */
if (SC_IS_UNDEF (sh->sc) || sh->sc == scNil) if (SC_IS_UNDEF (sh->sc) || sh->sc == scNil)
@ -1067,7 +1067,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
f->name ())); f->name ()));
enum_sym->set_aclass_index (LOC_CONST); enum_sym->set_aclass_index (LOC_CONST);
SYMBOL_TYPE (enum_sym) = t; SYMBOL_TYPE (enum_sym) = t;
SYMBOL_DOMAIN (enum_sym) = VAR_DOMAIN; enum_sym->set_domain (VAR_DOMAIN);
SYMBOL_VALUE (enum_sym) = tsym.value; SYMBOL_VALUE (enum_sym) = tsym.value;
if (SYMBOL_VALUE (enum_sym) < 0) if (SYMBOL_VALUE (enum_sym) < 0)
unsigned_enum = 0; unsigned_enum = 0;
@ -1097,7 +1097,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
} }
s = new_symbol (name); s = new_symbol (name);
SYMBOL_DOMAIN (s) = STRUCT_DOMAIN; s->set_domain (STRUCT_DOMAIN);
s->set_aclass_index (LOC_TYPEDEF); s->set_aclass_index (LOC_TYPEDEF);
SYMBOL_VALUE (s) = 0; SYMBOL_VALUE (s) = 0;
SYMBOL_TYPE (s) = t; SYMBOL_TYPE (s) = t;
@ -1154,7 +1154,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
/* Make up special symbol to contain procedure specific info. */ /* Make up special symbol to contain procedure specific info. */
s = new_symbol (MDEBUG_EFI_SYMBOL_NAME); s = new_symbol (MDEBUG_EFI_SYMBOL_NAME);
SYMBOL_DOMAIN (s) = LABEL_DOMAIN; s->set_domain (LABEL_DOMAIN);
s->set_aclass_index (LOC_CONST); s->set_aclass_index (LOC_CONST);
SYMBOL_TYPE (s) = objfile_type (mdebugread_objfile)->builtin_void; SYMBOL_TYPE (s) = objfile_type (mdebugread_objfile)->builtin_void;
e = OBSTACK_ZALLOC (&mdebugread_objfile->objfile_obstack, e = OBSTACK_ZALLOC (&mdebugread_objfile->objfile_obstack,
@ -1295,7 +1295,7 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
if (has_opaque_xref (cur_fdr, sh)) if (has_opaque_xref (cur_fdr, sh))
break; break;
s = new_symbol (name); s = new_symbol (name);
SYMBOL_DOMAIN (s) = VAR_DOMAIN; s->set_domain (VAR_DOMAIN);
s->set_aclass_index (LOC_TYPEDEF); s->set_aclass_index (LOC_TYPEDEF);
SYMBOL_BLOCK_VALUE (s) = top_stack->cur_block; SYMBOL_BLOCK_VALUE (s) = top_stack->cur_block;
SYMBOL_TYPE (s) = t; SYMBOL_TYPE (s) = t;
@ -1987,7 +1987,7 @@ parse_procedure (PDR *pr, struct compunit_symtab *search_symtab,
#else #else
/* FIXME -- delete. We can't do symbol allocation now; it's all done. */ /* FIXME -- delete. We can't do symbol allocation now; it's all done. */
s = new_symbol (sh_name); s = new_symbol (sh_name);
SYMBOL_DOMAIN (s) = VAR_DOMAIN; s->set_domain (VAR_DOMAIN);
SYMBOL_CLASS (s) = LOC_BLOCK; SYMBOL_CLASS (s) = LOC_BLOCK;
/* Don't know its type, hope int is ok. */ /* Don't know its type, hope int is ok. */
SYMBOL_TYPE (s) SYMBOL_TYPE (s)
@ -3987,7 +3987,7 @@ mdebug_expand_psymtab (legacy_psymtab *pst, struct objfile *objfile)
mdebug_extra_func_info); mdebug_extra_func_info);
struct symbol *s = new_symbol (MDEBUG_EFI_SYMBOL_NAME); struct symbol *s = new_symbol (MDEBUG_EFI_SYMBOL_NAME);
SYMBOL_DOMAIN (s) = LABEL_DOMAIN; s->set_domain (LABEL_DOMAIN);
s->set_aclass_index (LOC_CONST); s->set_aclass_index (LOC_CONST);
SYMBOL_TYPE (s) = objfile_type (objfile)->builtin_void; SYMBOL_TYPE (s) = objfile_type (objfile)->builtin_void;
SYMBOL_VALUE_BYTES (s) = (gdb_byte *) e; SYMBOL_VALUE_BYTES (s) = (gdb_byte *) e;
@ -4467,7 +4467,7 @@ mylookup_symbol (const char *name, const struct block *block,
ALL_BLOCK_SYMBOLS (block, iter, sym) ALL_BLOCK_SYMBOLS (block, iter, sym)
{ {
if (sym->linkage_name ()[0] == inc if (sym->linkage_name ()[0] == inc
&& SYMBOL_DOMAIN (sym) == domain && sym->domain () == domain
&& sym->aclass () == theclass && sym->aclass () == theclass
&& strcmp (sym->linkage_name (), name) == 0) && strcmp (sym->linkage_name (), name) == 0)
return sym; return sym;

View file

@ -424,7 +424,7 @@ patch_block_stabs (struct pending *symbols, struct pending_stabs *stabs,
ld will remove it from the executable. There is then ld will remove it from the executable. There is then
a N_GSYM stab for it, but no regular (C_EXT) symbol. */ a N_GSYM stab for it, but no regular (C_EXT) symbol. */
sym = new (&objfile->objfile_obstack) symbol; sym = new (&objfile->objfile_obstack) symbol;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
sym->set_aclass_index (LOC_OPTIMIZED_OUT); sym->set_aclass_index (LOC_OPTIMIZED_OUT);
sym->set_linkage_name sym->set_linkage_name
(obstack_strndup (&objfile->objfile_obstack, name, pp - name)); (obstack_strndup (&objfile->objfile_obstack, name, pp - name));
@ -785,7 +785,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
{ {
sym->set_aclass_index (LOC_CONST); sym->set_aclass_index (LOC_CONST);
SYMBOL_TYPE (sym) = error_type (&p, objfile); SYMBOL_TYPE (sym) = error_type (&p, objfile);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_file_symbols ()); add_symbol_to_list (sym, get_file_symbols ());
return sym; return sym;
} }
@ -844,7 +844,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
{ {
sym->set_aclass_index (LOC_CONST); sym->set_aclass_index (LOC_CONST);
SYMBOL_TYPE (sym) = error_type (&p, objfile); SYMBOL_TYPE (sym) = error_type (&p, objfile);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_file_symbols ()); add_symbol_to_list (sym, get_file_symbols ());
return sym; return sym;
} }
@ -869,7 +869,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
{ {
sym->set_aclass_index (LOC_CONST); sym->set_aclass_index (LOC_CONST);
SYMBOL_TYPE (sym) = error_type (&p, objfile); SYMBOL_TYPE (sym) = error_type (&p, objfile);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_file_symbols ()); add_symbol_to_list (sym, get_file_symbols ());
return sym; return sym;
} }
@ -924,7 +924,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
SYMBOL_TYPE (sym) = error_type (&p, objfile); SYMBOL_TYPE (sym) = error_type (&p, objfile);
} }
} }
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_file_symbols ()); add_symbol_to_list (sym, get_file_symbols ());
return sym; return sym;
@ -932,7 +932,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
/* The name of a caught exception. */ /* The name of a caught exception. */
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_LABEL); sym->set_aclass_index (LOC_LABEL);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
SET_SYMBOL_VALUE_ADDRESS (sym, valu); SET_SYMBOL_VALUE_ADDRESS (sym, valu);
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
break; break;
@ -941,7 +941,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
/* A static function definition. */ /* A static function definition. */
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_BLOCK); sym->set_aclass_index (LOC_BLOCK);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_file_symbols ()); add_symbol_to_list (sym, get_file_symbols ());
/* fall into process_function_types. */ /* fall into process_function_types. */
@ -1013,7 +1013,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
/* A global function definition. */ /* A global function definition. */
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_BLOCK); sym->set_aclass_index (LOC_BLOCK);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_global_symbols ()); add_symbol_to_list (sym, get_global_symbols ());
goto process_function_types; goto process_function_types;
@ -1024,7 +1024,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
These definitions appear at the end of the namelist. */ These definitions appear at the end of the namelist. */
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_STATIC); sym->set_aclass_index (LOC_STATIC);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
/* Don't add symbol references to global_sym_chain. /* Don't add symbol references to global_sym_chain.
Symbol references don't have valid names and wont't match up with Symbol references don't have valid names and wont't match up with
minimal symbols when the global_sym_chain is relocated. minimal symbols when the global_sym_chain is relocated.
@ -1046,7 +1046,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_LOCAL); sym->set_aclass_index (LOC_LOCAL);
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
break; break;
@ -1066,7 +1066,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
sym->set_aclass_index (LOC_ARG); sym->set_aclass_index (LOC_ARG);
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
SYMBOL_IS_ARGUMENT (sym) = 1; SYMBOL_IS_ARGUMENT (sym) = 1;
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
@ -1116,7 +1116,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
sym->set_aclass_index (stab_register_index); sym->set_aclass_index (stab_register_index);
SYMBOL_IS_ARGUMENT (sym) = 1; SYMBOL_IS_ARGUMENT (sym) = 1;
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
break; break;
@ -1125,7 +1125,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (stab_register_index); sym->set_aclass_index (stab_register_index);
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
if (within_function) if (within_function)
{ {
/* Sun cc uses a pair of symbols, one 'p' and one 'r', with /* Sun cc uses a pair of symbols, one 'p' and one 'r', with
@ -1180,7 +1180,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_STATIC); sym->set_aclass_index (LOC_STATIC);
SET_SYMBOL_VALUE_ADDRESS (sym, valu); SET_SYMBOL_VALUE_ADDRESS (sym, valu);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_file_symbols ()); add_symbol_to_list (sym, get_file_symbols ());
break; break;
@ -1211,7 +1211,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
/* C++ vagaries: we may have a type which is derived from /* C++ vagaries: we may have a type which is derived from
a base type which did not have its name defined when the a base type which did not have its name defined when the
derived class was output. We fill in the derived class's derived class was output. We fill in the derived class's
@ -1288,7 +1288,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
*struct_sym = *sym; *struct_sym = *sym;
struct_sym->set_aclass_index (LOC_TYPEDEF); struct_sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_VALUE (struct_sym) = valu; SYMBOL_VALUE (struct_sym) = valu;
SYMBOL_DOMAIN (struct_sym) = STRUCT_DOMAIN; struct_sym->set_domain (STRUCT_DOMAIN);
if (SYMBOL_TYPE (sym)->name () == 0) if (SYMBOL_TYPE (sym)->name () == 0)
SYMBOL_TYPE (sym)->set_name SYMBOL_TYPE (sym)->set_name
(obconcat (&objfile->objfile_obstack, sym->linkage_name (), (obconcat (&objfile->objfile_obstack, sym->linkage_name (),
@ -1315,7 +1315,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
sym->set_aclass_index (LOC_TYPEDEF); sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = STRUCT_DOMAIN; sym->set_domain (STRUCT_DOMAIN);
if (SYMBOL_TYPE (sym)->name () == 0) if (SYMBOL_TYPE (sym)->name () == 0)
SYMBOL_TYPE (sym)->set_name SYMBOL_TYPE (sym)->set_name
(obconcat (&objfile->objfile_obstack, sym->linkage_name (), (obconcat (&objfile->objfile_obstack, sym->linkage_name (),
@ -1330,7 +1330,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
*typedef_sym = *sym; *typedef_sym = *sym;
typedef_sym->set_aclass_index (LOC_TYPEDEF); typedef_sym->set_aclass_index (LOC_TYPEDEF);
SYMBOL_VALUE (typedef_sym) = valu; SYMBOL_VALUE (typedef_sym) = valu;
SYMBOL_DOMAIN (typedef_sym) = VAR_DOMAIN; typedef_sym->set_domain (VAR_DOMAIN);
if (SYMBOL_TYPE (sym)->name () == 0) if (SYMBOL_TYPE (sym)->name () == 0)
SYMBOL_TYPE (sym)->set_name SYMBOL_TYPE (sym)->set_name
(obconcat (&objfile->objfile_obstack, sym->linkage_name (), (obconcat (&objfile->objfile_obstack, sym->linkage_name (),
@ -1344,7 +1344,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_STATIC); sym->set_aclass_index (LOC_STATIC);
SET_SYMBOL_VALUE_ADDRESS (sym, valu); SET_SYMBOL_VALUE_ADDRESS (sym, valu);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
break; break;
@ -1354,7 +1354,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
sym->set_aclass_index (LOC_REF_ARG); sym->set_aclass_index (LOC_REF_ARG);
SYMBOL_IS_ARGUMENT (sym) = 1; SYMBOL_IS_ARGUMENT (sym) = 1;
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
break; break;
@ -1364,7 +1364,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
sym->set_aclass_index (stab_regparm_index); sym->set_aclass_index (stab_regparm_index);
SYMBOL_IS_ARGUMENT (sym) = 1; SYMBOL_IS_ARGUMENT (sym) = 1;
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
break; break;
@ -1376,7 +1376,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_TYPE (sym) = read_type (&p, objfile);
sym->set_aclass_index (LOC_LOCAL); sym->set_aclass_index (LOC_LOCAL);
SYMBOL_VALUE (sym) = valu; SYMBOL_VALUE (sym) = valu;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_local_symbols ()); add_symbol_to_list (sym, get_local_symbols ());
break; break;
@ -1384,7 +1384,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
SYMBOL_TYPE (sym) = error_type (&p, objfile); SYMBOL_TYPE (sym) = error_type (&p, objfile);
sym->set_aclass_index (LOC_CONST); sym->set_aclass_index (LOC_CONST);
SYMBOL_VALUE (sym) = 0; SYMBOL_VALUE (sym) = 0;
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
add_symbol_to_list (sym, get_file_symbols ()); add_symbol_to_list (sym, get_file_symbols ());
break; break;
} }
@ -1629,7 +1629,7 @@ again:
struct symbol *sym = ppt->symbol[i]; struct symbol *sym = ppt->symbol[i];
if (sym->aclass () == LOC_TYPEDEF if (sym->aclass () == LOC_TYPEDEF
&& SYMBOL_DOMAIN (sym) == STRUCT_DOMAIN && sym->domain () == STRUCT_DOMAIN
&& (SYMBOL_TYPE (sym)->code () == code) && (SYMBOL_TYPE (sym)->code () == code)
&& strcmp (sym->linkage_name (), type_name) == 0) && strcmp (sym->linkage_name (), type_name) == 0)
{ {
@ -3593,7 +3593,7 @@ read_enum_type (const char **pp, struct type *type,
sym->set_language (get_current_subfile ()->language, sym->set_language (get_current_subfile ()->language,
&objfile->objfile_obstack); &objfile->objfile_obstack);
sym->set_aclass_index (LOC_CONST); sym->set_aclass_index (LOC_CONST);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
SYMBOL_VALUE (sym) = n; SYMBOL_VALUE (sym) = n;
if (n < 0) if (n < 0)
unsigned_enum = 0; unsigned_enum = 0;
@ -4467,7 +4467,7 @@ cleanup_undefined_types_1 (void)
struct symbol *sym = ppt->symbol[i]; struct symbol *sym = ppt->symbol[i];
if (sym->aclass () == LOC_TYPEDEF if (sym->aclass () == LOC_TYPEDEF
&& SYMBOL_DOMAIN (sym) == STRUCT_DOMAIN && sym->domain () == STRUCT_DOMAIN
&& (SYMBOL_TYPE (sym)->code () == (*type)->code ()) && (SYMBOL_TYPE (sym)->code () == (*type)->code ())
&& ((*type)->instance_flags () && ((*type)->instance_flags ()
== SYMBOL_TYPE (sym)->instance_flags ()) == SYMBOL_TYPE (sym)->instance_flags ())

View file

@ -2258,7 +2258,7 @@ iterate_over_block_locals (const struct block *b,
case LOC_OPTIMIZED_OUT: case LOC_OPTIMIZED_OUT:
if (SYMBOL_IS_ARGUMENT (sym)) if (SYMBOL_IS_ARGUMENT (sym))
break; break;
if (SYMBOL_DOMAIN (sym) == COMMON_BLOCK_DOMAIN) if (sym->domain () == COMMON_BLOCK_DOMAIN)
break; break;
(*cb) (sym->print_name (), sym, cb_data); (*cb) (sym->print_name (), sym, cb_data);
break; break;

View file

@ -508,7 +508,7 @@ print_symbol (struct gdbarch *gdbarch, struct symbol *symbol,
section = NULL; section = NULL;
print_spaces_filtered (depth, outfile); print_spaces_filtered (depth, outfile);
if (SYMBOL_DOMAIN (symbol) == LABEL_DOMAIN) if (symbol->domain () == LABEL_DOMAIN)
{ {
fprintf_filtered (outfile, "label %s at ", symbol->print_name ()); fprintf_filtered (outfile, "label %s at ", symbol->print_name ());
fputs_filtered (paddress (gdbarch, SYMBOL_VALUE_ADDRESS (symbol)), fputs_filtered (paddress (gdbarch, SYMBOL_VALUE_ADDRESS (symbol)),
@ -521,7 +521,7 @@ print_symbol (struct gdbarch *gdbarch, struct symbol *symbol,
return; return;
} }
if (SYMBOL_DOMAIN (symbol) == STRUCT_DOMAIN) if (symbol->domain () == STRUCT_DOMAIN)
{ {
if (SYMBOL_TYPE (symbol)->name ()) if (SYMBOL_TYPE (symbol)->name ())
{ {

View file

@ -1229,7 +1229,7 @@ eq_symbol_entry (const struct symbol_cache_slot *slot,
else else
{ {
slot_name = slot->value.found.symbol->search_name (); slot_name = slot->value.found.symbol->search_name ();
slot_domain = SYMBOL_DOMAIN (slot->value.found.symbol); slot_domain = slot->value.found.symbol->domain ();
} }
/* NULL names match. */ /* NULL names match. */
@ -1582,7 +1582,7 @@ symbol_cache_dump (const struct symbol_cache *cache)
printf_filtered (" [%4u] = %s, %s %s\n", i, printf_filtered (" [%4u] = %s, %s %s\n", i,
host_address_to_string (context), host_address_to_string (context),
found->print_name (), found->print_name (),
domain_name (SYMBOL_DOMAIN (found))); domain_name (found->domain ()));
break; break;
} }
} }
@ -2329,7 +2329,7 @@ lookup_symbol_in_objfile_symtabs (struct objfile *objfile,
break; break;
} }
if (symbol_matches_domain (result.symbol->language (), if (symbol_matches_domain (result.symbol->language (),
SYMBOL_DOMAIN (result.symbol), domain)) result.symbol->domain (), domain))
{ {
struct symbol *better struct symbol *better
= better_symbol (other.symbol, result.symbol, domain); = better_symbol (other.symbol, result.symbol, domain);
@ -2906,7 +2906,7 @@ iterate_over_symbols (const struct block *block,
ALL_BLOCK_SYMBOLS_WITH_NAME (block, name, iter, sym) ALL_BLOCK_SYMBOLS_WITH_NAME (block, name, iter, sym)
{ {
if (symbol_matches_domain (sym->language (), SYMBOL_DOMAIN (sym), domain)) if (symbol_matches_domain (sym->language (), sym->domain (), domain))
{ {
struct block_symbol block_sym = {sym, block}; struct block_symbol block_sym = {sym, block};
@ -4847,9 +4847,9 @@ global_symbol_searcher::add_matching_symbols
sym))) sym)))
|| (kind == TYPES_DOMAIN || (kind == TYPES_DOMAIN
&& sym->aclass () == LOC_TYPEDEF && sym->aclass () == LOC_TYPEDEF
&& SYMBOL_DOMAIN (sym) != MODULE_DOMAIN) && sym->domain () != MODULE_DOMAIN)
|| (kind == MODULES_DOMAIN || (kind == MODULES_DOMAIN
&& SYMBOL_DOMAIN (sym) == MODULE_DOMAIN && sym->domain () == MODULE_DOMAIN
&& SYMBOL_LINE (sym) != 0)))) && SYMBOL_LINE (sym) != 0))))
{ {
if (result_set->size () < m_max_search_results) if (result_set->size () < m_max_search_results)
@ -5030,7 +5030,7 @@ symbol_to_info_string (struct symbol *sym, int block,
/* Typedef that is not a C++ class. */ /* Typedef that is not a C++ class. */
if (kind == TYPES_DOMAIN if (kind == TYPES_DOMAIN
&& SYMBOL_DOMAIN (sym) != STRUCT_DOMAIN) && sym->domain () != STRUCT_DOMAIN)
{ {
string_file tmp_stream; string_file tmp_stream;
@ -5051,7 +5051,7 @@ symbol_to_info_string (struct symbol *sym, int block,
/* variable, func, or typedef-that-is-c++-class. */ /* variable, func, or typedef-that-is-c++-class. */
else if (kind < TYPES_DOMAIN else if (kind < TYPES_DOMAIN
|| (kind == TYPES_DOMAIN || (kind == TYPES_DOMAIN
&& SYMBOL_DOMAIN (sym) == STRUCT_DOMAIN)) && sym->domain () == STRUCT_DOMAIN))
{ {
string_file tmp_stream; string_file tmp_stream;
@ -5525,7 +5525,7 @@ completion_list_add_symbol (completion_tracker &tracker,
the msymbol name and removes the msymbol name from the completion the msymbol name and removes the msymbol name from the completion
tracker. */ tracker. */
if (sym->language () == language_cplus if (sym->language () == language_cplus
&& SYMBOL_DOMAIN (sym) == VAR_DOMAIN && sym->domain () == VAR_DOMAIN
&& sym->aclass () == LOC_BLOCK) && sym->aclass () == LOC_BLOCK)
{ {
/* The call to canonicalize returns the empty string if the input /* The call to canonicalize returns the empty string if the input
@ -5788,7 +5788,7 @@ add_symtab_completions (struct compunit_symtab *cust,
continue; continue;
if (code == TYPE_CODE_UNDEF if (code == TYPE_CODE_UNDEF
|| (SYMBOL_DOMAIN (sym) == STRUCT_DOMAIN || (sym->domain () == STRUCT_DOMAIN
&& SYMBOL_TYPE (sym)->code () == code)) && SYMBOL_TYPE (sym)->code () == code))
completion_list_add_symbol (tracker, sym, completion_list_add_symbol (tracker, sym,
lookup_name, lookup_name,
@ -5941,7 +5941,7 @@ default_collect_symbol_completion_matches_break_on
completion_list_add_fields (tracker, sym, lookup_name, completion_list_add_fields (tracker, sym, lookup_name,
sym_text, word); sym_text, word);
} }
else if (SYMBOL_DOMAIN (sym) == STRUCT_DOMAIN else if (sym->domain () == STRUCT_DOMAIN
&& SYMBOL_TYPE (sym)->code () == code) && SYMBOL_TYPE (sym)->code () == code)
completion_list_add_symbol (tracker, sym, lookup_name, completion_list_add_symbol (tracker, sym, lookup_name,
sym_text, word); sym_text, word);

View file

@ -1113,7 +1113,7 @@ struct symbol : public general_symbol_info, public allocate_on_obstack
{ {
symbol () symbol ()
/* Class-initialization of bitfields is only allowed in C++20. */ /* Class-initialization of bitfields is only allowed in C++20. */
: domain (UNDEF_DOMAIN), : m_domain (UNDEF_DOMAIN),
m_aclass_index (0), m_aclass_index (0),
is_objfile_owned (1), is_objfile_owned (1),
is_argument (0), is_argument (0),
@ -1158,6 +1158,16 @@ struct symbol : public general_symbol_info, public allocate_on_obstack
return this->impl ().aclass; return this->impl ().aclass;
} }
domain_enum domain () const
{
return m_domain;
}
void set_domain (domain_enum domain)
{
m_domain = domain;
}
/* Data type of value */ /* Data type of value */
struct type *type = nullptr; struct type *type = nullptr;
@ -1178,7 +1188,7 @@ struct symbol : public general_symbol_info, public allocate_on_obstack
/* Domain code. */ /* Domain code. */
ENUM_BITFIELD(domain_enum_tag) domain : SYMBOL_DOMAIN_BITS; ENUM_BITFIELD(domain_enum_tag) m_domain : SYMBOL_DOMAIN_BITS;
/* Address class. This holds an index into the 'symbol_impls' /* Address class. This holds an index into the 'symbol_impls'
table. The actual enum address_class value is stored there, table. The actual enum address_class value is stored there,
@ -1260,7 +1270,6 @@ struct block_symbol
/* Note: There is no accessor macro for symbol.owner because it is /* Note: There is no accessor macro for symbol.owner because it is
"private". */ "private". */
#define SYMBOL_DOMAIN(symbol) (symbol)->domain
#define SYMBOL_OBJFILE_OWNED(symbol) ((symbol)->is_objfile_owned) #define SYMBOL_OBJFILE_OWNED(symbol) ((symbol)->is_objfile_owned)
#define SYMBOL_IS_ARGUMENT(symbol) (symbol)->is_argument #define SYMBOL_IS_ARGUMENT(symbol) (symbol)->is_argument
#define SYMBOL_INLINED(symbol) (symbol)->is_inlined #define SYMBOL_INLINED(symbol) (symbol)->is_inlined

View file

@ -1562,7 +1562,7 @@ process_xcoff_symbol (struct coff_symbol *cs, struct objfile *objfile)
/* default assumptions */ /* default assumptions */
SET_SYMBOL_VALUE_ADDRESS (sym, cs->c_value + off); SET_SYMBOL_VALUE_ADDRESS (sym, cs->c_value + off);
SYMBOL_DOMAIN (sym) = VAR_DOMAIN; sym->set_domain (VAR_DOMAIN);
sym->set_section_index (secnum_to_section (cs->c_secnum, objfile)); sym->set_section_index (secnum_to_section (cs->c_secnum, objfile));
if (ISFCN (cs->c_type)) if (ISFCN (cs->c_type))