[PATCH] [gdb] Add default argument for get_selected_block

Tom de Vries <[email protected]>
Newsgroups gmane.comp.gdb.patches
Message-ID <[email protected]>
I noticed that the get_selected_block argument is mostly 0, NULL, or nullptr.

Make nullptr the default argument.
---
 gdb/ada-exp.y    | 2 +-
 gdb/ada-lang.c   | 6 +++---
 gdb/cp-support.c | 6 +++---
 gdb/eval.c       | 4 ++--
 gdb/f-valprint.c | 2 +-
 gdb/frame.h      | 3 ++-
 gdb/linespec.c   | 2 +-
 gdb/printcmd.c   | 4 ++--
 gdb/rust-lang.c  | 2 +-
 gdb/symtab.c     | 2 +-
 gdb/valops.c     | 2 +-
 11 files changed, 18 insertions(+), 17 deletions(-)

diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y
index f36426a2084..a79d0ca83cb 100644
--- a/gdb/ada-exp.y
+++ b/gdb/ada-exp.y
@@ -1342,7 +1342,7 @@ write_object_renaming (struct parser_state *par_state,
     error (_("Could not find renamed symbol"));
 
   if (orig_left_context == NULL)
-    orig_left_context = get_selected_block (NULL);
+    orig_left_context = get_selected_block ();
 
   name = obstack_strndup (&ada_parser->temp_space, renamed_entity,
 			  renamed_entity_len);
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index 85b08af8c06..6ec99447d34 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -7412,7 +7412,7 @@ field_alignment (struct type *type, int f)
 static struct symbol *
 ada_find_any_type_symbol (const char *name)
 {
-  return standard_lookup (name, get_selected_block (nullptr),
+  return standard_lookup (name, get_selected_block (),
 			  SEARCH_TYPE_DOMAIN);
 }
 
@@ -11425,7 +11425,7 @@ get_var_value (const char *name, const char *err_msg)
 
   std::vector<struct block_symbol> syms
     = ada_lookup_symbol_list_worker (lookup_name,
-				     get_selected_block (0),
+				     get_selected_block (),
 				     SEARCH_VFT, true);
 
   if (syms.size () != 1)
@@ -13741,7 +13741,7 @@ class ada_language : public language_defn
     /* Search upwards from currently selected frame (so that we can
        complete on local vars.  */
 
-    for (const block *b = get_selected_block (0);
+    for (const block *b = get_selected_block ();
 	 b != nullptr;
 	 b = b->superblock ())
       {
diff --git a/gdb/cp-support.c b/gdb/cp-support.c
index c684d1a1723..335e06a039f 100644
--- a/gdb/cp-support.c
+++ b/gdb/cp-support.c
@@ -1322,7 +1322,7 @@ add_symbol_overload_list_namespace (const char *func_name,
     }
 
   /* Look in the static block.  */
-  block = get_selected_block (0);
+  block = get_selected_block ();
   block = block == nullptr ? nullptr : block->static_block ();
   if (block != nullptr)
     {
@@ -1414,7 +1414,7 @@ add_symbol_overload_list_using (const char *func_name,
      look in the appropriate namespaces for new functions to match
      on.  */
 
-  for (block = get_selected_block (0);
+  for (block = get_selected_block ();
        block != NULL;
        block = block->superblock ())
     for (using_direct *current : block->get_using ())
@@ -1454,7 +1454,7 @@ static void
 add_symbol_overload_list_qualified (const char *func_name,
 				    std::vector<symbol *> *overload_list)
 {
-  const block *selected_block = get_selected_block (0);
+  const block *selected_block = get_selected_block ();
 
   /* Search upwards from currently selected frame (so that we can
      complete on local vars.  */
diff --git a/gdb/eval.c b/gdb/eval.c
index 7e07765c9e6..6b2218cc629 100644
--- a/gdb/eval.c
+++ b/gdb/eval.c
@@ -753,7 +753,7 @@ scope_operation::evaluate_funcall (struct type *expect_type,
     {
       function = cp_lookup_symbol_namespace (type->name (),
 					     name.c_str (),
-					     get_selected_block (0),
+					     get_selected_block (),
 					     SEARCH_FUNCTION_DOMAIN).symbol;
       if (function == NULL)
 	error (_("No symbol \"%s\" in namespace \"%s\"."),
@@ -799,7 +799,7 @@ scope_operation::evaluate_funcall (struct type *expect_type,
       find_overload_match (arg_view, nullptr,
 			   NON_METHOD, nullptr, function,
 			   nullptr, &symp, nullptr, 1, noside);
-      callee = value_of_variable (symp, get_selected_block (0));
+      callee = value_of_variable (symp, get_selected_block ());
     }
 
   return evaluate_subexp_do_call (exp, noside, callee, arg_view,
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index 8a383281a6c..dcefc577425 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -551,7 +551,7 @@ f_language::value_print_inner (struct value *val, struct ui_file *stream,
 		  /* While printing namelist items, fetch the appropriate
 		     value field before printing its value.  */
 		  struct block_symbol sym
-		    = lookup_symbol (field_name, get_selected_block (nullptr),
+		    = lookup_symbol (field_name, get_selected_block (),
 				     SEARCH_VFT, nullptr);
 		  if (sym.symbol == nullptr)
 		    error (_("failed to find symbol for name list component %s"),
diff --git a/gdb/frame.h b/gdb/frame.h
index f6553fb7b6d..7ee85fd9851 100644
--- a/gdb/frame.h
+++ b/gdb/frame.h
@@ -881,7 +881,8 @@ extern const struct block *get_frame_block (const frame_info_ptr &,
    it occurs in the CLI code and makes it possible for commands to
    work, even when the inferior has no state.  */
 
-extern const struct block *get_selected_block (CORE_ADDR *addr_in_block);
+extern const struct block *get_selected_block (CORE_ADDR *addr_in_block
+					       = nullptr);
 
 extern struct symbol *get_frame_function (const frame_info_ptr &);
 
diff --git a/gdb/linespec.c b/gdb/linespec.c
index fd7918df5a1..b6505ba283d 100644
--- a/gdb/linespec.c
+++ b/gdb/linespec.c
@@ -1184,7 +1184,7 @@ get_current_search_block (void)
   /* get_selected_block can change the current language when there is
      no selected frame yet.  */
   scoped_restore_current_language save_language;
-  return get_selected_block (0);
+  return get_selected_block ();
 }
 
 /* Iterate over static and global blocks.  */
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index a337a6b7db9..662f43fbef8 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -2123,7 +2123,7 @@ do_one_display (struct display *d)
   if (d->block)
     {
       if (d->pspace == current_program_space)
-	within_current_scope = d->block->contains (get_selected_block (0),
+	within_current_scope = d->block->contains (get_selected_block (),
 						   true);
       else
 	within_current_scope = 0;
@@ -2289,7 +2289,7 @@ Num Enb Expression\n"));
       else if (d->format.format)
 	gdb_printf ("/%c ", d->format.format);
       gdb_puts (d->exp_string.c_str ());
-      if (d->block && !d->block->contains (get_selected_block (0), true))
+      if (d->block && !d->block->contains (get_selected_block (), true))
 	gdb_printf (_(" (cannot be evaluated in the current context)"));
       gdb_printf ("\n");
     }
diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
index 517d6333d12..2a95c03178a 100644
--- a/gdb/rust-lang.c
+++ b/gdb/rust-lang.c
@@ -1746,7 +1746,7 @@ rust_structop::evaluate_funcall (struct type *expect_type,
   std::string name = (std::string (type->name ()) + "::"
 		      + std::get<1> (m_storage));
 
-  const struct block *block = get_selected_block (0);
+  const struct block *block = get_selected_block ();
   struct block_symbol sym = lookup_symbol (name.c_str (), block,
 					   SEARCH_FUNCTION_DOMAIN,
 					   nullptr);
diff --git a/gdb/symtab.c b/gdb/symtab.c
index 4ca6f92ff9a..5d5076f2e77 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -5979,7 +5979,7 @@ default_collect_symbol_completion_matches_break_on
      this places which match our text string.  Only complete on types
      visible from current context.  */
 
-  b = get_selected_block (0);
+  b = get_selected_block ();
   surrounding_static_block = b == nullptr ? nullptr : b->static_block ();
   surrounding_global_block = b == nullptr ? nullptr : b->global_block ();
   if (surrounding_static_block != NULL)
diff --git a/gdb/valops.c b/gdb/valops.c
index ab6fd5079e1..76be9c58e6a 100644
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -3813,7 +3813,7 @@ value_maybe_namespace_elt (const struct type *curtype,
   struct value *result;
 
   sym = cp_lookup_symbol_namespace (namespace_name, name,
-				    get_selected_block (0), SEARCH_VFT);
+				    get_selected_block (), SEARCH_VFT);
 
   if (sym.symbol == NULL)
     return NULL;

base-commit: d36b7ef85a30cda5ea19110920f61727be2fd984
-- 
2.51.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.