From: Tom Tromey Date: Wed, 22 Jun 2011 13:38:21 +0000 (+0000) Subject: * dwarf2expr.c (execute_stack_op) : Treat type X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c38c4bc5b298545effe1f4afb31d53d66153f189;p=binutils-gdb.git * dwarf2expr.c (execute_stack_op) : Treat type argument of 0 specially. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b11442854f4..1c5ef959a03 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2011-06-22 Tom Tromey + + * dwarf2expr.c (execute_stack_op) : Treat type + argument of 0 specially. + 2011-06-22 Yao Qi * infrun.c (handle_inferior_event): Remove write-only local variable diff --git a/gdb/dwarf2expr.c b/gdb/dwarf2expr.c index 23389b8b31d..c5ea85da802 100644 --- a/gdb/dwarf2expr.c +++ b/gdb/dwarf2expr.c @@ -1229,7 +1229,10 @@ execute_stack_op (struct dwarf_expr_context *ctx, op_ptr = read_uleb128 (op_ptr, op_end, &type_die); - type = dwarf_get_base_type (ctx, type_die, 0); + if (type_die == 0) + type = address_type; + else + type = dwarf_get_base_type (ctx, type_die, 0); result_val = dwarf_expr_fetch (ctx, 0); dwarf_expr_pop (ctx);