[pushed] gdb: make get_array_bounds return bool

Simon Marchi simon.marchi@polymtl.ca
Tue Nov 17 23:47:39 GMT 2020


Obvious change from int to bool.  I took the opportunity to move the doc
to the header file.

gdb/ChangeLog:

	* gdbtypes.h (get_array_bounds): Return bool, adjust some
	callers.  Move doc here.
	* gdbtypes.c (get_array_bounds): Return bool

Change-Id: I8ed20298cb0927963c1f09b345966533d5ed06e2
---
 gdb/ChangeLog                     |  6 ++++++
 gdb/compile/compile-c-types.c     |  2 +-
 gdb/compile/compile-cplus-types.c |  2 +-
 gdb/gdbtypes.c                    | 15 +++++----------
 gdb/gdbtypes.h                    | 11 +++++++++--
 5 files changed, 22 insertions(+), 14 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index a887a83e0811..e0be2afb8d55 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2020-11-17  Simon Marchi  <simon.marchi@polymtl.ca>
+
+	* gdbtypes.h (get_array_bounds): Return bool, adjust some
+	callers.  Move doc here.
+	* gdbtypes.c (get_array_bounds): Return bool
+
 2020-11-17  Andrew Burgess  <andrew.burgess@embecosm.com>
 
 	* arc-linux-tdep.c (arc_linux_sw_breakpoint_from_kind): Add an
diff --git a/gdb/compile/compile-c-types.c b/gdb/compile/compile-c-types.c
index 82c9af37b5fb..87fc4e55eb2b 100644
--- a/gdb/compile/compile-c-types.c
+++ b/gdb/compile/compile-c-types.c
@@ -70,7 +70,7 @@ convert_array (compile_c_instance *context, struct type *type)
     {
       LONGEST low_bound, high_bound, count;
 
-      if (get_array_bounds (type, &low_bound, &high_bound) == 0)
+      if (!get_array_bounds (type, &low_bound, &high_bound))
 	count = -1;
       else
 	{
diff --git a/gdb/compile/compile-cplus-types.c b/gdb/compile/compile-cplus-types.c
index 75b226d900e9..e284ceb3e455 100644
--- a/gdb/compile/compile-cplus-types.c
+++ b/gdb/compile/compile-cplus-types.c
@@ -491,7 +491,7 @@ compile_cplus_convert_array (compile_cplus_instance *instance,
     {
       LONGEST low_bound, high_bound, count;
 
-      if (get_array_bounds (type, &low_bound, &high_bound) == 0)
+      if (!get_array_bounds (type, &low_bound, &high_bound))
 	count = -1;
       else
 	{
diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index 2f92887b3cfc..cde077027343 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -1119,14 +1119,9 @@ get_discrete_bounds (struct type *type, LONGEST *lowp, LONGEST *highp)
     }
 }
 
-/* Assuming TYPE is a simple, non-empty array type, compute its upper
-   and lower bound.  Save the low bound into LOW_BOUND if not NULL.
-   Save the high bound into HIGH_BOUND if not NULL.
-
-   Return 1 if the operation was successful.  Return zero otherwise,
-   in which case the values of LOW_BOUND and HIGH_BOUNDS are unmodified.  */
+/* See gdbtypes.h  */
 
-int
+bool
 get_array_bounds (struct type *type, LONGEST *low_bound, LONGEST *high_bound)
 {
   struct type *index = type->index_type ();
@@ -1135,11 +1130,11 @@ get_array_bounds (struct type *type, LONGEST *low_bound, LONGEST *high_bound)
   int res;
 
   if (index == NULL)
-    return 0;
+    return false;
 
   res = get_discrete_bounds (index, &low, &high);
   if (res == -1)
-    return 0;
+    return false;
 
   if (low_bound)
     *low_bound = low;
@@ -1147,7 +1142,7 @@ get_array_bounds (struct type *type, LONGEST *low_bound, LONGEST *high_bound)
   if (high_bound)
     *high_bound = high;
 
-  return 1;
+  return true;
 }
 
 /* Assuming that TYPE is a discrete type and VAL is a valid integer
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
index 5f9ac27b5151..2b6f599f4c7a 100644
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -2435,8 +2435,15 @@ extern int get_vptr_fieldno (struct type *, struct type **);
 
 extern int get_discrete_bounds (struct type *, LONGEST *, LONGEST *);
 
-extern int get_array_bounds (struct type *type, LONGEST *low_bound,
-			     LONGEST *high_bound);
+/* Assuming TYPE is a simple, non-empty array type, compute its upper
+   and lower bound.  Save the low bound into LOW_BOUND if not NULL.
+   Save the high bound into HIGH_BOUND if not NULL.
+
+   Return true if the operation was successful.  Return false otherwise,
+   in which case the values of LOW_BOUND and HIGH_BOUNDS are unmodified.  */
+
+extern bool get_array_bounds (struct type *type, LONGEST *low_bound,
+			      LONGEST *high_bound);
 
 extern int discrete_position (struct type *type, LONGEST val, LONGEST *pos);
 
-- 
2.29.1



More information about the Gdb-patches mailing list