From 648027ccebd4461f6e38ed9e708990cf16af526d Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Fri, 26 Oct 2007 23:04:57 +0000 Subject: [PATCH] * ax-general.c (gen_traced_pop, gen_int_literal) (gen_usual_arithmetic): Check for typedefs. --- gdb/ChangeLog | 5 +++++ gdb/ax-gdb.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 03af1e05b3b..22695494e59 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2007-10-26 Jim Blandy + + * ax-general.c (gen_traced_pop, gen_int_literal) + (gen_usual_arithmetic): Check for typedefs. + 2007-10-26 Joel Brobecker * parse.c (prefixify_expression): Minor reformatting. diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c index 18b7e31c4d4..27cc5b1ea35 100644 --- a/gdb/ax-gdb.c +++ b/gdb/ax-gdb.c @@ -319,7 +319,7 @@ gen_traced_pop (struct agent_expr *ax, struct axs_value *value) case axs_lvalue_memory: { - int length = TYPE_LENGTH (value->type); + int length = TYPE_LENGTH (check_typedef (value->type)); /* There's no point in trying to use a trace_quick bytecode here, since "trace_quick SIZE pop" is three bytes, whereas @@ -650,7 +650,7 @@ gen_int_literal (struct agent_expr *ax, struct axs_value *value, LONGEST k, { ax_const_l (ax, k); value->kind = axs_rvalue; - value->type = type; + value->type = check_typedef (type); } @@ -854,7 +854,7 @@ gen_usual_arithmetic (struct agent_expr *ax, struct axs_value *value1, ax_simple (ax, aop_swap); } - value1->type = value2->type = target; + value1->type = value2->type = check_typedef (target); } } -- 2.30.2