[binutils-gdb] gdb: address review comments of previous series

Simon Marchi simark@sourceware.org
Wed Dec 9 19:50:50 GMT 2020


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6ad368b8caf6650852983fc23814c9f393da0439

commit 6ad368b8caf6650852983fc23814c9f393da0439
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Wed Dec 9 14:49:02 2020 -0500

    gdb: address review comments of previous series
    
    I forgot to include fixes for review comments I got before pushing the
    previous commits (or I pushed the wrong commits).  This one fixes it.
    
     - Return {} instead of false in get_discrete_low_bound and
       get_discrete_high_bound.
     - Compute high bound after confirming low bound is valid in
       get_discrete_bounds.
    
    gdb/ChangeLog:
    
            * gdbtypes.c (get_discrete_low_bound, get_discrete_high_bound):
            Return {} instead of false.
            (get_discrete_bounds): Compute high bound only if low bound is
            valid.
    
    Change-Id: I5f9a66b3672adfac9441068c899ab113ab2c331a

Diff:
---
 gdb/ChangeLog  |  7 +++++++
 gdb/gdbtypes.c | 14 ++++++++------
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0e01628c651..afdfc772094 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2020-12-09  Simon Marchi  <simon.marchi@polymtl.ca>
+
+	* gdbtypes.c (get_discrete_low_bound, get_discrete_high_bound):
+	Return {} instead of false.
+	(get_discrete_bounds): Compute high bound only if low bound is
+	valid.
+
 2020-12-09  Simon Marchi  <simon.marchi@efficios.com>
 
 	PR 26875, PR 26901
diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index 9a170080d30..3e489fd1803 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -1093,7 +1093,7 @@ get_discrete_low_bound (struct type *type)
 
     case TYPE_CODE_INT:
       if (TYPE_LENGTH (type) > sizeof (LONGEST))	/* Too big */
-	return false;
+	return {};
 
       if (!type->is_unsigned ())
 	return -(1 << (TYPE_LENGTH (type) * TARGET_CHAR_BIT - 1));
@@ -1103,7 +1103,7 @@ get_discrete_low_bound (struct type *type)
       return 0;
 
     default:
-      return false;
+      return {};
     }
 }
 
@@ -1160,7 +1160,7 @@ get_discrete_high_bound (struct type *type)
 
     case TYPE_CODE_INT:
       if (TYPE_LENGTH (type) > sizeof (LONGEST))	/* Too big */
-	return false;
+	return {};
 
       if (!type->is_unsigned ())
 	{
@@ -1179,7 +1179,7 @@ get_discrete_high_bound (struct type *type)
       }
 
     default:
-      return false;
+      return {};
     }
 }
 
@@ -1189,9 +1189,11 @@ bool
 get_discrete_bounds (struct type *type, LONGEST *lowp, LONGEST *highp)
 {
   gdb::optional<LONGEST> low = get_discrete_low_bound (type);
-  gdb::optional<LONGEST> high = get_discrete_high_bound (type);
+  if (!low.has_value ())
+    return false;
 
-  if (!low.has_value () || !high.has_value ())
+  gdb::optional<LONGEST> high = get_discrete_high_bound (type);
+  if (!high.has_value ())
     return false;
 
   *lowp = *low;


More information about the Gdb-cvs mailing list