diff options
author | Tom Tromey <tromey@redhat.com> | 2011-06-22 13:38:21 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2011-06-22 13:38:21 +0000 |
commit | c38c4bc5b298545effe1f4afb31d53d66153f189 (patch) | |
tree | 2139b0ea529b088087b778ecee5427e7def7c3a5 | |
parent | b138ce370d0b62f15547b24c5aac4a8a02af07d9 (diff) | |
download | gdb-c38c4bc5b298545effe1f4afb31d53d66153f189.zip gdb-c38c4bc5b298545effe1f4afb31d53d66153f189.tar.gz gdb-c38c4bc5b298545effe1f4afb31d53d66153f189.tar.bz2 |
* dwarf2expr.c (execute_stack_op) <DW_OP_GNU_convert>: Treat type
argument of 0 specially.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/dwarf2expr.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b114428..1c5ef95 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2011-06-22 Tom Tromey <tromey@redhat.com> + + * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_convert>: Treat type + argument of 0 specially. + 2011-06-22 Yao Qi <yao@codesourcery.com> * infrun.c (handle_inferior_event): Remove write-only local variable diff --git a/gdb/dwarf2expr.c b/gdb/dwarf2expr.c index 23389b8..c5ea85d 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); |