From 72fc29ff1236177b2be5f702ed40c7d327897e7e Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Fri, 13 May 2011 15:44:49 +0000 Subject: * utils.c (do_value_free): New function. (make_cleanup_value_free): Likewise. * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle value freeing correctly. (dwarf2_loc_desc_needs_frame): Call make_cleanup_value_free_to_mark. * dwarf2expr.h (struct dwarf_expr_context) : Remove field. * dwarf2expr.c (free_dwarf_expr_context): Don't call value_free_to_mark. (new_dwarf_expr_context): Don't call value_mark. * dwarf2-frame.c (execute_stack_op): Call make_cleanup_value_free_to_mark. * defs.h (make_cleanup_value_free): Declare. --- gdb/dwarf2expr.h | 4 ---- 1 file changed, 4 deletions(-) (limited to 'gdb/dwarf2expr.h') diff --git a/gdb/dwarf2expr.h b/gdb/dwarf2expr.h index 281c65b..676b54b 100644 --- a/gdb/dwarf2expr.h +++ b/gdb/dwarf2expr.h @@ -81,10 +81,6 @@ struct dwarf_expr_context /* Offset used to relocate DW_OP_addr argument. */ CORE_ADDR offset; - /* The evaluator is value-based, and frees values up to this point - when the expression context is destroyed. */ - struct value *mark; - /* An opaque argument provided by the caller, which will be passed to all of the callback functions. */ void *baton; -- cgit v1.1