summaryrefslogtreecommitdiff
path: root/gdb/ada-lang.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2023-04-19 09:40:20 -0600
committerTom Tromey <tromey@adacore.com>2023-05-12 12:30:28 -0600
commit9c0fb73485cb2c90bb10cb4d3cf1d27e36f9ff01 (patch)
tree88f1ca4555a484b28c4fcbe822ac8c925835fd8b /gdb/ada-lang.c
parent14e8fded85efa824e6652ed876229e5c24758b72 (diff)
downloadbinutils-gdb-9c0fb73485cb2c90bb10cb4d3cf1d27e36f9ff01.tar.gz
Add dynamic_prop::is_constant
I noticed many spots checking whether a dynamic property's kind is PROP_CONST. Some spots, I think, are doing a slightly incorrect check -- checking for != PROP_UNDEFINED where == PROP_CONST is actually required, the key thing being that const_val may only be called for PROP_CONST properties. This patch adds dynamic::is_constant and then updates these checks to use it. Regression tested on x86-64 Fedora 36.
Diffstat (limited to 'gdb/ada-lang.c')
-rw-r--r--gdb/ada-lang.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index df5fd80414d..a67ecc09f95 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -673,7 +673,7 @@ ada_discrete_type_high_bound (struct type *type)
{
const dynamic_prop &high = type->bounds ()->high;
- if (high.kind () == PROP_CONST)
+ if (high.is_constant ())
return high.const_val ();
else
{
@@ -708,7 +708,7 @@ ada_discrete_type_low_bound (struct type *type)
{
const dynamic_prop &low = type->bounds ()->low;
- if (low.kind () == PROP_CONST)
+ if (low.is_constant ())
return low.const_val ();
else
{
@@ -11576,7 +11576,7 @@ ada_modulus (struct type *type)
{
const dynamic_prop &high = type->bounds ()->high;
- if (high.kind () == PROP_CONST)
+ if (high.is_constant ())
return (ULONGEST) high.const_val () + 1;
/* If TYPE is unresolved, the high bound might be a location list. Return