forked from Imagelibrary/binutils-gdb
Use wild matching for lookup_name_info::match_any
Currently, lookup_name_info::match_any symbol_name_match_type::FULL.
However, this seems wrong. Consider the expand_symtabs_matching
implementation of the cooked index: it compares name components, and
then if all the components match, it checks:
if ((match_type == symbol_name_match_type::FULL
|| (lang != language_ada
&& match_type == symbol_name_match_type::EXPRESSION)))
{
if (parent != nullptr)
continue;
That is, if the component-matching loop did not finish, and a full
match is requested, then fail to match. This handles cases where the
index is asked to look up "b::c" but finds "a:🅱️:c".
However, match_any should match, well, any. So, it seems to me that
checking any parent matches is irrelevant -- and therefore this should
use wild matching.
This commit is contained in:
@@ -1911,7 +1911,7 @@ lookup_name_info::match_any ()
|
||||
{
|
||||
/* Lookup any symbol that "" would complete. I.e., this matches all
|
||||
symbol names. */
|
||||
static const lookup_name_info lookup_name ("", symbol_name_match_type::FULL,
|
||||
static const lookup_name_info lookup_name ("", symbol_name_match_type::WILD,
|
||||
true);
|
||||
|
||||
return lookup_name;
|
||||
|
||||
Reference in New Issue
Block a user