diff options
author | Tom Tromey <tom@tromey.com> | 2019-03-22 16:53:12 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2019-03-24 23:32:09 -0600 |
commit | 6640a367bf5427779856e7c80ae4b4bd88c19d3c (patch) | |
tree | c284eec96b2024f564b01d9c042ef9dbf0d94628 /gdb/cp-namespace.c | |
parent | a930ebcdf9594d6b6f91b634dceec1b2425a76a0 (diff) | |
download | binutils-6640a367bf5427779856e7c80ae4b4bd88c19d3c.zip binutils-6640a367bf5427779856e7c80ae4b4bd88c19d3c.tar.gz binutils-6640a367bf5427779856e7c80ae4b4bd88c19d3c.tar.bz2 |
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.
Diffstat (limited to 'gdb/cp-namespace.c')
-rw-r--r-- | gdb/cp-namespace.c | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/gdb/cp-namespace.c b/gdb/cp-namespace.c index f8db3ed..5b352d1 100644 --- a/gdb/cp-namespace.c +++ b/gdb/cp-namespace.c @@ -217,7 +217,7 @@ cp_lookup_bare_symbol (const struct language_defn *langdef, lang_this = lookup_language_this (langdef, block); if (lang_this.symbol == NULL) - return null_block_symbol; + return {}; type = check_typedef (TYPE_TARGET_TYPE (SYMBOL_TYPE (lang_this.symbol))); @@ -225,7 +225,7 @@ cp_lookup_bare_symbol (const struct language_defn *langdef, This can happen for lambda functions compiled with clang++, which outputs no name for the container class. */ if (TYPE_NAME (type) == NULL) - return null_block_symbol; + return {}; /* Look for symbol NAME in this class. */ sym = cp_lookup_nested_symbol (type, name, block, domain); @@ -252,7 +252,7 @@ cp_search_static_and_baseclasses (const char *name, { /* Check for malformed input. */ if (prefix_len + 2 > strlen (name) || name[prefix_len + 1] != ':') - return null_block_symbol; + return {}; /* The class, namespace or function name is everything up to and including PREFIX_LEN. */ @@ -272,7 +272,7 @@ cp_search_static_and_baseclasses (const char *name, if (scope_sym.symbol == NULL) scope_sym = lookup_global_symbol (scope.c_str (), block, VAR_DOMAIN); if (scope_sym.symbol == NULL) - return null_block_symbol; + return {}; struct type *scope_type = SYMBOL_TYPE (scope_sym.symbol); @@ -379,13 +379,10 @@ cp_lookup_symbol_via_imports (const char *scope, const int search_parents) { struct using_direct *current; - struct block_symbol sym; + struct block_symbol sym = {}; int len; int directive_match; - sym.symbol = NULL; - sym.block = NULL; - /* First, try to find the symbol in the given namespace if requested. */ if (search_scope_first) sym = cp_lookup_symbol_in_namespace (scope, name, @@ -476,7 +473,7 @@ cp_lookup_symbol_via_imports (const char *scope, } } - return null_block_symbol; + return {}; } /* Helper function that searches an array of symbols for one named NAME. */ @@ -621,7 +618,7 @@ cp_lookup_symbol_via_all_imports (const char *scope, const char *name, block = BLOCK_SUPERBLOCK (block); } - return null_block_symbol; + return {}; } /* Searches for NAME in the current namespace, and by applying @@ -808,10 +805,7 @@ find_symbol_in_baseclass (struct type *parent_type, const char *name, int is_in_anonymous) { int i; - struct block_symbol sym; - - sym.symbol = NULL; - sym.block = NULL; + struct block_symbol sym = {}; for (i = 0; i < TYPE_N_BASECLASSES (parent_type); ++i) { @@ -902,7 +896,7 @@ cp_lookup_nested_symbol_1 (struct type *container_type, return sym; } - return null_block_symbol; + return {}; } /* Look up a symbol named NESTED_NAME that is nested inside the C++ @@ -979,7 +973,7 @@ cp_lookup_nested_symbol (struct type *parent_type, "cp_lookup_nested_symbol (...) = NULL" " (func/method)\n"); } - return null_block_symbol; + return {}; default: internal_error (__FILE__, __LINE__, |