Turn deprecated_value_modifiable into method

This changes deprecated_value_modifiable to be a method of value.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
This commit is contained in:
Tom Tromey
2023-01-31 10:17:10 -07:00
parent 76675c4d0b
commit 4b53ca8883
7 changed files with 12 additions and 17 deletions

View File

@ -2888,7 +2888,7 @@ ada_value_assign (struct value *toval, struct value *fromval)
if (ada_is_direct_array_type (fromval->type ())) if (ada_is_direct_array_type (fromval->type ()))
fromval = ada_coerce_to_simple_array (fromval); fromval = ada_coerce_to_simple_array (fromval);
if (!deprecated_value_modifiable (toval)) if (!toval->deprecated_modifiable ())
error (_("Left operand of assignment is not a modifiable lvalue.")); error (_("Left operand of assignment is not a modifiable lvalue."));
if (VALUE_LVAL (toval) == lval_memory if (VALUE_LVAL (toval) == lval_memory
@ -9531,7 +9531,7 @@ ada_aggregate_operation::assign_aggregate (struct value *container,
if (ada_is_direct_array_type (container->type ())) if (ada_is_direct_array_type (container->type ()))
container = ada_coerce_to_simple_array (container); container = ada_coerce_to_simple_array (container);
lhs = ada_coerce_ref (lhs); lhs = ada_coerce_ref (lhs);
if (!deprecated_value_modifiable (lhs)) if (!lhs->deprecated_modifiable ())
error (_("Left operand of assignment is not a modifiable lvalue.")); error (_("Left operand of assignment is not a modifiable lvalue."));
lhs_type = check_typedef (lhs->type ()); lhs_type = check_typedef (lhs->type ());

View File

@ -10452,7 +10452,7 @@ can_use_hardware_watchpoint (const std::vector<value_ref_ptr> &vals)
} }
} }
else if (VALUE_LVAL (v) != not_lval else if (VALUE_LVAL (v) != not_lval
&& deprecated_value_modifiable (v) == 0) && v->deprecated_modifiable () == 0)
return 0; /* These are values from the history (e.g., $1). */ return 0; /* These are values from the history (e.g., $1). */
else if (VALUE_LVAL (v) == lval_register) else if (VALUE_LVAL (v) == lval_register)
return 0; /* Cannot watch a register with a HW watchpoint. */ return 0; /* Cannot watch a register with a HW watchpoint. */

View File

@ -687,7 +687,7 @@ eval_opencl_assign (struct type *expect_type, struct expression *exp,
return arg1; return arg1;
struct type *type1 = arg1->type (); struct type *type1 = arg1->type ();
if (deprecated_value_modifiable (arg1) if (arg1->deprecated_modifiable ()
&& VALUE_LVAL (arg1) != lval_internalvar) && VALUE_LVAL (arg1) != lval_internalvar)
arg2 = opencl_value_cast (type1, arg2); arg2 = opencl_value_cast (type1, arg2);

View File

@ -2455,7 +2455,7 @@ ppc_linux_nat_target::num_memory_accesses (const std::vector<value_ref_ptr>
struct value *v = iter.get (); struct value *v = iter.get ();
/* Constants and values from the history are fine. */ /* Constants and values from the history are fine. */
if (VALUE_LVAL (v) == not_lval || deprecated_value_modifiable (v) == 0) if (VALUE_LVAL (v) == not_lval || v->->deprecated_modifiable () == 0)
continue; continue;
else if (VALUE_LVAL (v) == lval_memory) else if (VALUE_LVAL (v) == lval_memory)
{ {

View File

@ -1089,7 +1089,7 @@ value_assign (struct value *toval, struct value *fromval)
struct value *val; struct value *val;
struct frame_id old_frame; struct frame_id old_frame;
if (!deprecated_value_modifiable (toval)) if (!toval->deprecated_modifiable ())
error (_("Left operand of assignment is not a modifiable lvalue.")); error (_("Left operand of assignment is not a modifiable lvalue."));
toval = coerce_ref (toval); toval = coerce_ref (toval);

View File

@ -1515,11 +1515,6 @@ deprecated_value_regnum_hack (struct value *value)
return &value->m_location.reg.regnum; return &value->m_location.reg.regnum;
} }
int
deprecated_value_modifiable (const struct value *value)
{
return value->m_modifiable;
}
/* Return a mark in the value chain. All values allocated after the /* Return a mark in the value chain. All values allocated after the
mark is obtained (except for those released) are subject to being freed mark is obtained (except for those released) are subject to being freed

View File

@ -209,6 +209,12 @@ struct value
void set_offset (LONGEST offset) void set_offset (LONGEST offset)
{ m_offset = offset; } { m_offset = offset; }
/* The comment from "struct value" reads: ``Is it modifiable? Only
relevant if lval != not_lval.''. Shouldn't the value instead be
not_lval and be done with it? */
int deprecated_modifiable () const
{ return m_modifiable; }
/* Type of value; either not an lval, or one of the various /* Type of value; either not an lval, or one of the various
different possible kinds of lval. */ different possible kinds of lval. */
@ -387,12 +393,6 @@ struct value
ULONGEST m_limited_length = 0; ULONGEST m_limited_length = 0;
}; };
/* The comment from "struct value" reads: ``Is it modifiable? Only
relevant if lval != not_lval.''. Shouldn't the value instead be
not_lval and be done with it? */
extern int deprecated_value_modifiable (const struct value *value);
/* If a value represents a C++ object, then the `type' field gives the /* If a value represents a C++ object, then the `type' field gives the
object's compile-time type. If the object actually belongs to some object's compile-time type. If the object actually belongs to some
class derived from `type', perhaps with other base classes and class derived from `type', perhaps with other base classes and