diff options
author | Doug Evans <dje@google.com> | 2010-11-10 17:47:23 +0000 |
---|---|---|
committer | Doug Evans <dje@google.com> | 2010-11-10 17:47:23 +0000 |
commit | 4dfea5604987eeb861eccccafbfa29e38002ea25 (patch) | |
tree | b60c9fc26ba7b10793dcd48a17c6de46024cd360 /gdb/valops.c | |
parent | 51020d214bfe2cd8b912db0f3f2fafb40df28bc2 (diff) | |
download | gdb-4dfea5604987eeb861eccccafbfa29e38002ea25.zip gdb-4dfea5604987eeb861eccccafbfa29e38002ea25.tar.gz gdb-4dfea5604987eeb861eccccafbfa29e38002ea25.tar.bz2 |
* value.c (set_value_enclosing_type): Renamed from
value_change_enclosing_type. All callers updated.
* value.h (set_value_enclosing_type): Update.
* valops.c (value_full_object): Always return a copy if we need to
make changes to the input value.
Diffstat (limited to 'gdb/valops.c')
-rw-r--r-- | gdb/valops.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/gdb/valops.c b/gdb/valops.c index 9ddf94d..932e311 100644 --- a/gdb/valops.c +++ b/gdb/valops.c @@ -335,7 +335,7 @@ value_cast_pointers (struct type *type, struct value *arg2) /* No superclass found, just change the pointer type. */ arg2 = value_copy (arg2); deprecated_set_value_type (arg2, type); - arg2 = value_change_enclosing_type (arg2, type); + set_value_enclosing_type (arg2, type); set_value_pointed_to_offset (arg2, 0); /* pai: chk_val */ return arg2; } @@ -569,7 +569,7 @@ value_cast (struct type *type, struct value *arg2) arg2 = value_copy (arg2); deprecated_set_value_type (arg2, type); - arg2 = value_change_enclosing_type (arg2, type); + set_value_enclosing_type (arg2, type); set_value_pointed_to_offset (arg2, 0); /* pai: chk_val */ return arg2; } @@ -1139,11 +1139,9 @@ value_assign (struct value *toval, struct value *fromval) case lval_internalvar: set_internalvar (VALUE_INTERNALVAR (toval), fromval); val = value_copy (fromval); - val = value_change_enclosing_type (val, - value_enclosing_type (fromval)); + set_value_enclosing_type (val, value_enclosing_type (fromval)); set_value_embedded_offset (val, value_embedded_offset (fromval)); - set_value_pointed_to_offset (val, - value_pointed_to_offset (fromval)); + set_value_pointed_to_offset (val, value_pointed_to_offset (fromval)); return val; case lval_internalvar_component: @@ -1334,8 +1332,7 @@ value_assign (struct value *toval, struct value *fromval) memcpy (value_contents_raw (val), value_contents (fromval), TYPE_LENGTH (type)); deprecated_set_value_type (val, type); - val = value_change_enclosing_type (val, - value_enclosing_type (fromval)); + set_value_enclosing_type (val, value_enclosing_type (fromval)); set_value_embedded_offset (val, value_embedded_offset (fromval)); set_value_pointed_to_offset (val, value_pointed_to_offset (fromval)); @@ -1583,7 +1580,8 @@ value_addr (struct value *arg1) /* This may be a pointer to a base subobject; so remember the full derived object's type ... */ - arg2 = value_change_enclosing_type (arg2, lookup_pointer_type (value_enclosing_type (arg1))); + set_value_enclosing_type (arg2, + lookup_pointer_type (value_enclosing_type (arg1))); /* ... and also the relative position of the subobject in the full object. */ set_value_pointed_to_offset (arg2, value_embedded_offset (arg1)); @@ -1644,7 +1642,7 @@ value_ind (struct value *arg1) /* Re-adjust type. */ deprecated_set_value_type (arg2, TYPE_TARGET_TYPE (base_type)); /* Add embedding info. */ - arg2 = value_change_enclosing_type (arg2, enc_type); + set_value_enclosing_type (arg2, enc_type); set_value_embedded_offset (arg2, value_pointed_to_offset (arg1)); /* We may be pointing to an object of some derived type. */ @@ -3413,7 +3411,8 @@ value_full_object (struct value *argp, /* pai: FIXME -- sounds iffy */ if (full) { - argp = value_change_enclosing_type (argp, real_type); + argp = value_copy (argp); + set_value_enclosing_type (argp, real_type); return argp; } |