aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/ada-lang.c2
2 files changed, 8 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e1dda4c..6c811ea 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
2014-04-28 Joel Brobecker <brobecker@adacore.com>
+ * ada-lang.c (ada_discrete_type_high_bound): Resolve the type's
+ dynamic bounds before computing its upper bound.
+ (ada_discrete_type_low_bound): Same as above with the lower bound.
+
+2014-04-28 Joel Brobecker <brobecker@adacore.com>
+
* dwarf2read.c (is_dynamic_type): Return true for dynamic
range types. Adjust the array handling implementation to
take advantage of this change.
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index 0acc1b5..38972c6 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -793,6 +793,7 @@ min_of_type (struct type *t)
LONGEST
ada_discrete_type_high_bound (struct type *type)
{
+ type = resolve_dynamic_type (type, 0);
switch (TYPE_CODE (type))
{
case TYPE_CODE_RANGE:
@@ -813,6 +814,7 @@ ada_discrete_type_high_bound (struct type *type)
LONGEST
ada_discrete_type_low_bound (struct type *type)
{
+ type = resolve_dynamic_type (type, 0);
switch (TYPE_CODE (type))
{
case TYPE_CODE_RANGE: