Convert block_objfile to method
authorTom Tromey <tom@tromey.com>
Tue, 17 Jan 2023 00:16:44 +0000 (17:16 -0700)
committerTom Tromey <tom@tromey.com>
Sun, 19 Feb 2023 19:51:05 +0000 (12:51 -0700)
This converts block_objfile to be a method.  This was mostly written
by script.

gdb/ada-exp.y
gdb/block.c
gdb/block.h
gdb/cp-support.c
gdb/expprint.c
gdb/printcmd.c
gdb/symtab.c
gdb/varobj.c

index 5436585b73b84a350e1ed1c247765d12ce2c7178..9b704968f909ea4686ef1dcce2a0b6492ca0aea3 100644 (file)
@@ -1699,7 +1699,7 @@ write_var_or_type (struct parser_state *par_state,
            {
              struct objfile *objfile = nullptr;
              if (block != nullptr)
-               objfile = block_objfile (block);
+               objfile = block->objfile ();
 
              struct bound_minimal_symbol msym
                = ada_lookup_simple_minsym (decoded_name.c_str (), objfile);
index 5751a6b6f841824d7fb0f88d8308ad5295e010d1..d7d5f0bf19ed8a47c85ed2e35447a087edb44a6a 100644 (file)
@@ -40,14 +40,14 @@ struct block_namespace_info : public allocate_on_obstack
 /* See block.h.  */
 
 struct objfile *
-block_objfile (const struct block *block)
+block::objfile () const
 {
   const struct global_block *global_block;
 
-  if (block->function () != nullptr)
-    return block->function ()->objfile ();
+  if (function () != nullptr)
+    return function ()->objfile ();
 
-  global_block = (struct global_block *) block_global_block (block);
+  global_block = (struct global_block *) block_global_block (this);
   return global_block->compunit_symtab->objfile ();
 }
 
@@ -59,7 +59,7 @@ block_gdbarch (const struct block *block)
   if (block->function () != nullptr)
     return block->function ()->arch ();
 
-  return block_objfile (block)->arch ();
+  return block->objfile ()->arch ();
 }
 
 /* See block.h.  */
@@ -434,7 +434,7 @@ set_block_compunit_symtab (struct block *block, struct compunit_symtab *cu)
 struct dynamic_prop *
 block_static_link (const struct block *block)
 {
-  struct objfile *objfile = block_objfile (block);
+  struct objfile *objfile = block->objfile ();
 
   /* Only objfile-owned blocks that materialize top function scopes can have
      static links.  */
index 379359f07be6376736313e4a3c4852762758fcc3..2243c9a2a525097d8a776ff5b840690c144854b4 100644 (file)
@@ -204,6 +204,10 @@ struct block
       return this->ranges ()[0].start ();
   }
 
+  /* Return the objfile of this block.  */
+
+  struct objfile *objfile () const;
+
   /* Addresses in the executable code that are in this block.  */
 
   CORE_ADDR m_start;
@@ -331,10 +335,6 @@ private:
   struct block *m_blocks[1];
 };
 
-/* Return the objfile of BLOCK, which must be non-NULL.  */
-
-extern struct objfile *block_objfile (const struct block *block);
-
 /* Return the architecture of BLOCK, which must be non-NULL.  */
 
 extern struct gdbarch *block_gdbarch (const struct block *block);
index fe56e610a5cb6ff8e9d9992c48570ca51b4b5201..764e2b8b4696cd476682eda4ebd222813ea5ce3b 100644 (file)
@@ -1467,7 +1467,7 @@ add_symbol_overload_list_qualified (const char *func_name,
      symbols which match.  */
 
   const block *block = get_selected_block (0);
-  struct objfile *current_objfile = block ? block_objfile (block) : nullptr;
+  struct objfile *current_objfile = block ? block->objfile () : nullptr;
 
   gdbarch_iterate_over_objfiles_in_search_order
     (current_objfile ? current_objfile->arch () : target_gdbarch (),
index 63004f7f1066adf41be2b56560e79700e31694d1..0c7cc754179f60e1d246540657ca25a648635c3a 100644 (file)
@@ -78,7 +78,7 @@ namespace expr
 bool
 check_objfile (const struct block *block, struct objfile *objfile)
 {
-  return check_objfile (block_objfile (block), objfile);
+  return check_objfile (block->objfile (), objfile);
 }
 
 void
index df47bccc326210980ce621787e1cb9a00fde6dab..88984691ae96627e1bd6fab077cfaa4338852e4c 100644 (file)
@@ -2371,7 +2371,7 @@ clear_dangling_display_expressions (struct objfile *objfile)
       struct objfile *bl_objf = nullptr;
       if (d->block != nullptr)
        {
-         bl_objf = block_objfile (d->block);
+         bl_objf = d->block->objfile ();
          if (bl_objf->separate_debug_objfile_backlink != nullptr)
            bl_objf = bl_objf->separate_debug_objfile_backlink;
        }
index 3a380f131cd27768d1b3953872c9d9c6eb23754e..408416890acaac01a7bfd799e9b7941e0ba871e2 100644 (file)
@@ -1970,7 +1970,7 @@ lookup_language_this (const struct language_defn *lang,
 
   symbol_lookup_debug_printf_v ("lookup_language_this (%s, %s (objfile %s))",
                                lang->name (), host_address_to_string (block),
-                               objfile_debug_name (block_objfile (block)));
+                               objfile_debug_name (block->objfile ()));
 
   while (block)
     {
@@ -2058,7 +2058,7 @@ lookup_symbol_aux (const char *name, symbol_name_match_type match_type,
   if (symbol_lookup_debug)
     {
       struct objfile *objfile = (block == nullptr
-                                ? nullptr : block_objfile (block));
+                                ? nullptr : block->objfile ());
 
       symbol_lookup_debug_printf
        ("demangled symbol name = \"%s\", block @ %s (objfile %s)",
@@ -2204,7 +2204,7 @@ lookup_symbol_in_block (const char *name, symbol_name_match_type match_type,
   if (symbol_lookup_debug)
     {
       struct objfile *objfile
-       = block == nullptr ? nullptr : block_objfile (block);
+       = block == nullptr ? nullptr : block->objfile ();
 
       symbol_lookup_debug_printf_v
        ("lookup_symbol_in_block (%s, %s (objfile %s), %s)",
@@ -2472,7 +2472,7 @@ lookup_symbol_in_static_block (const char *name,
   if (symbol_lookup_debug)
     {
       struct objfile *objfile = (block == nullptr
-                                ? nullptr : block_objfile (block));
+                                ? nullptr : block->objfile ());
 
       symbol_lookup_debug_printf
        ("lookup_symbol_in_static_block (%s, %s (objfile %s), %s)",
@@ -2612,7 +2612,7 @@ lookup_global_symbol (const char *name,
   struct objfile *objfile = nullptr;
   if (block != nullptr)
     {
-      objfile = block_objfile (block);
+      objfile = block->objfile ();
       if (objfile->separate_debug_objfile_backlink != nullptr)
        objfile = objfile->separate_debug_objfile_backlink;
     }
index 7f34cd01e26d1b789cf16e61f6e2b999391aad8b..1d545382f5e68b99aa3aa51ab3b8a606c2e5e129 100644 (file)
@@ -2397,7 +2397,7 @@ varobj_invalidate_if_uses_objfile (struct objfile *objfile)
     {
       if (var->root->valid_block != nullptr)
        {
-         struct objfile *bl_objfile = block_objfile (var->root->valid_block);
+         struct objfile *bl_objfile = var->root->valid_block->objfile ();
          if (bl_objfile->separate_debug_objfile_backlink != nullptr)
            bl_objfile = bl_objfile->separate_debug_objfile_backlink;