forked from Imagelibrary/binutils-gdb
constify struct block in some places
This makes some spots in gdb, particularly general_symbol_info, use a "const struct block", then fixes the fallout. The justification is that, ordinarily, blocks ought to be readonly. Note though that we can't add "const" in the blockvector due to block relocation. This can be done once blocks are made independent of the program space. 2014-06-18 Tom Tromey <tromey@redhat.com> * varobj.c (varobj_create): Update. * valops.c (value_of_this): Update. * tracepoint.c (add_local_symbols, scope_info): Update. * symtab.h (struct general_symbol_info) <block>: Now const. * symtab.c (skip_prologue_sal) (default_make_symbol_completion_list_break_on) (skip_prologue_using_sal): Update. * stack.h (iterate_over_block_locals) (iterate_over_block_local_vars): Update. * stack.c (print_frame_args): Update. (iterate_over_block_locals, iterate_over_block_local_vars): Make parameter const. (get_selected_block): Make return type const. * python/py-frame.c (frapy_block): Update. * python/py-block.c (gdbpy_block_for_pc): Update. * p-exp.y (%union) <bval>: Now const. * mi/mi-cmd-stack.c (list_args_or_locals): Update. * mdebugread.c (mylookup_symbol, parse_procedure): Update. * m2-exp.y (%union) <bval>: Now const. * linespec.c (get_current_search_block): Make return type const. (create_sals_line_offset, find_label_symbols): Update. * inline-frame.c (inline_frame_sniffer, skip_inline_frames): Update. (block_starting_point_at): Make "block" const. * infrun.c (insert_exception_resume_breakpoint): Make "b" const. (check_exception_resume): Update. * guile/scm-frame.c (gdbscm_frame_block): Update. * guile/scm-block.c (gdbscm_lookup_block): Update. * frame.h (get_frame_block): Update. (get_selected_block): Make return type const. * frame.c (frame_id_inner): Update. * f-valprint.c (info_common_command_for_block) (info_common_command): Update. * dwarf2loc.c (dwarf2_find_location_expression) (dwarf_expr_frame_base, dwarf2_compile_expr_to_ax) (locexpr_describe_location_piece): Update. * c-exp.y (%union) <bval>: Now const. * breakpoint.c (resolve_sal_pc): Update. * blockframe.c (get_frame_block):Make return type const. (get_pc_function_start, get_frame_function, find_pc_sect_function) (block_innermost_frame): Update. * block.h (blockvector_for_pc, blockvector_for_pc_sect) (block_for_pc, block_for_pc_sect): Update. * block.c (blockvector_for_pc_sect, blockvector_for_pc): Make 'pblock' const. (block_for_pc_sect, block_for_pc): Make return type const. * ax-gdb.c (gen_expr): Update. * alpha-mdebug-tdep.c (find_proc_desc): Update. * ada-lang.c (ada_read_renaming_var_value): Make 'block' const. (ada_make_symbol_completion_list, ada_add_exceptions_from_frame) (ada_read_var_value): Update. * ada-exp.y (struct name_info) <block>: Now const. (%union): Likewise. (block_lookup): Constify.
This commit is contained in:
@@ -4168,7 +4168,7 @@ parse_old_style_renaming (struct type *type,
|
||||
|
||||
static struct value *
|
||||
ada_read_renaming_var_value (struct symbol *renaming_sym,
|
||||
struct block *block)
|
||||
const struct block *block)
|
||||
{
|
||||
const char *sym_name;
|
||||
struct expression *expr;
|
||||
@@ -6133,7 +6133,7 @@ ada_make_symbol_completion_list (const char *text0, const char *word,
|
||||
struct symtab *s;
|
||||
struct minimal_symbol *msymbol;
|
||||
struct objfile *objfile;
|
||||
struct block *b, *surrounding_static_block = 0;
|
||||
const struct block *b, *surrounding_static_block = 0;
|
||||
int i;
|
||||
struct block_iterator iter;
|
||||
struct cleanup *old_chain = make_cleanup (null_cleanup, NULL);
|
||||
@@ -12758,7 +12758,7 @@ static void
|
||||
ada_add_exceptions_from_frame (regex_t *preg, struct frame_info *frame,
|
||||
VEC(ada_exc_info) **exceptions)
|
||||
{
|
||||
struct block *block = get_frame_block (frame, 0);
|
||||
const struct block *block = get_frame_block (frame, 0);
|
||||
|
||||
while (block != 0)
|
||||
{
|
||||
@@ -13444,7 +13444,7 @@ ada_get_symbol_name_cmp (const char *lookup_name)
|
||||
static struct value *
|
||||
ada_read_var_value (struct symbol *var, struct frame_info *frame)
|
||||
{
|
||||
struct block *frame_block = NULL;
|
||||
const struct block *frame_block = NULL;
|
||||
struct symbol *renaming_sym = NULL;
|
||||
|
||||
/* The only case where default_read_var_value is not sufficient
|
||||
|
||||
Reference in New Issue
Block a user