From: Tom Tromey Date: Thu, 23 May 2024 15:35:46 +0000 (-0600) Subject: Simplify lookup_local_symbol X-Git-Tag: binutils-2_43~398 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=67554fb777bfd676355e254f37ba5d9524c07824;p=thirdparty%2Fbinutils-gdb.git Simplify lookup_local_symbol This simplifies lookup_local_symbol a little, by having it check whether the current block is the static or global block, instead of first searching for the static block. --- diff --git a/gdb/symtab.c b/gdb/symtab.c index bd0ace4e198..c9629ceb1c8 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -2222,17 +2222,12 @@ lookup_local_symbol (const char *name, if (block == nullptr) return {}; - struct symbol *sym; - const struct block *static_block = block->static_block (); const char *scope = block->scope (); - /* Check if it's a global block. */ - if (static_block == nullptr) - return {}; - - while (block != static_block) + while (!block->is_global_block () && !block->is_static_block ()) { - sym = lookup_symbol_in_block (name, match_type, block, domain); + struct symbol *sym = lookup_symbol_in_block (name, match_type, + block, domain); if (sym != NULL) return (struct block_symbol) {sym, block};