@@ -3562,7 +3562,7 @@ resolve_subexp (expression_up *expp, int *pos, int deprocedure_p,
n_candidates =
ada_lookup_symbol_list (ada_decoded_op_name (op),
- (struct block *) NULL, VAR_DOMAIN,
+ NULL, VAR_DOMAIN,
&candidates);
i = ada_resolve_function (candidates.data (), n_candidates, argvec,
@@ -5416,7 +5416,8 @@ struct match_data
other has been found. */
static int
-aux_add_nonlocal_symbols (struct block *block, struct symbol *sym, void *data0)
+aux_add_nonlocal_symbols (const struct block *block, struct symbol *sym,
+ void *data0)
{
struct match_data *data = (struct match_data *) data0;
@@ -13560,7 +13561,7 @@ ada_add_global_exceptions (compiled_regex *preg,
for (i = GLOBAL_BLOCK; i <= STATIC_BLOCK; i++)
{
- struct block *b = BLOCKVECTOR_BLOCK (bv, i);
+ const struct block *b = BLOCKVECTOR_BLOCK (bv, i);
struct block_iterator iter;
struct symbol *sym;
@@ -131,16 +131,16 @@ block_inlined_p (const struct block *bl)
/* A helper function that checks whether PC is in the blockvector BL.
It returns the containing block if there is one, or else NULL. */
-static struct block *
+static const struct block *
find_block_in_blockvector (const struct blockvector *bl, CORE_ADDR pc)
{
- struct block *b;
+ const struct block *b;
int bot, top, half;
/* If we have an addrmap mapping code addresses to blocks, then use
that. */
if (BLOCKVECTOR_MAP (bl))
- return (struct block *) addrmap_find (BLOCKVECTOR_MAP (bl), pc);
+ return (const struct block *) addrmap_find (BLOCKVECTOR_MAP (bl), pc);
/* Otherwise, use binary search to find the last block that starts
before PC.
@@ -186,7 +186,7 @@ blockvector_for_pc_sect (CORE_ADDR pc, struct obj_section *section,
struct compunit_symtab *cust)
{
const struct blockvector *bl;
- struct block *b;
+ const struct block *b;
if (cust == NULL)
{
@@ -107,7 +107,7 @@ struct block
case of C) is the STATIC_BLOCK. The superblock of the
STATIC_BLOCK is the GLOBAL_BLOCK. */
- struct block *superblock;
+ const struct block *superblock;
/* This is used to store the symbols in the block. */
@@ -1391,13 +1391,13 @@ typebase
{ $$ = lookup_typename (parse_language (pstate),
parse_gdbarch (pstate),
"double",
- (struct block *) NULL,
+ NULL,
0); }
| LONG DOUBLE_KEYWORD
{ $$ = lookup_typename (parse_language (pstate),
parse_gdbarch (pstate),
"long double",
- (struct block *) NULL,
+ NULL,
0); }
| STRUCT name
{ $$ = lookup_struct (copy_name ($2),
@@ -197,7 +197,6 @@ print_unpacked_pointer (struct type *type, struct type *elttype,
struct value *vt_val;
struct symbol *wsym = NULL;
struct type *wtype;
- struct block *block = NULL;
if (want_space)
fputs_filtered (" ", stream);
@@ -206,7 +205,7 @@ print_unpacked_pointer (struct type *type, struct type *elttype,
{
const char *search_name
= MSYMBOL_SEARCH_NAME (msymbol.minsym);
- wsym = lookup_symbol_search_name (search_name, block,
+ wsym = lookup_symbol_search_name (search_name, NULL,
VAR_DOMAIN).symbol;
}
@@ -1496,7 +1496,7 @@ patch_type (struct type *type, struct type *real_type)
static void
patch_opaque_types (struct symtab *s)
{
- struct block *b;
+ const struct block *b;
struct block_iterator iter;
struct symbol *real_sym;
@@ -1422,7 +1422,7 @@ add_symbol_overload_list_qualified (const char *func_name,
/* Lookup the rtti type for a class name. */
struct type *
-cp_lookup_rtti_type (const char *name, struct block *block)
+cp_lookup_rtti_type (const char *name, const struct block *block)
{
struct symbol * rtti_sym;
struct type * rtti_type;
@@ -118,7 +118,7 @@ extern void add_symbol_overload_list_adl
std::vector<symbol *> *overload_list);
extern struct type *cp_lookup_rtti_type (const char *name,
- struct block *block);
+ const struct block *block);
/* Produce an unsigned hash value from SEARCH_NAME that is compatible
with cp_symbol_name_matches. Only the last component in
@@ -97,7 +97,6 @@ static int type_aggregate_p (struct type *);
struct symtoken ssym;
int ival;
int voidval;
- struct block *bval;
enum exp_opcode opcode;
struct stoken_vector svec;
}
@@ -4082,7 +4082,7 @@ dw2_lookup_symbol (struct objfile *objfile, int block_index,
struct symbol *sym, *with_opaque = NULL;
struct compunit_symtab *stab = dw2_instantiate_symtab (per_cu, false);
const struct blockvector *bv = COMPUNIT_BLOCKVECTOR (stab);
- struct block *block = BLOCKVECTOR_BLOCK (bv, block_index);
+ const struct block *block = BLOCKVECTOR_BLOCK (bv, block_index);
sym = block_find_symbol (block, name, domain,
block_find_non_opaque_type_preferred,
@@ -4227,7 +4227,7 @@ static void
dw2_map_matching_symbols (struct objfile *objfile,
const char * name, domain_enum domain,
int global,
- int (*callback) (struct block *,
+ int (*callback) (const struct block *,
struct symbol *, void *),
void *data, symbol_name_match_type match,
symbol_compare_ftype *ordered_compare)
@@ -6083,7 +6083,7 @@ dw2_debug_names_lookup_symbol (struct objfile *objfile, int block_index_int,
struct symbol *sym, *with_opaque = NULL;
struct compunit_symtab *stab = dw2_instantiate_symtab (per_cu, false);
const struct blockvector *bv = COMPUNIT_BLOCKVECTOR (stab);
- struct block *block = BLOCKVECTOR_BLOCK (bv, block_index);
+ const struct block *block = BLOCKVECTOR_BLOCK (bv, block_index);
sym = block_find_symbol (block, name, domain,
block_find_non_opaque_type_preferred,
@@ -123,7 +123,7 @@ parse_and_eval (const char *exp)
struct value *
parse_to_comma_and_eval (const char **expp)
{
- expression_up expr = parse_exp_1 (expp, 0, (struct block *) 0, 1);
+ expression_up expr = parse_exp_1 (expp, 0, 0, 1);
return evaluate_expression (expr.get ());
}
@@ -105,7 +105,6 @@ static struct type *convert_to_kind_type (struct type *basetype, int kind);
struct ttype tsym;
struct symtoken ssym;
int voidval;
- struct block *bval;
enum exp_opcode opcode;
struct internalvar *ivar;
@@ -1528,7 +1528,7 @@ lookup_unsigned_typename (const struct language_defn *language,
strcpy (uns, "unsigned ");
strcpy (uns + 9, name);
- return lookup_typename (language, gdbarch, uns, (struct block *) NULL, 0);
+ return lookup_typename (language, gdbarch, uns, NULL, 0);
}
struct type *
@@ -1540,11 +1540,11 @@ lookup_signed_typename (const struct language_defn *language,
strcpy (uns, "signed ");
strcpy (uns + 7, name);
- t = lookup_typename (language, gdbarch, uns, (struct block *) NULL, 1);
+ t = lookup_typename (language, gdbarch, uns, NULL, 1);
/* If we don't find "signed FOO" just try again with plain "FOO". */
if (t != NULL)
return t;
- return lookup_typename (language, gdbarch, name, (struct block *) NULL, 0);
+ return lookup_typename (language, gdbarch, name, NULL, 0);
}
/* Lookup a structure type named "struct NAME",
@@ -266,13 +266,14 @@ static int
block_starting_point_at (CORE_ADDR pc, const struct block *block)
{
const struct blockvector *bv;
- struct block *new_block;
+ const struct block *new_block;
bv = blockvector_for_pc (pc, NULL);
if (BLOCKVECTOR_MAP (bv) == NULL)
return 0;
- new_block = (struct block *) addrmap_find (BLOCKVECTOR_MAP (bv), pc - 1);
+ new_block = (const struct block *) addrmap_find (BLOCKVECTOR_MAP (bv),
+ pc - 1);
if (new_block == NULL)
return 1;
@@ -1159,7 +1159,7 @@ iterate_over_all_matching_symtabs
if (include_inline)
{
- struct block *block;
+ const struct block *block;
int i;
for (i = FIRST_LOCAL_BLOCK;
@@ -1209,7 +1209,7 @@ iterate_over_file_blocks
(struct symtab *symtab, const lookup_name_info &name,
domain_enum domain, gdb::function_view<symbol_found_callback_ftype> callback)
{
- struct block *block;
+ const struct block *block;
for (block = BLOCKVECTOR_BLOCK (SYMTAB_BLOCKVECTOR (symtab), STATIC_BLOCK);
block != NULL;
@@ -248,7 +248,6 @@ pascal_val_print (struct type *type,
struct value *vt_val;
struct symbol *wsym = NULL;
struct type *wtype;
- struct block *block = NULL;
if (want_space)
fputs_filtered (" ", stream);
@@ -257,7 +256,7 @@ pascal_val_print (struct type *type,
{
const char *search_name
= MSYMBOL_SEARCH_NAME (msymbol.minsym);
- wsym = lookup_symbol_search_name (search_name, block,
+ wsym = lookup_symbol_search_name (search_name, NULL,
VAR_DOMAIN).symbol;
}
@@ -650,8 +650,7 @@ write_dollar_variable (struct parser_state *ps, struct stoken str)
/* On some systems, such as HP-UX and hppa-linux, certain system routines
have names beginning with $ or $$. Check for those, first. */
- sym = lookup_symbol (copy_name (str), (struct block *) NULL,
- VAR_DOMAIN, NULL);
+ sym = lookup_symbol (copy_name (str), NULL, VAR_DOMAIN, NULL);
if (sym.symbol)
{
write_exp_elt_opcode (ps, OP_VAR_VALUE);
@@ -498,7 +498,7 @@ psym_lookup_symbol (struct objfile *objfile,
partial symtab is empty, we can assume it won't here
because lookup_partial_symbol succeeded. */
const struct blockvector *bv = COMPUNIT_BLOCKVECTOR (stab);
- struct block *block = BLOCKVECTOR_BLOCK (bv, block_index);
+ const struct block *block = BLOCKVECTOR_BLOCK (bv, block_index);
sym = block_find_symbol (block, name, domain,
block_find_non_opaque_type_preferred,
@@ -1165,8 +1165,8 @@ psymtab_to_fullname (struct partial_symtab *ps)
static int
map_block (const char *name, domain_enum domain, struct objfile *objfile,
- struct block *block,
- int (*callback) (struct block *, struct symbol *, void *),
+ const struct block *block,
+ int (*callback) (const struct block *, struct symbol *, void *),
void *data, symbol_name_match_type match)
{
struct block_iterator iter;
@@ -1196,7 +1196,7 @@ static void
psym_map_matching_symbols (struct objfile *objfile,
const char *name, domain_enum domain,
int global,
- int (*callback) (struct block *,
+ int (*callback) (const struct block *,
struct symbol *, void *),
void *data,
symbol_name_match_type match,
@@ -1212,7 +1212,7 @@ psym_map_matching_symbols (struct objfile *objfile,
ordered_compare))
{
struct compunit_symtab *cust = psymtab_to_symtab (objfile, ps);
- struct block *block;
+ const struct block *block;
if (cust == NULL)
continue;
@@ -2095,7 +2095,7 @@ maintenance_check_psymtabs (const char *ignore, int from_tty)
struct symbol *sym;
struct compunit_symtab *cust = NULL;
const struct blockvector *bv;
- struct block *b;
+ const struct block *b;
int length;
for (objfile *objfile : current_program_space->objfiles ())
@@ -54,7 +54,7 @@ enum mi_print_types
static enum ext_lang_bt_status
extract_sym (PyObject *obj, gdb::unique_xmalloc_ptr<char> *name,
- struct symbol **sym, struct block **sym_block,
+ struct symbol **sym, const struct block **sym_block,
const struct language_defn **language)
{
gdbpy_ref<> result (PyObject_CallMethod (obj, "symbol", NULL));
@@ -449,7 +449,7 @@ enumerate_args (PyObject *iter,
const struct language_defn *language;
gdb::unique_xmalloc_ptr<char> sym_name;
struct symbol *sym;
- struct block *sym_block;
+ const struct block *sym_block;
struct value *val;
enum ext_lang_bt_status success = EXT_LANG_BT_ERROR;
@@ -567,7 +567,7 @@ enumerate_locals (PyObject *iter,
struct value *val;
enum ext_lang_bt_status success = EXT_LANG_BT_ERROR;
struct symbol *sym;
- struct block *sym_block;
+ const struct block *sym_block;
int local_indent = 8 + (8 * indent);
gdb::optional<ui_out_emit_tuple> tuple;
@@ -176,7 +176,7 @@ static PyObject *
stpy_global_block (PyObject *self, PyObject *args)
{
struct symtab *symtab = NULL;
- struct block *block = NULL;
+ const struct block *block = NULL;
const struct blockvector *blockvector;
STPY_REQUIRE_VALID (self, symtab);
@@ -192,7 +192,7 @@ static PyObject *
stpy_static_block (PyObject *self, PyObject *args)
{
struct symtab *symtab = NULL;
- struct block *block = NULL;
+ const struct block *block = NULL;
const struct blockvector *blockvector;
STPY_REQUIRE_VALID (self, symtab);
@@ -1963,7 +1963,7 @@ spu_catch_start (struct objfile *objfile)
if (cust != NULL)
{
const struct blockvector *bv = COMPUNIT_BLOCKVECTOR (cust);
- struct block *block = BLOCKVECTOR_BLOCK (bv, GLOBAL_BLOCK);
+ const struct block *block = BLOCKVECTOR_BLOCK (bv, GLOBAL_BLOCK);
struct symbol *sym;
struct symtab_and_line sal;
@@ -240,7 +240,7 @@ static void
debug_qf_map_matching_symbols (struct objfile *objfile,
const char *name, domain_enum domain,
int global,
- int (*callback) (struct block *,
+ int (*callback) (const struct block *,
struct symbol *, void *),
void *data,
symbol_name_match_type match,
@@ -227,7 +227,7 @@ struct quick_symbol_functions
void (*map_matching_symbols) (struct objfile *,
const char *name, domain_enum domain,
int global,
- int (*callback) (struct block *,
+ int (*callback) (const struct block *,
struct symbol *, void *),
void *data,
symbol_name_match_type match,
@@ -52,7 +52,7 @@ FILE *std_err;
/* Prototypes for local functions */
-static int block_depth (struct block *);
+static int block_depth (const struct block *);
static void print_symbol (struct gdbarch *gdbarch, struct symbol *symbol,
int depth, ui_file *outfile);
@@ -278,7 +278,7 @@ dump_symtab_1 (struct symtab *symtab, struct ui_file *outfile)
struct linetable *l;
const struct blockvector *bv;
struct symbol *sym;
- struct block *b;
+ const struct block *b;
int depth;
fprintf_filtered (outfile, "\nSymtab for file %s\n",
@@ -954,7 +954,7 @@ maintenance_expand_symtabs (const char *args, int from_tty)
/* Return the nexting depth of a block within other blocks in its symtab. */
static int
-block_depth (struct block *block)
+block_depth (const struct block *block)
{
int i = 0;
@@ -2752,7 +2752,7 @@ basic_lookup_transparent_type_quick (struct objfile *objfile, int block_index,
{
struct compunit_symtab *cust;
const struct blockvector *bv;
- struct block *block;
+ const struct block *block;
struct symbol *sym;
if (!objfile->sf)
@@ -2922,7 +2922,7 @@ find_pc_sect_compunit_symtab (CORE_ADDR pc, struct obj_section *section)
{
for (compunit_symtab *cust : obj_file->compunits ())
{
- struct block *b;
+ const struct block *b;
const struct blockvector *bv;
bv = COMPUNIT_BLOCKVECTOR (cust);
@@ -3026,7 +3026,7 @@ find_symbol_at_address (CORE_ADDR address)
for (int i = GLOBAL_BLOCK; i <= STATIC_BLOCK; ++i)
{
- struct block *b = BLOCKVECTOR_BLOCK (bv, i);
+ const struct block *b = BLOCKVECTOR_BLOCK (bv, i);
struct block_iterator iter;
struct symbol *sym;
@@ -4357,7 +4357,7 @@ search_symbols (const char *regexp, enum search_domain kind,
int nfiles, const char *files[])
{
const struct blockvector *bv;
- struct block *b;
+ const struct block *b;
int i = 0;
struct block_iterator iter;
struct symbol *sym;