[07/27] Convert block_objfile to method

Message ID 20230120214618.3236224-8-tom@tromey.com
State New
Headers
Series C++-ify struct block |

Commit Message

Tom Tromey Jan. 20, 2023, 9:45 p.m. UTC
  This converts block_objfile to be a method.  This was mostly written
by script.
---
 gdb/ada-exp.y    |  2 +-
 gdb/block.c      | 12 ++++++------
 gdb/block.h      |  8 ++++----
 gdb/cp-support.c |  2 +-
 gdb/expop.h      |  2 +-
 gdb/printcmd.c   |  2 +-
 gdb/symtab.c     | 10 +++++-----
 gdb/varobj.c     |  2 +-
 8 files changed, 20 insertions(+), 20 deletions(-)
  

Patch

diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y
index 2f466e4de0a..9e9ff8d75d4 100644
--- a/gdb/ada-exp.y
+++ b/gdb/ada-exp.y
@@ -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);
diff --git a/gdb/block.c b/gdb/block.c
index 5751a6b6f84..d7d5f0bf19e 100644
--- a/gdb/block.c
+++ b/gdb/block.c
@@ -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.  */
diff --git a/gdb/block.h b/gdb/block.h
index 379359f07be..2243c9a2a52 100644
--- a/gdb/block.h
+++ b/gdb/block.h
@@ -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 @@  struct blockvector
   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);
diff --git a/gdb/cp-support.c b/gdb/cp-support.c
index 38225a6d9ba..be4a636336d 100644
--- a/gdb/cp-support.c
+++ b/gdb/cp-support.c
@@ -1466,7 +1466,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 (),
diff --git a/gdb/expop.h b/gdb/expop.h
index de74e88998f..03e8b8aae1d 100644
--- a/gdb/expop.h
+++ b/gdb/expop.h
@@ -231,7 +231,7 @@  check_objfile (struct symbol *sym, struct objfile *objfile)
 static inline bool
 check_objfile (const struct block *block, struct objfile *objfile)
 {
-  return check_objfile (block_objfile (block), objfile);
+  return check_objfile (block->objfile (), objfile);
 }
 
 static inline bool
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index 7f3551327a8..e3ee847a955 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -2355,7 +2355,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;
 	}
diff --git a/gdb/symtab.c b/gdb/symtab.c
index 924bd5d8ec0..60bed9f0b4b 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -1994,7 +1994,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)
     {
@@ -2082,7 +2082,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)",
@@ -2228,7 +2228,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)",
@@ -2498,7 +2498,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)",
@@ -2638,7 +2638,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;
     }
diff --git a/gdb/varobj.c b/gdb/varobj.c
index eb47ecada3e..58a3ad5041a 100644
--- a/gdb/varobj.c
+++ b/gdb/varobj.c
@@ -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;