* valarith.c (value_subscript): Copy VALUE_FRAME_ID.
authorDaniel Jacobowitz <drow@false.org>
Sun, 21 Nov 2004 19:52:13 +0000 (19:52 +0000)
committerDaniel Jacobowitz <drow@false.org>
Sun, 21 Nov 2004 19:52:13 +0000 (19:52 +0000)
(value_subscripted_rvalue): Likewise.
* valops.c (search_struct_field, value_slice): Likewise.

gdb/ChangeLog
gdb/valarith.c
gdb/valops.c

index 1a525bc96cb5e997bea64e251942091d73ded96b..834ed23377fe24f37bcfee17f6537acdd4683f40 100644 (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>
 
        * inf-ptrace.c: Don't include "regcache.h" and "gdbcmd.h".
index ea93ea111117dcfc76b089d7f0e595e020d3a4e5..00f20e16c41e845ee7adf16235a22c35dc94402d 100644 (file)
@@ -239,6 +239,7 @@ value_subscript (struct value *array, struct value *idx)
       if (VALUE_LVAL (array) == lval_internalvar)
        VALUE_LVAL (v) = lval_internalvar_component;
       VALUE_ADDRESS (v) = VALUE_ADDRESS (array);
+      VALUE_FRAME_ID (v) = VALUE_FRAME_ID (array);
       v->offset = offset + value_offset (array);
       return v;
     }
@@ -278,6 +279,7 @@ value_subscripted_rvalue (struct value *array, struct value *idx, int lowerbound
     VALUE_LVAL (v) = VALUE_LVAL (array);
   VALUE_ADDRESS (v) = VALUE_ADDRESS (array);
   VALUE_REGNUM (v) = VALUE_REGNUM (array);
+  VALUE_FRAME_ID (v) = VALUE_FRAME_ID (array);
   v->offset = value_offset (array) + elt_offs;
   return v;
 }
index fa63871a532da5d886205b6e72a1779de1cdcbf6..c708fac590ae61cb17d1b8a5821b64d24cc97593 100644 (file)
@@ -1307,6 +1307,7 @@ search_struct_field (char *name, struct value *arg1, int offset,
            {
              VALUE_LVAL (v2) = VALUE_LVAL (arg1);
              VALUE_ADDRESS (v2) = VALUE_ADDRESS (arg1);
+             VALUE_FRAME_ID (v2) = VALUE_FRAME_ID (arg1);
              v2->offset = value_offset (arg1) + boffset;
              if (VALUE_LAZY (arg1))
                VALUE_LAZY (v2) = 1;
@@ -2768,6 +2769,7 @@ value_slice (struct value *array, int lowbound, int length)
       else
        VALUE_LVAL (slice) = VALUE_LVAL (array);
       VALUE_ADDRESS (slice) = VALUE_ADDRESS (array);
+      VALUE_FRAME_ID (slice) = VALUE_FRAME_ID (array);
       slice->offset = value_offset (array) + offset;
     }
   return slice;