GDB (xrefs)
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
symbol Struct Reference

#include "symtab.h"

Inheritance diagram for symbol:
general_symbol_info rust_vtable_symbol template_symbol

Public Member Functions

 symbol ()
 
 symbol (const symbol &)=default
 
symboloperator= (const symbol &)=default
 
void set_aclass_index (unsigned int aclass_index)
 
const symbol_implimpl () const
 
address_class aclass () const
 
bool matches (domain_enum d) const
 
domain_enum domain () const
 
void set_domain (domain_enum domain)
 
bool is_objfile_owned () const
 
void set_is_objfile_owned (bool is_objfile_owned)
 
bool is_argument () const
 
void set_is_argument (bool is_argument)
 
bool is_inlined () const
 
void set_is_inlined (bool is_inlined)
 
bool is_cplus_template_function () const
 
struct typetype () const
 
void set_type (struct type *type)
 
unsigned int line () const
 
void set_line (unsigned int line)
 
LONGEST value_longest () const
 
void set_value_longest (LONGEST value)
 
CORE_ADDR value_address () const
 
void set_value_address (CORE_ADDR address)
 
const gdb_byte * value_bytes () const
 
void set_value_bytes (const gdb_byte *bytes)
 
const common_blockvalue_common_block () const
 
void set_value_common_block (const common_block *common_block)
 
const blockvalue_block () const
 
void set_value_block (const block *block)
 
symbolvalue_chain () const
 
void set_value_chain (symbol *sym)
 
bool is_artificial () const
 
void set_is_artificial (bool artificial)
 
struct objfileobjfile () const
 
struct gdbarcharch () const
 
struct symtabsymtab () const
 
void set_symtab (struct symtab *symtab)
 
- Public Member Functions inherited from general_symbol_info
const char * linkage_name () const
 
const char * natural_name () const
 
const char * print_name () const
 
const char * demangled_name () const
 
const char * search_name () const
 
void set_linkage_name (const char *linkage_name)
 
void set_demangled_name (const char *name, struct obstack *obstack)
 
enum language language () const
 
void set_language (enum language language, struct obstack *obstack)
 
void compute_and_set_names (gdb::string_view linkage_name, bool copy_name, struct objfile_per_bfd_storage *per_bfd, gdb::optional< hashval_t > hash=gdb::optional< hashval_t >())
 
CORE_ADDR value_address () const
 
void set_value_address (CORE_ADDR address)
 
unrelocated_addr unrelocated_address () const
 
void set_unrelocated_address (unrelocated_addr addr)
 
void set_section_index (short idx)
 
short section_index () const
 
struct obj_sectionobj_section (const struct objfile *objfile) const
 

Public Attributes

struct typem_type = nullptr
 
union { 
 
   struct symtab *   symtab 
 
   struct gdbarch *   arch 
 
owner 
 
__extension__ enum domain_enum m_domain: SYMBOL_DOMAIN_BITS
 
unsigned int m_aclass_index: SYMBOL_ACLASS_BITS
 
unsigned int m_is_objfile_owned: 1
 
unsigned m_is_argument: 1
 
unsigned m_is_inlined: 1
 
unsigned maybe_copied: 1
 
__extension__ enum symbol_subclass_kind subclass: 2
 
bool m_artificial: 1
 
unsigned int m_line = 0
 
void * aux_value = nullptr
 
struct symbolhash_next = nullptr
 
- Public Attributes inherited from general_symbol_info
const char * m_name
 
union { 
 
   LONGEST   ivalue 
 
   const struct block *   block 
 
   const gdb_byte *   bytes 
 
   CORE_ADDR   address 
 
   unrelocated_addr   unrel_addr 
 
   const struct common_block *   common_block 
 
   struct symbol *   chain 
 
m_value 
 
union { 
 
   struct obstack *   obstack 
 
   const char *   demangled_name 
 
language_specific 
 
__extension__ enum language m_language: LANGUAGE_BITS
 
unsigned int ada_mangled: 1
 
short m_section
 

Detailed Description

Definition at line 1235 of file symtab.h.

Constructor & Destructor Documentation

◆ symbol() [1/2]

symbol::symbol ( )
inline

◆ symbol() [2/2]

symbol::symbol ( const symbol & )
default

Member Function Documentation

◆ aclass()

address_class symbol::aclass ( ) const
inline

Definition at line 1274 of file symtab.h.

References symbol_impl::aclass, and impl().

Referenced by ada_alias_get_block_value(), ada_exception_sal(), ada_find_any_type_symbol(), ada_has_this_exception_support(), ada_is_exception_sym(), ada_parse_renaming(), collect_info::add_symbol(), best_symbol(), better_symbol(), c_type_print_template_args(), expr::check_constant(), classify_inner_name(), classify_inner_name(), classify_name(), classify_name(), cleanup_undefined_types_1(), collection_list::collect_symbol(), completion_list_add_fields(), completion_list_add_symbol(), convert_one_symbol(), convert_one_symbol(), cp_lookup_rtti_type(), define_symbol(), expr::var_value_operation::evaluate_for_address(), find_function_alias_target(), find_function_in_inferior(), find_gnu_ifunc(), find_primitive_type(), fixup_go_packaging(), fixup_symbol_section(), gcc_cplus_symbol_address(), gcc_symbol_address(), gdbscm_symbol_addr_class(), gdbscm_symbol_constant_p(), gdbscm_symbol_function_p(), gdbscm_symbol_value(), gdbscm_symbol_variable_p(), gen_var_ref(), generate_c_for_for_one_variable(), get_symbol_address(), info_address_command(), info_classes_command(), inside_main_func(), lesseq_defined_than(), lookup_typename(), mi_should_print(), mips_make_symbol_special(), rust_parser::name_to_operation(), new_symbol(), old_renaming_is_invisible(), match_data::operator()(), package_name_p(), prepare_one_step(), print_frame_args(), print_symbol(), read_type(), language_defn::read_var_value(), relocate_one_symbol(), remove_extra_symbols(), remove_irrelevant_renamings(), scan_file_globals(), select_possible_type_sym(), select_source_symtab(), symbol_read_needs(), symbol_to_info_string(), symbol_to_sal(), sympy_get_addr_class(), sympy_is_constant(), sympy_is_function(), sympy_is_variable(), sympy_value(), typy_template_argument(), user_select_syms(), validate_actionline(), value_maybe_namespace_elt(), write_object_renaming(), yylex(), yylex(), yylex(), and yyparse().

◆ arch()

struct gdbarch * symbol::arch ( ) const

◆ domain()

domain_enum symbol::domain ( ) const
inline

◆ impl()

const symbol_impl & symbol::impl ( ) const
inline

Definition at line 1269 of file symtab.h.

References m_aclass_index, and symbol_impls.

Referenced by aclass().

◆ is_argument()

bool symbol::is_argument ( ) const
inline

◆ is_artificial()

bool symbol::is_artificial ( ) const
inline

Definition at line 1412 of file symtab.h.

References m_artificial.

Referenced by ada_language::symbol_printing_suppressed().

◆ is_cplus_template_function()

bool symbol::is_cplus_template_function ( ) const
inline

Definition at line 1326 of file symtab.h.

References subclass, and SYMBOL_TEMPLATE.

Referenced by cp_lookup_symbol_imports_or_template().

◆ is_inlined()

bool symbol::is_inlined ( ) const
inline

Definition at line 1316 of file symtab.h.

References m_is_inlined.

Referenced by block::inlined_p(), iterate_over_all_matching_symtabs(), and set_is_inlined().

◆ is_objfile_owned()

bool symbol::is_objfile_owned ( ) const
inline

◆ line()

unsigned int symbol::line ( ) const
inline

◆ matches()

bool symbol::matches ( domain_enum d) const
inline

◆ objfile()

struct objfile * symbol::objfile ( ) const

◆ operator=()

symbol & symbol::operator= ( const symbol & )
default

◆ set_aclass_index()

void symbol::set_aclass_index ( unsigned int aclass_index)
inline

◆ set_domain()

void symbol::set_domain ( domain_enum domain)
inline

◆ set_is_argument()

void symbol::set_is_argument ( bool is_argument)
inline

Definition at line 1311 of file symtab.h.

References is_argument(), and m_is_argument.

Referenced by define_symbol(), new_symbol(), parse_symbol(), and process_coff_symbol().

◆ set_is_artificial()

void symbol::set_is_artificial ( bool artificial)
inline

Definition at line 1418 of file symtab.h.

References m_artificial.

Referenced by new_symbol().

◆ set_is_inlined()

void symbol::set_is_inlined ( bool is_inlined)
inline

Definition at line 1321 of file symtab.h.

References is_inlined(), and m_is_inlined.

Referenced by new_symbol().

◆ set_is_objfile_owned()

void symbol::set_is_objfile_owned ( bool is_objfile_owned)
inline

◆ set_line()

void symbol::set_line ( unsigned int line)
inline

Definition at line 1346 of file symtab.h.

References line(), and m_line.

Referenced by define_symbol(), and new_symbol().

◆ set_symtab()

void symbol::set_symtab ( struct symtab * symtab)

◆ set_type()

void symbol::set_type ( struct type * type)
inline

◆ set_value_address()

void symbol::set_value_address ( CORE_ADDR address)
inline

◆ set_value_block()

void symbol::set_value_block ( const block * block)
inline

◆ set_value_bytes()

void symbol::set_value_bytes ( const gdb_byte * bytes)
inline

◆ set_value_chain()

void symbol::set_value_chain ( symbol * sym)
inline

◆ set_value_common_block()

void symbol::set_value_common_block ( const common_block * common_block)
inline

Definition at line 1389 of file symtab.h.

References general_symbol_info::common_block, and general_symbol_info::m_value.

Referenced by read_common_block().

◆ set_value_longest()

void symbol::set_value_longest ( LONGEST value)
inline

◆ symtab()

struct symtab * symbol::symtab ( ) const

◆ type()

struct type * symbol::type ( ) const
inline

Definition at line 1331 of file symtab.h.

References m_type.

Referenced by ada_find_any_type(), ada_get_tcb_types_info(), ada_imported_read_variable(), ada_is_exception_sym(), ada_print_symbol_signature(), ada_resolve_enum(), ada_resolve_function(), ada_tasks_inferior_data_sniffer(), address_of_variable(), basic_lookup_transparent_type_1(), basic_lookup_transparent_type_quick(), language_arch_info::bool_type(), bpfinishpy_init(), c_print_typedef(), c_type_print_template_args(), call_site_find_chain_2(), check_typedef(), classify_inner_name(), classify_inner_name(), classify_name(), classify_name(), cleanup_undefined_types_1(), collection_list::collect_symbol(), compile_object_load(), compile_object_run(), completion_list_add_fields(), convert_one_symbol(), convert_one_symbol(), cp_lookup_bare_symbol(), cp_lookup_rtti_type(), cp_search_static_and_baseclasses(), d_lookup_symbol(), define_symbol(), expr::ada_var_value_operation::do_generate_ax(), expr::dump_for_expression(), dwarf2_const_value(), eval_op_var_entry_value(), expr::ada_var_value_operation::evaluate(), expr::var_value_operation::evaluate(), expr::adl_func_operation::evaluate(), expr::var_value_operation::evaluate_for_address(), expr::var_value_operation::evaluate_funcall(), expr::rust_structop::evaluate_funcall(), evaluate_var_value(), expr::var_value_operation::evaluate_with_coercion(), fbsd_fetch_rtld_offsets(), find_function_type(), find_method(), find_oload_champ(), find_overload_match(), find_primitive_type(), buildsym_compunit::finish_block_internal(), finish_command(), fix_common_block(), func_addr_to_tail_call_list(), func_verify_no_selftailcall(), gcc_cplus_symbol_address(), gcc_symbol_address(), gdbscm_symbol_type(), gen_var_ref(), generate_c_for_for_one_variable(), get_out_value_type(), get_regs_type(), get_return_value(), get_symbol_field_type(), gnuv3_get_typeid_type(), inspect_type(), lesseq_defined_than(), list_arg_or_local(), list_args_or_locals(), locexpr_read_variable(), locexpr_read_variable_at_entry(), loclist_read_variable(), loclist_read_variable_at_entry(), lookup_enum(), lookup_struct(), lookup_struct_typedef(), lookup_symbol_aux(), lookup_template_type(), lookup_typename(), lookup_union(), rust_parser::name_to_operation(), compile_cplus_instance::new_scope(), new_symbol(), old_renaming_is_invisible(), output_debug_symbol(), overload_list_add_symbol(), package_name_p(), parse_procedure(), parse_symbol(), patch_opaque_types(), print_frame_args(), print_symbol(), m2_language::print_typedef(), print_unpacked_pointer(), process_coff_symbol(), read_frame_arg(), read_type(), language_defn::read_var_value(), remove_extra_symbols(), replace_typedefs(), expr::ada_var_value_operation::resolve(), rust_parser::rust_lookup_type(), select_possible_type_sym(), set_type(), finish_command_fsm::should_stop(), sparc32_struct_return_from_sym(), symbol_is_function_or_method(), symbol_to_info_string(), symbols_are_identical_enums(), sympy_get_type(), treg_matches_sym_type_name(), type_name_to_scope(), typy_template_argument(), user_select_syms(), value_maybe_namespace_elt(), value_nsstring(), pascal_language::value_print_inner(), write_var_or_type(), yylex(), yylex(), and yyparse().

◆ value_address()

CORE_ADDR symbol::value_address ( ) const
inline

◆ value_block()

const block * symbol::value_block ( ) const
inline

◆ value_bytes()

const gdb_byte * symbol::value_bytes ( ) const
inline

◆ value_chain()

symbol * symbol::value_chain ( ) const
inline

Definition at line 1401 of file symtab.h.

References general_symbol_info::chain, and general_symbol_info::m_value.

Referenced by patch_opaque_types(), and scan_file_globals().

◆ value_common_block()

const common_block * symbol::value_common_block ( ) const
inline

Definition at line 1384 of file symtab.h.

References general_symbol_info::m_value.

◆ value_longest()

LONGEST symbol::value_longest ( ) const
inline

Member Data Documentation

◆ arch

struct gdbarch * symbol::arch

◆ aux_value

void* symbol::aux_value = nullptr

Definition at line 1522 of file symtab.h.

◆ hash_next

struct symbol* symbol::hash_next = nullptr

◆ m_aclass_index

unsigned int symbol::m_aclass_index

Definition at line 1471 of file symtab.h.

Referenced by impl(), and set_aclass_index().

◆ m_artificial

bool symbol::m_artificial

Definition at line 1499 of file symtab.h.

Referenced by is_artificial(), and set_is_artificial().

◆ m_domain

__extension__ enum domain_enum symbol::m_domain

Definition at line 1465 of file symtab.h.

Referenced by domain(), and set_domain().

◆ m_is_argument

unsigned symbol::m_is_argument

Definition at line 1480 of file symtab.h.

Referenced by is_argument(), and set_is_argument().

◆ m_is_inlined

unsigned symbol::m_is_inlined

Definition at line 1483 of file symtab.h.

Referenced by is_inlined(), and set_is_inlined().

◆ m_is_objfile_owned

unsigned int symbol::m_is_objfile_owned

Definition at line 1476 of file symtab.h.

Referenced by is_objfile_owned(), and set_is_objfile_owned().

◆ m_line

unsigned int symbol::m_line = 0

Definition at line 1508 of file symtab.h.

Referenced by line(), and set_line().

◆ m_type

struct type* symbol::m_type = nullptr

Definition at line 1447 of file symtab.h.

Referenced by set_type(), and type().

◆ maybe_copied

unsigned symbol::maybe_copied

Definition at line 1491 of file symtab.h.

Referenced by get_symbol_address(), new_symbol(), and value_address().

◆ [union]

union { ... } symbol::owner

◆ subclass

__extension__ enum symbol_subclass_kind symbol::subclass

◆ symtab

struct symtab * symbol::symtab

The documentation for this struct was generated from the following files: