* valarith.c (value_subscript): Copy VALUE_FRAME_ID.

(value_subscripted_rvalue): Likewise.
	* valops.c (search_struct_field, value_slice): Likewise.
This commit is contained in:
Daniel Jacobowitz
2004-11-21 19:52:13 +00:00
parent 2c4a536d5d
commit 65d3800afd
3 changed files with 10 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2004-11-21 Daniel Jacobowitz <dan@debian.org>
* valarith.c (value_subscript): Copy VALUE_FRAME_ID.
(value_subscripted_rvalue): Likewise.
* valops.c (search_struct_field, value_slice): Likewise.
2004-11-21 Mark Kettenis <kettenis@gnu.org> 2004-11-21 Mark Kettenis <kettenis@gnu.org>
* inf-ptrace.c: Don't include "regcache.h" and "gdbcmd.h". * inf-ptrace.c: Don't include "regcache.h" and "gdbcmd.h".

View File

@ -239,6 +239,7 @@ value_subscript (struct value *array, struct value *idx)
if (VALUE_LVAL (array) == lval_internalvar) if (VALUE_LVAL (array) == lval_internalvar)
VALUE_LVAL (v) = lval_internalvar_component; VALUE_LVAL (v) = lval_internalvar_component;
VALUE_ADDRESS (v) = VALUE_ADDRESS (array); VALUE_ADDRESS (v) = VALUE_ADDRESS (array);
VALUE_FRAME_ID (v) = VALUE_FRAME_ID (array);
v->offset = offset + value_offset (array); v->offset = offset + value_offset (array);
return v; return v;
} }
@ -278,6 +279,7 @@ value_subscripted_rvalue (struct value *array, struct value *idx, int lowerbound
VALUE_LVAL (v) = VALUE_LVAL (array); VALUE_LVAL (v) = VALUE_LVAL (array);
VALUE_ADDRESS (v) = VALUE_ADDRESS (array); VALUE_ADDRESS (v) = VALUE_ADDRESS (array);
VALUE_REGNUM (v) = VALUE_REGNUM (array); VALUE_REGNUM (v) = VALUE_REGNUM (array);
VALUE_FRAME_ID (v) = VALUE_FRAME_ID (array);
v->offset = value_offset (array) + elt_offs; v->offset = value_offset (array) + elt_offs;
return v; return v;
} }

View File

@ -1307,6 +1307,7 @@ search_struct_field (char *name, struct value *arg1, int offset,
{ {
VALUE_LVAL (v2) = VALUE_LVAL (arg1); VALUE_LVAL (v2) = VALUE_LVAL (arg1);
VALUE_ADDRESS (v2) = VALUE_ADDRESS (arg1); VALUE_ADDRESS (v2) = VALUE_ADDRESS (arg1);
VALUE_FRAME_ID (v2) = VALUE_FRAME_ID (arg1);
v2->offset = value_offset (arg1) + boffset; v2->offset = value_offset (arg1) + boffset;
if (VALUE_LAZY (arg1)) if (VALUE_LAZY (arg1))
VALUE_LAZY (v2) = 1; VALUE_LAZY (v2) = 1;
@ -2768,6 +2769,7 @@ value_slice (struct value *array, int lowbound, int length)
else else
VALUE_LVAL (slice) = VALUE_LVAL (array); VALUE_LVAL (slice) = VALUE_LVAL (array);
VALUE_ADDRESS (slice) = VALUE_ADDRESS (array); VALUE_ADDRESS (slice) = VALUE_ADDRESS (array);
VALUE_FRAME_ID (slice) = VALUE_FRAME_ID (array);
slice->offset = value_offset (array) + offset; slice->offset = value_offset (array) + offset;
} }
return slice; return slice;