GDB (xrefs)
|
Go to the source code of this file.
Classes | |
struct | macro_source_file |
struct | macro_definition |
Typedefs | |
typedef void(* | macro_callback_fn) (const char *name, const struct macro_definition *definition, struct macro_source_file *source, int line, void *user_data) |
Enumerations | |
enum | macro_kind { macro_object_like, macro_function_like } |
enum | macro_special_kind { macro_ordinary, macro_FILE, macro_LINE } |
typedef void(* macro_callback_fn) (const char *name, const struct macro_definition *definition, struct macro_source_file *source, int line, void *user_data) |
Definition at line 337 of file macrotab.h.
enum macro_kind |
Enumerator | |
---|---|
macro_object_like | |
macro_function_like |
Definition at line 267 of file macrotab.h.
enum macro_special_kind |
Enumerator | |
---|---|
macro_ordinary | |
macro_FILE | |
macro_LINE |
Definition at line 275 of file macrotab.h.
void free_macro_table | ( | struct macro_table * | table | ) |
Definition at line 1080 of file macrotab.c.
References macro_table::definitions, free_macro_source_file(), and macro_table::main_source.
Referenced by really_free_pendings().
void macro_allow_redefinitions | ( | struct macro_table * | table | ) |
Definition at line 441 of file macrotab.c.
References gdb_assert, macro_table::obstack, and macro_table::redef_ok.
Referenced by _initialize_macroscope().
void macro_define_function | ( | struct macro_source_file * | source, |
int | line, | ||
const char * | name, | ||
int | argc, | ||
const char ** | argv, | ||
const char * | replacement | ||
) |
Definition at line 800 of file macrotab.c.
References check_for_redefinition(), macro_table::definitions, key_compare(), macro_function_like, new_macro_definition(), new_macro_key(), macro_table::redef_ok, and macro_source_file::table.
Referenced by macro_define_command(), and parse_macro_definition().
void macro_define_object | ( | struct macro_source_file * | source, |
int | line, | ||
const char * | name, | ||
const char * | replacement | ||
) |
Definition at line 781 of file macrotab.c.
References macro_define_object_internal(), and macro_ordinary.
Referenced by macro_define_command(), and parse_macro_definition().
void macro_define_special | ( | struct macro_table * | table | ) |
Definition at line 791 of file macrotab.c.
References macro_define_object_internal(), macro_FILE, macro_LINE, and macro_table::main_source.
Referenced by macro_start_file().
struct macro_source_file* macro_definition_location | ( | struct macro_source_file * | source, |
int | line, | ||
const char * | name, | ||
int * | definition_line | ||
) |
Definition at line 941 of file macrotab.c.
References find_definition(), macro_key::start_file, and macro_key::start_line.
Referenced by info_macro_command().
void macro_for_each | ( | struct macro_table * | table, |
macro_callback_fn | fn, | ||
void * | user_data | ||
) |
Definition at line 992 of file macrotab.c.
References macro_table::definitions, macro_for_each_data::file, macro_for_each_data::fn, foreach_macro(), macro_for_each_data::line, and macro_for_each_data::user_data.
Referenced by default_make_symbol_completion_list_break_on_1(), info_macro_command(), and macro_list_command().
void macro_for_each_in_scope | ( | struct macro_source_file * | file, |
int | line, | ||
macro_callback_fn | fn, | ||
void * | user_data | ||
) |
Definition at line 1031 of file macrotab.c.
References macro_table::definitions, macro_for_each_data::file, macro_for_each_data::fn, foreach_macro_in_scope(), macro_for_each_data::line, line, macro_source_file::table, and macro_for_each_data::user_data.
Referenced by default_make_symbol_completion_list_break_on_1(), info_macros_command(), and write_macro_definitions().
struct macro_source_file* macro_include | ( | struct macro_source_file * | source, |
int | line, | ||
const char * | included | ||
) |
Definition at line 449 of file macrotab.c.
References _, complaint(), macro_source_file::included_at_line, macro_source_file::included_by, macro_source_file::includes, line, macro_source_fullname(), new_source_file(), macro_source_file::next_included, symfile_complaints, macro_source_file::table, and xfree().
Referenced by macro_start_file().
struct macro_definition* macro_lookup_definition | ( | struct macro_source_file * | source, |
int | line, | ||
const char * | name | ||
) |
Definition at line 919 of file macrotab.c.
References find_definition(), fixup_definition(), macro_source_fullname(), and xfree().
Referenced by info_macro_command(), and standard_macro_lookup().
struct macro_source_file* macro_lookup_inclusion | ( | struct macro_source_file * | source, |
const char * | name | ||
) |
Definition at line 510 of file macrotab.c.
References macro_source_file::filename, macro_source_file::includes, inclusion_depth(), macro_lookup_inclusion(), and macro_source_file::next_included.
Referenced by macro_lookup_inclusion(), and sal_macro_scope().
struct macro_source_file* macro_main | ( | struct macro_table * | table | ) |
Definition at line 432 of file macrotab.c.
References gdb_assert, and macro_table::main_source.
Referenced by macro_define_command(), macro_undef_command(), sal_macro_scope(), standard_macro_lookup(), and user_macro_scope().
struct macro_source_file* macro_set_main | ( | struct macro_table * | table, |
const char * | filename | ||
) |
Definition at line 418 of file macrotab.c.
References gdb_assert, macro_table::main_source, and new_source_file().
Referenced by _initialize_macroscope(), and macro_start_file().
char* macro_source_fullname | ( | struct macro_source_file * | file | ) |
Definition at line 1092 of file macrotab.c.
References COMPUNIT_DIRNAME, macro_table::compunit_symtab, macro_source_file::filename, SLASH_STRING, and macro_source_file::table.
Referenced by check_for_redefinition(), foreach_macro(), foreach_macro_in_scope(), macro_include(), macro_lookup_definition(), macro_undef(), and show_pp_source_pos().
void macro_undef | ( | struct macro_source_file * | source, |
int | line, | ||
const char * | name | ||
) |
Definition at line 828 of file macrotab.c.
References _, complaint(), macro_table::definitions, macro_key::end_file, macro_key::end_line, macro_source_file::filename, find_definition(), if(), line, macro_source_fullname(), macro_key::start_file, macro_key::start_line, symfile_complaints, macro_source_file::table, and xfree().
Referenced by dwarf_decode_macro_bytes(), and macro_undef_command().
struct macro_table* new_macro_table | ( | struct obstack * | obstack, |
struct bcache * | bcache, | ||
struct compunit_symtab * | cust | ||
) |
Definition at line 1050 of file macrotab.c.
References macro_table::bcache, macro_table::compunit_symtab, macro_table::definitions, macro_alloc(), macro_free(), macro_tree_compare(), macro_tree_delete_key(), macro_tree_delete_value(), macro_table::main_source, macro_table::obstack, macro_table::redef_ok, and xmalloc().
Referenced by _initialize_macroscope(), and get_macro_table().