2005-02-07 Andrew Cagney <cagney@gnu.org>

* value.h (deprecated_set_value_modifiable)
	(deprecated_value_modifiable): Declare.
	* value.c (deprecated_set_value_modifiable): Define.
	(deprecated_value_modifiable): Define.
	* ada-lang.c, valops.c, breakpoint.c, tracepoint.c: Update.
This commit is contained in:
Andrew Cagney 2005-02-08 00:25:31 +00:00
parent 8082c5a8f1
commit 88e3b34b7c
7 changed files with 29 additions and 13 deletions

View file

@ -1,5 +1,11 @@
2005-02-07 Andrew Cagney <cagney@gnu.org>
* value.h (deprecated_set_value_modifiable)
(deprecated_value_modifiable): Declare.
* value.c (deprecated_set_value_modifiable): Define.
(deprecated_value_modifiable): Define.
* ada-lang.c, valops.c, breakpoint.c, tracepoint.c: Update.
* value.h (deprecated_set_value_type): Declare.
* value.c (deprecated_set_value_type): Define.
* hpacc-abi.c, gnu-v2-abi.c, cp-valprint.c: Update.

View file

@ -2008,7 +2008,7 @@ ada_value_assign (struct value *toval, struct value *fromval)
struct type *type = value_type (toval);
int bits = value_bitsize (toval);
if (!toval->modifiable)
if (!deprecated_value_modifiable (toval))
error (_("Left operand of assignment is not a modifiable lvalue."));
toval = coerce_ref (toval);

View file

@ -5821,7 +5821,7 @@ can_use_hardware_watchpoint (struct value *v)
}
}
}
else if (v->lval != not_lval && v->modifiable == 0)
else if (v->lval != not_lval && deprecated_value_modifiable (v) == 0)
return 0; /* ??? What does this represent? */
else if (v->lval == lval_register)
return 0; /* cannot watch a register with a HW watchpoint */

View file

@ -300,7 +300,7 @@ set_traceframe_context (CORE_ADDR trace_pc)
memcpy (value_contents_raw (func_val),
DEPRECATED_SYMBOL_NAME (traceframe_fun),
len);
func_val->modifiable = 0;
deprecated_set_value_modifiable (func_val, 0);
set_internalvar (lookup_internalvar ("trace_func"), func_val);
}
@ -322,7 +322,7 @@ set_traceframe_context (CORE_ADDR trace_pc)
memcpy (value_contents_raw (file_val),
traceframe_sal.symtab->filename,
len);
file_val->modifiable = 0;
deprecated_set_value_modifiable (file_val, 0);
set_internalvar (lookup_internalvar ("trace_file"), file_val);
}
}

View file

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

View file

@ -21,10 +21,6 @@
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Hack so that value.h can detect when it's being included by
value.c. */
#define VALUE_C
#include "defs.h"
#include "gdb_string.h"
#include "symtab.h"
@ -273,6 +269,17 @@ deprecated_value_regnum_hack (struct value *value)
{
return &value->regnum;
}
int
deprecated_value_modifiable (struct value *value)
{
return value->modifiable;
}
void
deprecated_set_value_modifiable (struct value *value, int modifiable)
{
value->modifiable = modifiable;
}
/* Return a mark in the value chain. All values allocated after the
mark is obtained (except for those released) are subject to being freed

View file

@ -80,11 +80,7 @@ struct value
struct frame_id frame_id;
/* Type of the value. */
#ifdef VALUE_C
struct type *type;
#else
struct type *xtype;
#endif
/* If a value represents a C++ object, then the `type' field gives
the object's compile-time type. If the object actually belongs
@ -187,6 +183,13 @@ extern int value_bitsize (struct value *);
extern int value_bitpos (struct value *);
extern int value_offset (struct value *);
/* 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 (struct value *value);
extern void deprecated_set_value_modifiable (struct value *value,
int modifiable);
extern struct type *value_enclosing_type (struct value *);
extern int value_lazy (struct value *);
extern void set_value_lazy (struct value *value, int val);