Remove null_block_symbol

This removes null_block_symbol.  It seemed simpler to me to change
initializations and returns to use value initialization rather than
null_block_symbol.  This also fixes up a few spots where
initialization was done piecemeal.

gdb/ChangeLog
2019-03-24  Tom Tromey  <tom@tromey.com>

	* ada-lang.c (standard_lookup): Simplify initialization.
	(ada_lookup_symbol_nonlocal): Simplify return.
	* solib-spu.c (spu_lookup_lib_symbol): Simplify return.
	* solib-darwin.c (darwin_lookup_lib_symbol): Simplify return.
	* solib-svr4.c (elf_lookup_lib_symbol): Simplify return.
	* rust-lang.c (rust_lookup_symbol_nonlocal): Simplify
	initialization.
	* solib.c (solib_global_lookup): Simplify.
	* symtab.c (null_block_symbol): Remove.
	(symbol_cache_lookup): Simplify returns.
	(lookup_language_this): Simplify returns.
	(lookup_symbol_aux): Simplify return.
	(lookup_local_symbol): Simplify returns.
	(lookup_global_symbol_from_objfile): Simplify return.
	(lookup_symbol_in_objfile_symtabs)
	(lookup_symbol_in_objfile_from_linkage_name): Simplify return.
	(lookup_symbol_via_quick_fns, lookup_symbol_in_static_block)
	(lookup_static_symbol, lookup_global_symbol): Simplify return.
	* cp-namespace.c (cp_lookup_bare_symbol)
	(cp_search_static_and_baseclasses, cp_lookup_symbol_via_imports)
	(cp_lookup_symbol_via_all_imports, cp_lookup_nested_symbol_1)
	(cp_lookup_nested_symbol): Don't use null_block_symbol.
	(cp_lookup_symbol_via_imports): Simplify initialization.
	(find_symbol_in_baseclass): Likewise.
	* symtab.h (null_block_symbol): Remove.
	* d-namespace.c (d_lookup_symbol): Don't use null_block_symbol.
	(d_lookup_nested_symbol, d_lookup_symbol_imports)
	(d_lookup_symbol_module): Likewise.
	(find_symbol_in_baseclass): Simplify initialization.
This commit is contained in:
Tom Tromey 2019-03-22 16:53:12 -06:00
parent a930ebcdf9
commit 6640a367bf
11 changed files with 71 additions and 55 deletions

View file

@ -127,7 +127,7 @@ d_lookup_symbol (const struct language_defn *langdef,
lang_this = lookup_language_this (language_def (language_d), block);
if (lang_this.symbol == NULL)
return null_block_symbol;
return {};
type = check_typedef (TYPE_TARGET_TYPE (SYMBOL_TYPE (lang_this.symbol)));
classname = TYPE_NAME (type);
@ -147,7 +147,7 @@ d_lookup_symbol (const struct language_defn *langdef,
more that can be done. */
class_sym = lookup_global_symbol (classname.c_str (), block, domain);
if (class_sym.symbol == NULL)
return null_block_symbol;
return {};
/* Look for a symbol named NESTED in this class. */
sym = d_lookup_nested_symbol (SYMBOL_TYPE (class_sym.symbol),
@ -246,12 +246,9 @@ static struct block_symbol
find_symbol_in_baseclass (struct type *parent_type, const char *name,
const struct block *block)
{
struct block_symbol sym;
struct block_symbol sym = {};
int i;
sym.symbol = NULL;
sym.block = NULL;
for (i = 0; i < TYPE_N_BASECLASSES (parent_type); ++i)
{
struct type *base_type = TYPE_BASECLASS (parent_type, i);
@ -349,7 +346,7 @@ d_lookup_nested_symbol (struct type *parent_type,
case TYPE_CODE_FUNC:
case TYPE_CODE_METHOD:
return null_block_symbol;
return {};
default:
gdb_assert_not_reached ("called with non-aggregate type.");
@ -464,7 +461,7 @@ d_lookup_symbol_imports (const char *scope, const char *name,
}
}
return null_block_symbol;
return {};
}
/* Searches for NAME in the current module, and by applying relevant
@ -496,7 +493,7 @@ d_lookup_symbol_module (const char *scope, const char *name,
block = BLOCK_SUPERBLOCK (block);
}
return null_block_symbol;
return {};
}
/* The D-specific version of name lookup for static and global names