GDB (xrefs)
|
#include "compile-cplus.h"
Public Member Functions | |
compile_cplus_instance (struct gcc_cp_context *gcc_cp) | |
gcc_type | convert_type (struct type *type, enum gcc_cp_symbol_kind nested_access=GCC_CP_ACCESS_NONE) |
gcc_cp_plugin & | plugin () |
compile_scope | new_scope (const char *type_name, struct type *type) |
void | enter_scope (compile_scope &&scope) |
void | leave_scope () |
gcc_type | convert_qualified_base (gcc_type base, gcc_cp_qualifiers_flags quals) |
gcc_type | convert_pointer_base (gcc_type target) |
gcc_type | convert_reference_base (gcc_type base, enum gcc_cp_ref_qualifiers rquals) |
![]() | |
compile_instance (struct gcc_base_context *gcc_fe, const char *options) | |
virtual | ~compile_instance () |
const std::string & | gcc_target_options () const |
bool | get_cached_type (struct type *type, gcc_type *ret) const |
void | insert_type (struct type *type, gcc_type gcc_type) |
void | insert_symbol_error (const struct symbol *sym, const char *text) |
void | error_symbol_once (const struct symbol *sym) |
void | set_print_callback (void(*print_function)(void *, const char *), void *datum) |
unsigned int | version () const |
void | set_verbose (int level) |
void | set_driver_filename (const char *filename) |
void | set_triplet_regexp (const char *regexp) |
gdb::unique_xmalloc_ptr< char > | set_arguments (int argc, char **argv, const char *regexp=NULL) |
void | set_source_file (const char *filename) |
bool | compile (const char *filename, int verbose_level=-1) |
void | set_scope (enum compile_i_scope_types scope) |
enum compile_i_scope_types | scope () const |
void | set_block (const struct block *block) |
const struct block * | block () const |
Static Public Member Functions | |
static gdb::unique_xmalloc_ptr< char > | decl_name (const char *natural) |
Private Attributes | |
gcc_cp_plugin | m_plugin |
std::vector< compile_scope > | m_scopes |
Static Private Attributes | |
static gcc_cp_enter_leave_user_expr_scope_function | gcc_cplus_enter_scope |
static gcc_cp_enter_leave_user_expr_scope_function | gcc_cplus_leave_scope |
static const char * | m_default_cflags = "-std=gnu++11" |
Additional Inherited Members | |
![]() | |
struct gcc_base_context * | m_gcc_fe |
enum compile_i_scope_types | m_scope |
const struct block * | m_block |
std::string | m_gcc_target_options |
htab_up | m_type_map |
htab_up | m_symbol_err_map |
Definition at line 126 of file compile-cplus.h.
|
inlineexplicit |
Definition at line 130 of file compile-cplus.h.
References gcc_cplus_convert_symbol, gcc_cplus_enter_scope, gcc_cplus_leave_scope, gcc_cplus_symbol_address, m_plugin, and gcc_cp_plugin::set_callbacks().
gcc_type compile_cplus_instance::convert_pointer_base | ( | gcc_type | target | ) |
Definition at line 433 of file compile-cplus-types.c.
References plugin().
Referenced by compile_cplus_convert_pointer().
gcc_type compile_cplus_instance::convert_qualified_base | ( | gcc_type | base, |
gcc_cp_qualifiers_flags | quals ) |
Definition at line 1048 of file compile-cplus-types.c.
References plugin().
Referenced by compile_cplus_convert_qualified().
gcc_type compile_cplus_instance::convert_reference_base | ( | gcc_type | base, |
enum gcc_cp_ref_qualifiers | rquals ) |
Definition at line 400 of file compile-cplus-types.c.
References plugin().
Referenced by compile_cplus_convert_reference().
gcc_type compile_cplus_instance::convert_type | ( | struct type * | type, |
enum gcc_cp_symbol_kind | nested_access = GCC_CP_ACCESS_NONE ) |
Definition at line 1198 of file compile-cplus-types.c.
References convert_type_cplus_basic(), GCC_TYPE_NONE, compile_instance::get_cached_type(), and compile_instance::insert_type().
Referenced by compile_cplus_convert_array(), compile_cplus_convert_complex(), compile_cplus_convert_func(), compile_cplus_convert_memberptr(), compile_cplus_convert_method(), compile_cplus_convert_pointer(), compile_cplus_convert_qualified(), compile_cplus_convert_reference(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_struct_or_union_members(), compile_cplus_convert_type_defns(), compile_cplus_convert_typedef(), convert_one_symbol(), convert_symbol_bmsym(), and new_scope().
|
static |
Definition at line 59 of file compile-cplus-types.c.
References cp_func_name(), and name.
Referenced by compile_cplus_convert_enum(), compile_cplus_convert_namespace(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_struct_or_union_methods(), compile_cplus_convert_typedef(), convert_one_symbol(), and new_scope().
void compile_cplus_instance::enter_scope | ( | compile_scope && | scope | ) |
Definition at line 247 of file compile-cplus-types.c.
References debug_compile_cplus_scopes, gdb_printf(), gdb_stdlog, compile_scope::m_pushed, m_scopes, new_scope(), and plugin().
Referenced by compile_cplus_convert_enum(), compile_cplus_convert_namespace(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_typedef(), and convert_one_symbol().
void compile_cplus_instance::leave_scope | ( | ) |
Definition at line 295 of file compile-cplus-types.c.
References debug_compile_cplus_scopes, gdb_printf(), gdb_stdlog, compile_scope::m_pushed, m_scopes, plugin(), and gcc_cp_plugin::pop_binding_level().
Referenced by compile_cplus_convert_enum(), compile_cplus_convert_namespace(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_typedef(), and convert_one_symbol().
compile_scope compile_cplus_instance::new_scope | ( | const char * | type_name, |
struct type * | type ) |
Definition at line 334 of file compile-cplus-types.c.
References scope_component::bsymbol, convert_type(), decl_name(), compile_instance::get_cached_type(), lookup_symbol(), m_scopes, type::name(), compile_instance::scope(), block_symbol::symbol, symbol::type(), type_name_to_scope(), types_equal(), and VAR_DOMAIN.
Referenced by compile_cplus_convert_enum(), compile_cplus_convert_namespace(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_typedef(), convert_one_symbol(), and enter_scope().
|
inline |
Definition at line 152 of file compile-cplus.h.
References m_plugin.
Referenced by compile_cplus_convert_array(), compile_cplus_convert_bool(), compile_cplus_convert_complex(), compile_cplus_convert_enum(), compile_cplus_convert_float(), compile_cplus_convert_func(), compile_cplus_convert_int(), compile_cplus_convert_memberptr(), compile_cplus_convert_method(), compile_cplus_convert_namespace(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_struct_or_union_members(), compile_cplus_convert_struct_or_union_methods(), compile_cplus_convert_typedef(), compile_cplus_convert_void(), convert_one_symbol(), convert_pointer_base(), convert_qualified_base(), convert_reference_base(), convert_symbol_bmsym(), convert_type_cplus_basic(), enter_scope(), gcc_cplus_convert_symbol(), gcc_cplus_symbol_address(), and leave_scope().
|
staticprivate |
Definition at line 188 of file compile-cplus.h.
Referenced by compile_cplus_instance().
|
staticprivate |
Definition at line 189 of file compile-cplus.h.
Referenced by compile_cplus_instance().
|
staticprivate |
Definition at line 192 of file compile-cplus.h.
|
private |
Definition at line 195 of file compile-cplus.h.
Referenced by compile_cplus_instance(), and plugin().
|
private |
Definition at line 198 of file compile-cplus.h.
Referenced by enter_scope(), leave_scope(), and new_scope().