OSDN Git Service

Base support for <unavailable> value contents.
authorpalves <palves>
Mon, 14 Feb 2011 20:10:49 +0000 (20:10 +0000)
committerpalves <palves>
Mon, 14 Feb 2011 20:10:49 +0000 (20:10 +0000)
commite9635dfdbd87b89a8b439f5419988e735cc8247f
treecaa18aabfa3bbfa1ab36d0e459faefec9b9bc22a
parent6c70660737f3b5715813c96a3eaa4bde5e783d84
Base support for <unavailable> value contents.

gdb/
* value.h (value_bytes_available): Declare.
(mark_value_bytes_unavailable): Declare.
* value.c (struct range): New struct.
(range_s): New typedef.
(ranges_overlap): New function.
(range_lessthan): New function.
(ranges_contain_p): New function.
(struct value) <unavailable>: New field.
(value_bytes_available): New function.
(mark_value_bytes_unavailable): New function.
(require_not_optimized_out): Constify parameter.
(require_available): New function.
(value_contents_all, value_contents): Require all bytes be
available.
(value_free): Free `unavailable'.
(value_copy): Copy `unavailable'.
* valprint.h (val_print_unavailable): Declare.
* valprint.c (valprint_check_validity): Rename `offset' parameter
to `embedded_offset'.  If printing a scalar, check whether the
value chunk is available.
(val_print_unavailable): New.
(val_print_scalar_formatted): Check whether the value is
available.
* python/py-prettyprint.c (apply_val_pretty_printer): Refuse
pretty-printing unavailable values.
gdb/ChangeLog
gdb/python/py-prettyprint.c
gdb/valprint.c
gdb/valprint.h
gdb/value.c
gdb/value.h