diff options
author | Tom Tromey <tom@tromey.com> | 2021-04-17 09:35:04 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2021-04-17 09:35:05 -0600 |
commit | 3bfa51a75fc18775ea043efb248d0e2c35103202 (patch) | |
tree | 25e27a3c0ccf85f992657dde16c25277c163f0ac /gdb/quick-symbol.h | |
parent | 03a8ea51c31d8f27ec717ddb1ff68f5f5d0732ab (diff) | |
download | gdb-3bfa51a75fc18775ea043efb248d0e2c35103202.zip gdb-3bfa51a75fc18775ea043efb248d0e2c35103202.tar.gz gdb-3bfa51a75fc18775ea043efb248d0e2c35103202.tar.bz2 |
Add 'domain' parameter to expand_symtabs_matching
Currently, expand_symtabs_matching only accepts a search_domain
parameter. However, lookup_symbol uses a domain_enum instead, and the
two, confusingly, do quite different things -- one cannot emulate the
other. So, this patch adds a domain_enum parameter to
expand_symtabs_matching, with UNDEF_DOMAIN used as a wildcard.
This is another step toward replacing lookup_symbol with
expand_symtabs_matching.
gdb/ChangeLog
2021-04-17 Tom Tromey <tom@tromey.com>
* symtab.c (global_symbol_searcher::expand_symtabs): Update.
* symmisc.c (maintenance_expand_symtabs): Update.
* symfile.c (expand_symtabs_matching): Update.
* symfile-debug.c (objfile::expand_symtabs_matching): Add 'domain'
parameter.
* quick-symbol.h (struct quick_symbol_functions)
<expand_symtabs_matching>: Add 'domain' parameter.
* psymtab.c (recursively_search_psymtabs)
(psymbol_functions::expand_symtabs_matching): Add 'domain'
parameter.
* psympriv.h (struct psymbol_functions) <expand_symtabs_matching>:
Add 'domain' parameter.
* objfiles.h (struct objfile) <expand_symtabs_matching>: Add
'domain' parameter.
* linespec.c (iterate_over_all_matching_symtabs): Update.
* dwarf2/read.c (struct dwarf2_gdb_index)
<expand_symtabs_matching>: Add 'domain' parameter.
(struct dwarf2_debug_names_index) <expand_symtabs_matching>: Add
'domain' parameter.
(dw2_expand_symtabs_matching)
(dwarf2_gdb_index::expand_symtabs_matching)
(dw2_debug_names_iterator)
(dwarf2_debug_names_index::expand_symtabs_matching): Add 'domain'
parameter.
Diffstat (limited to 'gdb/quick-symbol.h')
-rw-r--r-- | gdb/quick-symbol.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gdb/quick-symbol.h b/gdb/quick-symbol.h index 3332d32..4c0ef73 100644 --- a/gdb/quick-symbol.h +++ b/gdb/quick-symbol.h @@ -202,7 +202,8 @@ struct quick_symbol_functions Otherwise, individual symbols are considered. - If KIND does not match, the symbol is skipped. + If DOMAIN or KIND do not match, the symbol is skipped. + If DOMAIN is UNDEF_DOMAIN, that is treated as a wildcard. If the symbol name does not match LOOKUP_NAME, the symbol is skipped. @@ -220,6 +221,7 @@ struct quick_symbol_functions gdb::function_view<expand_symtabs_symbol_matcher_ftype> symbol_matcher, gdb::function_view<expand_symtabs_exp_notify_ftype> expansion_notify, block_search_flags search_flags, + domain_enum domain, enum search_domain kind) = 0; /* Return the comp unit from OBJFILE that contains PC and |