From b59ff01d87bba785fadcd1da38da168b36289eba Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Tue, 14 Feb 2023 10:21:58 -0700 Subject: [PATCH] Return bool from more value methods There are several more value methods that currently return 'int' but that should return 'bool'. This patch updates these. Reviewed-By: Bruno Larsen --- gdb/value.c | 30 +++++++++++++++--------------- gdb/value.h | 22 +++++++++++----------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/gdb/value.c b/gdb/value.c index 55e893eedfa..e52d1d77b48 100644 --- a/gdb/value.c +++ b/gdb/value.c @@ -70,7 +70,7 @@ struct internal_function /* Returns true if the ranges defined by [offset1, offset1+len1) and [offset2, offset2+len2) overlap. */ -static int +static bool ranges_overlap (LONGEST offset1, ULONGEST len1, LONGEST offset2, ULONGEST len2) { @@ -84,7 +84,7 @@ ranges_overlap (LONGEST offset1, ULONGEST len1, /* Returns true if RANGES contains any range that overlaps [OFFSET, OFFSET+LENGTH). */ -static int +static bool ranges_contain (const std::vector &ranges, LONGEST offset, ULONGEST length) { @@ -132,7 +132,7 @@ ranges_contain (const std::vector &ranges, LONGEST offset, const struct range &bef = *(i - 1); if (ranges_overlap (bef.offset, bef.length, offset, length)) - return 1; + return true; } if (i < ranges.end ()) @@ -140,10 +140,10 @@ ranges_contain (const std::vector &ranges, LONGEST offset, const struct range &r = *i; if (ranges_overlap (r.offset, r.length, offset, length)) - return 1; + return true; } - return 0; + return false; } static struct cmd_list_element *functionlist; @@ -169,7 +169,7 @@ value::arch () const return type ()->arch (); } -int +bool value::bits_available (LONGEST offset, ULONGEST length) const { gdb_assert (!m_lazy); @@ -183,7 +183,7 @@ value::bits_available (LONGEST offset, ULONGEST length) const || ranges_contain (m_unavailable, offset, length)); } -int +bool value::bytes_available (LONGEST offset, ULONGEST length) const { ULONGEST sign = (1ULL << (sizeof (ULONGEST) * 8 - 1)) / TARGET_CHAR_BIT; @@ -197,7 +197,7 @@ value::bytes_available (LONGEST offset, ULONGEST length) const return bits_available (offset * TARGET_CHAR_BIT, length * TARGET_CHAR_BIT); } -int +bool value::bits_any_optimized_out (int bit_offset, int bit_length) const { gdb_assert (!m_lazy); @@ -205,7 +205,7 @@ value::bits_any_optimized_out (int bit_offset, int bit_length) const return ranges_contain (m_optimized_out, bit_offset, bit_length); } -int +bool value::entirely_available () { /* We can only tell whether the whole value is available when we try @@ -214,13 +214,13 @@ value::entirely_available () fetch_lazy (); if (m_unavailable.empty ()) - return 1; - return 0; + return true; + return false; } /* See value.h. */ -int +bool value::entirely_covered_by_range_vector (const std::vector &ranges) { /* We can only tell whether the whole value is optimized out / @@ -234,10 +234,10 @@ value::entirely_covered_by_range_vector (const std::vector &ranges) if (t.offset == 0 && t.length == TARGET_CHAR_BIT * enclosing_type ()->length ()) - return 1; + return true; } - return 0; + return false; } /* Insert into the vector pointed to by VECTORP the bit range starting of @@ -1256,7 +1256,7 @@ value::contents_writeable () return contents_raw (); } -int +bool value::optimized_out () { if (m_lazy) diff --git a/gdb/value.h b/gdb/value.h index 5536e00332e..f2a4907ab81 100644 --- a/gdb/value.h +++ b/gdb/value.h @@ -487,23 +487,23 @@ public: /* Given a value, determine whether the contents bytes starting at OFFSET and extending for LENGTH bytes are available. This returns - nonzero if all bytes in the given range are available, zero if any + true if all bytes in the given range are available, false if any byte is unavailable. */ - int bytes_available (LONGEST offset, ULONGEST length) const; + bool bytes_available (LONGEST offset, ULONGEST length) const; /* Given a value, determine whether the contents bits starting at OFFSET and extending for LENGTH bits are available. This returns - nonzero if all bits in the given range are available, zero if any + true if all bits in the given range are available, false if any bit is unavailable. */ - int bits_available (LONGEST offset, ULONGEST length) const; + bool bits_available (LONGEST offset, ULONGEST length) const; /* Like bytes_available, but return false if any byte in the whole object is unavailable. */ - int entirely_available (); + bool entirely_available (); /* Like entirely_available, but return false if any byte in the whole object is available. */ - int entirely_unavailable () + bool entirely_unavailable () { return entirely_covered_by_range_vector (m_unavailable); } /* Mark this value's content bytes starting at OFFSET and extending @@ -514,19 +514,19 @@ public: for LENGTH bits as unavailable. */ void mark_bits_unavailable (LONGEST offset, ULONGEST length); - /* If nonzero, this is the value of a variable which does not actually + /* If true, this is the value of a variable which does not actually exist in the program, at least partially. If the value is lazy, this may fetch it now. */ - int optimized_out (); + bool optimized_out (); /* Given a value, return true if any of the contents bits starting at OFFSET and extending for LENGTH bits is optimized out, false otherwise. */ - int bits_any_optimized_out (int bit_offset, int bit_length) const; + bool bits_any_optimized_out (int bit_offset, int bit_length) const; /* Like optimized_out, but return true iff the whole value is optimized out. */ - int entirely_optimized_out () + bool entirely_optimized_out () { return entirely_covered_by_range_vector (m_optimized_out); } @@ -829,7 +829,7 @@ private: /* Returns true if this value is entirely covered by RANGES. If the value is lazy, it'll be read now. Note that RANGE is a pointer to pointer because reading the value might change *RANGE. */ - int entirely_covered_by_range_vector (const std::vector &ranges); + bool entirely_covered_by_range_vector (const std::vector &ranges); /* Copy the ranges metadata from this value that overlaps [SRC_BIT_OFFSET, SRC_BIT_OFFSET+BIT_LENGTH) into DST, -- 2.30.2