From 11b4b7cc1fdcc85aeeb79d7bb1cac64542404cd5 Mon Sep 17 00:00:00 2001 From: Andrew Burgess Date: Tue, 30 Jul 2013 15:36:18 +0000 Subject: Don't raise an error for optimized out sub-fields. http://sourceware.org/ml/gdb-patches/2013-07/msg00317.html gdb/ChangeLog * value.c (value_fetch_lazy): Mark optimized out values as such rather than raising an error. gdb/testsuite/ChangeLog * gdb.dwarf2/pieces-optimized-out.exp: Expect "" when printing an optimized out value. Expect an error when using an optimized out value in an expression. --- gdb/value.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'gdb/value.c') diff --git a/gdb/value.c b/gdb/value.c index 8e0f8c4..8d635c7 100644 --- a/gdb/value.c +++ b/gdb/value.c @@ -3439,9 +3439,8 @@ value_fetch_lazy (struct value *val) if (!value_bits_valid (parent, TARGET_CHAR_BIT * offset + value_bitpos (val), value_bitsize (val))) - error (_("value has been optimized out")); - - if (!unpack_value_bits_as_long (value_type (val), + set_value_optimized_out (val, 1); + else if (!unpack_value_bits_as_long (value_type (val), value_contents_for_printing (parent), offset, value_bitpos (val), -- cgit v1.1