From 8008e2653ff2b755fbe7dd61793201721cfdc535 Mon Sep 17 00:00:00 2001 From: Joel Brobecker Date: Tue, 24 Mar 2009 02:04:19 +0000 Subject: [PATCH] * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure we try to apply the attribute on the real type, rather than its associated typedef. --- gdb/ChangeLog | 6 ++++++ gdb/ada-lang.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f6f8c29..7754d64 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2009-03-23 Joel Brobecker + * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure + we try to apply the attribute on the real type, rather than + its associated typedef. + +2009-03-23 Joel Brobecker + * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef to make sure we try to get the modulus of the actual type, not the associated typedef. diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c index 38902af..f257fb3 100644 --- a/gdb/ada-lang.c +++ b/gdb/ada-lang.c @@ -8786,7 +8786,7 @@ ada_evaluate_subexp (struct type *expect_type, struct expression *exp, case UNOP_IN_RANGE: (*pos) += 2; arg1 = evaluate_subexp (NULL_TYPE, exp, pos, noside); - type = exp->elts[pc + 1].type; + type = check_typedef (exp->elts[pc + 1].type); if (noside == EVAL_SKIP) goto nosideret; -- 2.7.4