74 int cleanup_temps = 0;
85 (expect_type, exp, pos,
noside);
196 struct value **resultp,
struct value **val_chain,
199 struct value *mark, *new_mark, *result;
223 if (!preserve_errors)
233 if (mark == new_mark)
263 *val_chain = new_mark;
281 if (exp->
elts[*subexp].
opcode != STRUCTOP_STRUCT
293 static struct value *
299 struct type *field_type;
304 struct value *val = NULL;
315 error (
_(
"too many initializers"));
319 error (
_(
"don't know which variant you want to set"));
372 low_bound, high_bound);
374 exp, pos,
noside, low_bound, high_bound);
379 if (index < low_bound || index > high_bound)
380 error (
_(
"tuple index out of range"));
387 static struct value *
409 return value_slice (array, low_bound, high_bound - low_bound + 1);
455 struct type *promoted_type = NULL;
518 unsigned int result_len;
519 int unsigned_operation;
534 if (promoted_len1 > promoted_len2)
536 unsigned_operation = is_unsigned1;
537 result_len = promoted_len1;
539 else if (promoted_len2 > promoted_len1)
541 unsigned_operation = is_unsigned2;
542 result_len = promoted_len2;
546 unsigned_operation = is_unsigned1 || is_unsigned2;
547 result_len = promoted_len1;
558 promoted_type = (unsigned_operation
564 promoted_type = (unsigned_operation
570 promoted_type = (unsigned_operation
598 if (unsigned_operation)
655 int num_types,
struct type **param_types);
667 int num_types,
struct type **param_types)
678 if (param_types[num_types - 1] == NULL)
697 while (num_types-- > 0)
720 struct value *ret = NULL;
774 int nargs,
value **argvec,
775 const char *function_name,
776 type *default_return_type)
778 if (argvec[0] == NULL)
779 error (
_(
"Cannot evaluate function -- may be inlined"));
801 if (return_type == NULL)
802 error (
_(
"Xmethod is missing return type."));
810 if (return_type == NULL)
811 return_type = default_return_type;
813 if (return_type == NULL)
819 error (
_(
"Expression of type other than " 820 "\"Function returning ...\" used as function"));
826 argvec[0], nargs, argvec + 1);
847 char *function_name = NULL;
848 const char *var_func_name = NULL;
859 if (op == STRUCTOP_MEMBER || op == STRUCTOP_MPTR)
864 if (op == STRUCTOP_MEMBER)
900 struct type *target_type_ptr
914 error (
_(
"Non-pointer-to-member value used in pointer-to-member " 917 else if (op == STRUCTOP_STRUCT || op == STRUCTOP_PTR)
928 if (op == STRUCTOP_STRUCT)
976 else if (op == OP_SCOPE
992 function_name = NULL;
999 if (
function == NULL)
1000 error (
_(
"No symbol \"%s\" in namespace \"%s\"."),
1010 function_name =
name;
1019 else if (op == OP_ADL_FUNC)
1038 if (op == OP_VAR_VALUE
1047 if (op == OP_VAR_MSYM_VALUE)
1052 else if (op == OP_VAR_VALUE)
1076 for (; tem <= nargs; tem++)
1089 if (op == OP_ADL_FUNC)
1094 int string_pc = save_pos1 + 3;
1098 func_name = (
char *) alloca (name_len + 1);
1099 strcpy (func_name, &exp->
elts[string_pc + 1].
string);
1105 NULL, &symp, NULL, 0,
noside);
1112 if (op == STRUCTOP_STRUCT || op == STRUCTOP_PTR
1113 || (op == OP_SCOPE && function_name != NULL))
1115 int static_memfuncp;
1128 tstr = function_name;
1135 struct value *valp = NULL;
1141 &static_memfuncp, 0,
noside);
1143 if (op == OP_SCOPE && !static_memfuncp)
1146 error (
_(
"Call to overloaded function %s requires " 1157 struct value *temp = arg2;
1161 op == STRUCTOP_STRUCT
1162 ?
"structure" :
"structure pointer");
1174 if (static_memfuncp)
1176 argvec[1] = argvec[0];
1181 else if (op == STRUCTOP_MEMBER || op == STRUCTOP_MPTR)
1186 else if (op == OP_VAR_VALUE || (op == OP_SCOPE &&
function != NULL))
1205 if (op == OP_VAR_VALUE)
1212 NULL, &symp, NULL, no_adl,
noside);
1214 if (op == OP_VAR_VALUE)
1236 return eval_call (exp,
noside, nargs, argvec, var_func_name, expect_type);
1245 int tem, tem2, tem3;
1247 struct value *arg1 = NULL;
1248 struct value *arg2 = NULL;
1252 struct value **argvec;
1256 struct type **arg_types;
1299 case OP_VAR_MSYM_VALUE:
1315 case OP_VAR_ENTRY_VALUE:
1329 error (
_(
"Symbol \"%s\" does not have any specific entry value"),
1336 case OP_FUNC_STATIC_VAR:
1352 error (
_(
"No symbol \"%s\" in specified context."), var);
1372 error (
_(
"Register $%s not available."),
name);
1386 error (
_(
"Value of register %s not available."),
name);
1395 case OP_INTERNALVAR:
1408 case OP_OBJC_NSSTRING:
1420 nargs = tem3 - tem2 + 1;
1439 LONGEST low_bound, high_bound, index;
1448 for (tem = nargs; --nargs >= 0;)
1450 struct value *element;
1455 element =
value_cast (element_type, element);
1458 int continue_pc = *pos;
1462 low_bound, high_bound);
1467 if (index > high_bound)
1469 error (
_(
"Too many array elements"));
1471 + (index - low_bound) * element_size,
1486 struct type *check_type = element_type;
1487 LONGEST low_bound, high_bound;
1495 error (
_(
"(power)set type with unknown size"));
1497 for (tem = 0; tem < nargs; tem++)
1499 LONGEST range_low, range_high;
1500 struct type *range_low_type, *range_high_type;
1501 struct value *elem_val;
1504 range_low_type = range_high_type =
value_type (elem_val);
1516 && (range_low_type != range_high_type)))
1518 error (
_(
"POWERSET tuple elements of different mode"));
1521 && range_low_type != check_type))
1522 error (
_(
"incompatible POWERSET tuple elements"));
1523 if (range_low > range_high)
1525 warning (
_(
"empty POWERSET tuple range"));
1528 if (range_low < low_bound || range_high > high_bound)
1529 error (
_(
"POWERSET tuple element out of range"));
1530 range_low -= low_bound;
1531 range_high -= low_bound;
1532 for (; range_low <= range_high; range_low++)
1545 argvec = XALLOCAVEC (
struct value *, nargs);
1546 for (tem = 0; tem < nargs; tem++)
1566 return value_slice (array, lowbound, upper - lowbound + 1);
1584 case OP_OBJC_SELECTOR:
1588 struct type *selector_type;
1602 case OP_OBJC_MSGCALL:
1613 struct value *msg_send = NULL;
1614 struct value *msg_send_stret = NULL;
1615 int gnu_runtime = 0;
1617 struct value *target = NULL;
1618 struct value *method = NULL;
1619 struct value *called_method = NULL;
1621 struct type *selector_type = NULL;
1622 struct type *long_type;
1624 struct value *ret = NULL;
1629 argvec = XALLOCAVEC (
struct value *, nargs + 5);
1689 if (responds_selector == 0)
1693 if (responds_selector == 0)
1694 error (
_(
"no 'respondsTo:' or 'respondsToSelector:' method"));
1698 if (method_selector == 0)
1702 if (method_selector == 0)
1703 error (
_(
"no 'methodFor:' or 'methodForSelector:' method"));
1708 argvec[0] = msg_send;
1722 error (
_(
"Target does not respond to this message selector."));
1730 argvec[0] = msg_send;
1748 struct symbol *sym = NULL;
1767 struct type *val_type;
1775 if ((val_type == NULL)
1778 if (expect_type != NULL)
1779 val_type = expect_type;
1785 else if (expect_type != NULL)
1807 error (
_(
"method address has symbol information " 1808 "with non-function type; skipping"));
1828 called_method = msg_send_stret;
1830 called_method = msg_send;
1860 error (
_(
"Expression of type other than " 1861 "\"method returning ...\" used as a method"));
1868 argvec[0] = called_method;
1872 for (tem = 0; tem < nargs; tem++)
1874 argvec[tem + 3] = 0;
1876 if (gnu_runtime && (method != NULL))
1893 case OP_F77_UNDETERMINED_ARGLIST:
1934 goto multi_f77_subscript;
1950 argvec = (
struct value **)
1951 alloca (
sizeof (
struct value *) * (nargs + 2));
1954 for (; tem <= nargs; tem++)
1962 error (
_(
"Cannot perform substring on this type"));
1974 case STRUCTOP_STRUCT:
2020 struct type *real_type;
2021 int full, using_enc;
2037 NULL,
"structure pointer");
2042 case STRUCTOP_MEMBER:
2044 if (op == STRUCTOP_MEMBER)
2079 error (
_(
"non-pointer-to-member value used " 2080 "in pointer-to-member construct"));
2085 type_instance_flags
flags 2088 arg_types = (
struct type **) alloca (nargs *
sizeof (
struct type *));
2089 for (ix = 0; ix < nargs; ++ix)
2090 arg_types[ix] = exp->
elts[pc + 2 + ix + 1].
type;
2093 *(pos) += 4 + nargs;
2118 case BINOP_ASSIGN_MODIFY:
2137 struct value *tmp = arg1;
2141 if ((op == BINOP_LSH || op == BINOP_RSH || op == BINOP_EXP)
2201 case BINOP_BITWISE_AND:
2202 case BINOP_BITWISE_IOR:
2203 case BINOP_BITWISE_XOR:
2220 || op == BINOP_INTDIV
2225 struct value *v_one, *retval;
2236 if ((op == BINOP_LSH || op == BINOP_RSH || op == BINOP_EXP)
2246 case BINOP_SUBSCRIPT:
2265 error (
_(
"cannot subscript something of type `%s'"),
2268 error (
_(
"cannot subscript requested type"));
2276 case MULTI_SUBSCRIPT:
2306 error (
_(
"cannot subscript something of type `%s'"),
2330 error (
_(
"cannot subscript something of type `%s'"),
2333 error (
_(
"cannot subscript requested type"));
2339 multi_f77_subscript:
2342 int ndimensions = 1, i;
2343 struct value *array = arg1;
2350 if (nargs != ndimensions)
2351 error (
_(
"Wrong number of subscripts"));
2359 for (i = 0; i < nargs; i++)
2370 for (i = nargs; i > 0; i--)
2373 LONGEST index = subscript_array[i - 1];
2382 case BINOP_LOGICAL_AND:
2409 case BINOP_LOGICAL_OR:
2453 case BINOP_NOTEQUAL:
2546 error (
_(
"Non-integral right operand for \"@\" operator."));
2583 case UNOP_COMPLEMENT:
2597 case UNOP_LOGICAL_NOT:
2616 error (
_(
"Attempt to dereference pointer " 2617 "to member without an object"));
2637 error (
_(
"Attempt to take contents of a non-pointer value."));
2678 case UNOP_CAST_TYPE:
2683 case UNOP_DYNAMIC_CAST:
2691 case UNOP_REINTERPRET_CAST:
2710 case UNOP_MEMVAL_TYPE:
2721 case UNOP_PREINCREMENT:
2735 struct value *tmp = arg1;
2745 case UNOP_PREDECREMENT:
2759 struct value *tmp = arg1;
2769 case UNOP_POSTINCREMENT:
2785 struct value *tmp = arg1;
2796 case UNOP_POSTDECREMENT:
2812 struct value *tmp = arg1;
2836 error (
_(
"Attempt to use a type name as an expression"));
2848 struct value *result;
2854 if (op == OP_DECLTYPE
2855 && (sub_op == BINOP_SUBSCRIPT
2856 || sub_op == STRUCTOP_MEMBER
2857 || sub_op == STRUCTOP_MPTR
2858 || sub_op == UNOP_IND
2859 || sub_op == STRUCTOP_STRUCT
2860 || sub_op == STRUCTOP_PTR
2861 || sub_op == OP_SCOPE))
2875 error (
_(
"Attempt to use a type as an expression"));
2879 struct value *result;
2882 if (sub_op == OP_TYPE || sub_op == OP_DECLTYPE || sub_op == OP_TYPEOF)
2904 error (
_(
"GDB does not (yet) know how to " 2905 "evaluate that kind of expression"));
2918 static struct value *
2941 goto default_case_after_eval;
2951 case UNOP_MEMVAL_TYPE:
2980 error (
_(
"Attempt to take address of register or constant."));
2988 case OP_VAR_MSYM_VALUE:
3017 default_case_after_eval:
3029 error (
_(
"Attempt to take address of " 3030 "value not located in memory."));
3087 static struct value *
3114 error (
_(
"Attempt to take contents of a non-pointer value."));
3125 case UNOP_MEMVAL_TYPE:
3142 case OP_VAR_MSYM_VALUE:
3163 case BINOP_SUBSCRIPT:
3166 int pc = (*pos) + 1;
3213 struct type *to_type)
3220 if (exp->
elts[pc].
opcode == OP_VAR_MSYM_VALUE
3226 if (exp->
elts[pc].
opcode == OP_VAR_MSYM_VALUE)
3266 char *tmp = (
char *) alloca (
length + 4);
3269 memcpy (tmp + 1, p,
length);
3274 if (expr->elts[0].opcode != UNOP_CAST)
3275 error (
_(
"Internal error in eval_type."));
3276 return expr->elts[1].type;
3283 struct type *tmp_type;
3286 error (
_(
"Can't get dimensions for a non-array type"));
3288 tmp_type = array_type;
struct value * value_zero(struct type *type, enum lval_type lv)
static value * eval_call(expression *exp, enum noside noside, int nargs, value **argvec, const char *function_name, type *default_return_type)
union exp_element elts[1]
struct value * value_array(int lowbound, int highbound, struct value **elemvec)
struct value * value_mark(void)
#define TYPE_RANGE_DATA(thistype)
struct value * value_subscripted_rvalue(struct value *array, LONGEST index, int lowerbound)
struct value * value_addr(struct value *arg1)
static LONGEST init_array_element(struct value *, struct value *, struct expression *, int *, enum noside, LONGEST, LONGEST)
struct value * evaluate_subexpression_type(struct expression *exp, int subexp)
struct frame_info * get_selected_frame(const char *message)
struct value * value_aggregate_elt(struct type *curtype, const char *name, struct type *expect_type, int want_address, enum noside noside)
struct type * builtin_long_double
#define SYMBOL_PRINT_NAME(symbol)
struct value * value_subscript(struct value *array, LONGEST index)
struct type * lookup_signed_typename(const struct language_defn *language, struct gdbarch *gdbarch, const char *name)
static struct value * evaluate_subexp_for_sizeof(struct expression *, int *, enum noside)
#define TYPE_FIELD_NAME(thistype, n)
struct type * builtin_unsigned_int
gdb::unique_xmalloc_ptr< expression > expression_up
#define TYPE_LOW_BOUND(range_type)
struct value * value_from_contents(struct type *type, const gdb_byte *contents)
struct value * value_reinterpret_cast(struct type *type, struct value *arg)
LONGEST value_as_long(struct value *val)
void warning(const char *fmt,...)
value * evaluate_var_value(enum noside noside, const block *blk, symbol *var)
LONGEST value_embedded_offset(const struct value *value)
struct value * evaluate_subexp_with_coercion(struct expression *exp, int *pos, enum noside noside)
#define TYPE_NAME(thistype)
struct value * address_of_variable(struct symbol *var, const struct block *b)
static int ptrmath_type_p(const struct language_defn *lang, struct type *type)
int calc_f77_array_dims(struct type *array_type)
LONGEST value_ptrdiff(struct value *arg1, struct value *arg2)
#define TYPE_HIGH_BOUND(range_type)
struct block_symbol cp_lookup_symbol_namespace(const char *scope, const char *name, const struct block *block, const domain_enum domain)
struct type * language_string_char_type(const struct language_defn *la, struct gdbarch *gdbarch)
const struct builtin_type * builtin_type(struct gdbarch *gdbarch)
struct value * call_xmethod(struct value *method, int argc, struct value **argv)
#define SYMBOL_CLASS(symbol)
void * memset(T *s, int c, size_t n)=delete
void binop_promote(const struct language_defn *language, struct gdbarch *gdbarch, struct value **arg1, struct value **arg2)
const struct language_defn * language_defn
int thread_stack_temporaries_enabled_p(ptid_t ptid)
int value_in_thread_stack_temporaries(struct value *, ptid_t)
int value_lazy(const struct value *value)
struct value * coerce_ref(struct value *arg)
struct value * value_ind(struct value *arg1)
int gdbarch_long_bit(struct gdbarch *gdbarch)
expression_up parse_exp_1(const char **, CORE_ADDR pc, const struct block *, int)
enum language la_language
struct value * value_of_this(const struct language_defn *lang)
struct block_symbol lookup_symbol(const char *name, const struct block *block, domain_enum domain, struct field_of_this_result *is_a_field_of_this)
struct value * value_pos(struct value *arg1)
int gdbarch_num_regs(struct gdbarch *gdbarch)
#define TYPE_FIELD(thistype, n)
#define BYTES_TO_EXP_ELEM(bytes)
#define TYPE_PROTOTYPED(t)
struct value * call_internal_function(struct gdbarch *gdbarch, const struct language_defn *language, struct value *func, int argc, struct value **argv)
#define TYPE_FIELD_TYPE(thistype, n)
void error_unknown_type(const char *sym_print_name)
struct value * allocate_value(struct type *type)
const struct block * block_for_pc(CORE_ADDR pc)
int longest_to_int(LONGEST)
struct internalvar * internalvar
#define TYPE_IS_REFERENCE(t)
void deprecated_set_value_type(struct value *value, struct type *type)
struct value * value_non_lval(struct value *arg)
mach_port_t kern_return_t mach_port_t msgports mach_port_t kern_return_t pid_t pid mach_port_t kern_return_t mach_port_t task mach_port_t kern_return_t int flags
int gdbarch_num_pseudo_regs(struct gdbarch *gdbarch)
struct value * evaluate_expression(struct expression *exp)
#define MSYMBOL_PRINT_NAME(symbol)
const struct block * block
struct value * value_ptradd(struct value *arg1, LONGEST arg2)
value * eval_skip_value(expression *exp)
value * evaluate_var_msym_value(enum noside noside, struct objfile *objfile, minimal_symbol *msymbol)
const struct exp_descriptor * la_exp_desc
#define TYPE_INSTANCE_FLAGS(thistype)
struct value * value_struct_elt(struct value **argp, struct value **args, const char *name, int *static_memfuncp, const char *err)
static struct value * evaluate_subexp_for_address(struct expression *, int *, enum noside)
struct type * check_typedef(struct type *type)
struct type * result_type_of_xmethod(struct value *method, int argc, struct value **argv)
type * find_minsym_type_and_address(minimal_symbol *msymbol, objfile *objf, CORE_ADDR *address_p)
const gdb_byte * value_contents(struct value *value)
#define CATCH(EXCEPTION, MASK)
struct type * builtin_unsigned_long
#define TYPE_MAIN_TYPE(thistype)
struct target_ops current_target
int field_is_static(struct field *f)
struct value * find_function_in_inferior(const char *name, struct objfile **objf_p)
struct symbol * find_pc_function(CORE_ADDR pc)
const struct block * block
struct value * value_cast_pointers(struct type *type, struct value *arg2, int subclass_check)
struct type * register_type(struct gdbarch *gdbarch, int regnum)
CORE_ADDR gdbarch_convert_from_func_ptr_addr(struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ)
int using_struct_return(struct gdbarch *gdbarch, struct value *function, struct type *value_type)
int f77_get_lowerbound(struct type *)
#define gdb_assert_not_reached(message)
int is_integral_type(struct type *t)
void unop_promote(const struct language_defn *language, struct gdbarch *gdbarch, struct value **arg1)
struct type * cplus_typeid_type(struct gdbarch *gdbarch)
#define SYMBOL_COMPUTED_OPS(symbol)
struct type * parse_and_eval_type(char *p, int length)
struct value *(* evaluate_exp)(struct type *, struct expression *, int *, enum noside)
gdb_byte * value_contents_writeable(struct value *value)
struct value * coerce_array(struct value *arg)
struct value * value_assign(struct value *toval, struct value *fromval)
struct type * language_bool_type(const struct language_defn *la, struct gdbarch *gdbarch)
int gdbarch_double_bit(struct gdbarch *gdbarch)
struct value * value_from_longest(struct type *type, LONGEST num)
struct type * builtin_long
struct value * value_at_lazy(struct type *type, CORE_ADDR addr)
struct value * value_cast(struct type *type, struct value *arg2)
static struct value * evaluate_struct_tuple(struct value *, struct expression *, int *, enum noside, int)
#define target_has_execution
#define TYPE_FIELDS(thistype)
struct value * value_dynamic_cast(struct type *type, struct value *arg)
int user_reg_map_name_to_regnum(struct gdbarch *gdbarch, const char *name, int len)
int value_equal(struct value *arg1, struct value *arg2)
#define TYPE_FIELD_BITSIZE(thistype, n)
struct type * builtin_unsigned_long_long
struct value * value_of_internalvar(struct gdbarch *gdbarch, struct internalvar *var)
#define TYPE_FIELD_BITPOS(thistype, n)
int find_overload_match(struct value **args, int nargs, const char *name, enum oload_search_type method, struct value **objp, struct symbol *fsym, struct value **valp, struct symbol **symp, int *staticp, const int no_adl, const enum noside noside)
struct value * value_release_to_mark(const struct value *mark)
int value_must_coerce_to_target(struct value *val)
char * extract_field_op(struct expression *exp, int *subexp)
struct minimal_symbol * msymbol
struct value * parse_to_comma_and_eval(const char **expp)
void throw_exception(struct gdb_exception exception)
#define TYPE_CHAIN(thistype)
void fetch_subexp_value(struct expression *exp, int *pc, struct value **valp, struct value **resultp, struct value **val_chain, int preserve_errors)
struct value * allocate_repeat_value(struct type *type, int count)
struct value * value_from_pointer(struct type *type, CORE_ADDR addr)
#define TYPE_TARGET_TYPE(thistype)
void value_fetch_lazy(struct value *val)
struct type * builtin_double
struct value * value_neg(struct value *arg1)
CORE_ADDR parse_and_eval_address(const char *exp)
#define TYPE_CODE(thistype)
struct value * value_of_register(int regnum, struct frame_info *frame)
#define TYPE_INDEX_TYPE(type)
struct cleanup * enable_thread_stack_temporaries(ptid_t ptid)
void error_call_unknown_return_type(const char *func_name)
struct value * value_of_variable(struct symbol *var, const struct block *b)
CORE_ADDR find_function_addr(struct value *function, struct type **retval_type)
struct type * builtin_data_ptr
struct value * value_repeat(struct value *arg1, int count)
void get_user_print_options(struct value_print_options *opts)
int value_less(struct value *arg1, struct value *arg2)
#define TYPE_NFIELDS(thistype)
fake_method(type_instance_flags flags, int num_types, struct type **param_types)
struct value * value_complement(struct value *arg1)
struct value * evaluate_subexp(struct type *expect_type, struct expression *exp, int *pos, enum noside noside)
struct value * value_one(struct type *type)
struct type * lookup_unsigned_typename(const struct language_defn *language, struct gdbarch *gdbarch, const char *name)
struct value * cplus_method_ptr_to_value(struct value **this_p, struct value *method_ptr)
static struct value * value_f90_subarray(struct value *array, struct expression *exp, int *pos, enum noside noside)
int value_logical_not(struct value *arg1)
struct value * evaluate_subexp_standard(struct type *expect_type, struct expression *exp, int *pos, enum noside noside)
struct value * value_binop(struct value *arg1, struct value *arg2, enum exp_opcode op)
#define TYPE_TAG_NAME(type)
#define CAST_IS_CONVERSION(LANG)
int binop_user_defined_p(enum exp_opcode op, struct value *arg1, struct value *arg2)
const struct block * get_selected_block(CORE_ADDR *addr_in_block)
struct value * value_string(const char *ptr, ssize_t len, struct type *char_type)
struct value * parse_and_eval(const char *exp)
int gdbarch_bits_big_endian(struct gdbarch *gdbarch)
struct type * builtin_long_long
struct value * call_function_by_hand(struct value *function, type *default_return_type, int nargs, struct value **args)
expression_up parse_expression(const char *)
struct value * value_slice(struct value *array, int lowbound, int length)
int is_dynamic_type(struct type *type)
struct value * value_x_unop(struct value *arg1, enum exp_opcode op, enum noside noside)
struct type * value_type(const struct value *value)
#define SYMBOL_TYPE(symbol)
struct value * access_value_history(int num)
CORE_ADDR value_as_address(struct value *val)
struct value * evaluate_type(struct expression *exp)
gdb_byte * value_contents_raw(struct value *value)
#define TYPE_LENGTH(thistype)
struct value * value_x_binop(struct value *arg1, struct value *arg2, enum exp_opcode op, enum exp_opcode otherop, enum noside noside)
#define TYPE_ZALLOC(t, size)
static value * evaluate_subexp_for_cast(expression *exp, int *pos, enum noside noside, struct type *type)
int unop_user_defined_p(enum exp_opcode op, struct value *arg1)
struct value * value_literal_complex(struct value *arg1, struct value *arg2, struct type *type)
static value * evaluate_funcall(type *expect_type, expression *exp, int *pos, enum noside noside)
CORE_ADDR lookup_child_selector(struct gdbarch *gdbarch, const char *selname)
CORE_ADDR value_address(const struct value *value)
struct bound_minimal_symbol lookup_minimal_symbol(const char *name, const char *sfile, struct objfile *objf)
int get_discrete_bounds(struct type *type, LONGEST *lowp, LONGEST *highp)
struct type * lookup_lvalue_reference_type(struct type *type)
#define TYPE_SELF_TYPE(thistype)
void error(const char *fmt,...)
struct value * value_nsstring(struct gdbarch *gdbarch, char *ptr, int len)
struct type * lookup_pointer_type(struct type *type)
struct value * value_concat(struct value *arg1, struct value *arg2)
void do_cleanups(struct cleanup *old_chain)
struct type * lookup_function_type(struct type *type)
struct value * cplus_typeid(struct value *value)
void modify_field(struct type *type, gdb_byte *addr, LONGEST fieldval, LONGEST bitpos, LONGEST bitsize)
struct type * value_rtti_indirect_type(struct value *v, int *full, LONGEST *top, int *using_enc)
struct type * builtin_int
LONGEST parse_and_eval_long(const char *exp)