GDB (xrefs)
|
#include "expop.h"
Public Member Functions | |
value * | evaluate (struct type *expect_type, struct expression *exp, enum noside noside) override |
value * | evaluate_with_coercion (struct expression *exp, enum noside noside) override |
value * | evaluate_for_sizeof (struct expression *exp, enum noside noside) override |
value * | evaluate_for_cast (struct type *expect_type, struct expression *exp, enum noside noside) override |
value * | evaluate_for_address (struct expression *exp, enum noside noside) override |
value * | evaluate_funcall (struct type *expect_type, struct expression *exp, enum noside noside, const std::vector< operation_up > &args) override |
enum exp_opcode | opcode () const override |
symbol * | get_symbol () const |
![]() | |
bool | constant_p () const override |
![]() | |
tuple_holding_operation (Arg... args) | |
DISABLE_COPY_AND_ASSIGN (tuple_holding_operation) | |
bool | uses_objfile (struct objfile *objfile) const override |
void | dump (struct ui_file *stream, int depth) const override |
![]() | |
virtual | ~operation ()=default |
void | generate_ax (struct expression *exp, struct agent_expr *ax, struct axs_value *value, struct type *cast_type=nullptr) |
virtual void | set_outermost () |
Protected Member Functions | |
void | do_generate_ax (struct expression *exp, struct agent_expr *ax, struct axs_value *value, struct type *cast_type) override |
![]() | |
operation ()=default | |
DISABLE_COPY_AND_ASSIGN (operation) | |
value * | evaluate_funcall (struct type *expect_type, struct expression *exp, enum noside noside, const char *function_name, const std::vector< operation_up > &args) |
Additional Inherited Members | |
![]() | |
std::tuple< Arg... > | m_storage |
|
overrideprotectedvirtual |
Reimplemented from expr::operation.
Definition at line 2001 of file ax-gdb.c.
References type::code(), error_unknown_type(), gen_var_ref(), expr::tuple_holding_operation< Arg... >::m_storage, value::optimized_out(), general_symbol_info::print_name(), and value::type().
Referenced by expr::ada_var_value_operation::do_generate_ax().
|
overridevirtual |
Implements expr::operation.
Definition at line 554 of file eval.c.
References type::code(), error_unknown_type(), evaluate_var_value(), expr::tuple_holding_operation< Arg... >::m_storage, general_symbol_info::print_name(), symbol::symbol(), and symbol::type().
Referenced by expr::ada_var_value_operation::evaluate(), evaluate_for_sizeof(), and evaluate_with_coercion().
|
overridevirtual |
Reimplemented from expr::operation.
Definition at line 2649 of file eval.c.
References symbol::aclass(), address_of_variable(), EVAL_AVOID_SIDE_EFFECTS, expr::operation::evaluate_for_address(), LOC_CONST, LOC_CONST_BYTES, LOC_REGISTER, lookup_pointer_type(), expr::tuple_holding_operation< Arg... >::m_storage, not_lval, symbol::symbol(), symbol::type(), TYPE_IS_REFERENCE, and value::zero().
|
overridevirtual |
Reimplemented from expr::operation.
Definition at line 2852 of file eval.c.
References evaluate_var_value(), value::fetch_lazy(), value::lazy(), value::lval(), lval_memory, expr::tuple_holding_operation< Arg... >::m_storage, not_lval, value::set_lval(), and value_cast().
|
overridevirtual |
Reimplemented from expr::operation.
Definition at line 2806 of file eval.c.
References value::allocate_optimized_out(), type::bounds(), builtin_type::builtin_int, builtin_type(), type::code(), EVAL_NORMAL, evaluate(), evaluate_subexp_for_sizeof_base(), expression::gdbarch, range_bounds::high, type::index_type(), is_dynamic_type(), dynamic_prop::kind(), expr::tuple_holding_operation< Arg... >::m_storage, not_lval, PROP_UNDEFINED, value::type(), type_not_allocated(), type_not_associated(), and value::zero().
|
overridevirtual |
Reimplemented from expr::operation.
Definition at line 683 of file eval.c.
References type::code(), error_unknown_type(), expr::operation::evaluate_funcall(), evaluate_subexp_do_call(), evaluate_var_value(), evaluate_with_coercion(), find_overload_match(), language_defn::la_language, language_cplus, expression::language_defn, expr::tuple_holding_operation< Arg... >::m_storage, NON_METHOD, overload_resolution, general_symbol_info::print_name(), and symbol::type().
|
overridevirtual |
Reimplemented from expr::operation.
Definition at line 2676 of file eval.c.
References address_of_variable(), CAST_IS_CONVERSION, check_typedef(), type::code(), evaluate(), type::is_vector(), expression::language_defn, lookup_pointer_type(), expr::tuple_holding_operation< Arg... >::m_storage, symbol::symbol(), type::target_type(), symbol::type(), and value_cast().
Referenced by evaluate_funcall().
|
inline |
Definition at line 665 of file expop.h.
References expr::tuple_holding_operation< Arg... >::m_storage, and symbol::symbol().
Referenced by ada_funcall(), expr::ada_name_association::assign(), encode_actions_1(), expr::ada_funcall_operation::evaluate(), expr::ada_funcall_operation::resolve(), and validate_actionline().
|
inlineoverridevirtual |
Implements expr::operation.