aboutsummaryrefslogtreecommitdiff
path: root/gdb/guile
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2023-03-30 23:00:26 -0600
committerTom Tromey <tom@tromey.com>2024-01-28 10:58:16 -0700
commitccf41c248737eb6650211481366c4e1156ce01ae (patch)
tree55933f48a150085e0df7728b4f82047977559a88 /gdb/guile
parent6c0152149476085e6c4c5c812bfc3a06fff7c938 (diff)
downloadbinutils-ccf41c248737eb6650211481366c4e1156ce01ae.zip
binutils-ccf41c248737eb6650211481366c4e1156ce01ae.tar.gz
binutils-ccf41c248737eb6650211481366c4e1156ce01ae.tar.bz2
Use domain_search_flags in lookup_symbol et al
This changes lookup_symbol and associated APIs to accept domain_search_flags rather than a domain_enum. Note that this introduces some new constants to Python and Guile. I chose to break out the documentation patch for this, because the internals here do not change until a later patch, and it seemed simpler to patch the docs just once, rather than twice.
Diffstat (limited to 'gdb/guile')
-rw-r--r--gdb/guile/scm-frame.c2
-rw-r--r--gdb/guile/scm-symbol.c17
2 files changed, 11 insertions, 8 deletions
diff --git a/gdb/guile/scm-frame.c b/gdb/guile/scm-frame.c
index 60bacdd..b133e8d 100644
--- a/gdb/guile/scm-frame.c
+++ b/gdb/guile/scm-frame.c
@@ -937,7 +937,7 @@ gdbscm_frame_read_var (SCM self, SCM symbol_scm, SCM rest)
if (block == NULL)
block = get_frame_block (frame_info_ptr (frame), NULL);
- lookup_sym = lookup_symbol (var_name.get (), block, VAR_DOMAIN,
+ lookup_sym = lookup_symbol (var_name.get (), block, SEARCH_VFT,
NULL);
var = lookup_sym.symbol;
block = lookup_sym.block;
diff --git a/gdb/guile/scm-symbol.c b/gdb/guile/scm-symbol.c
index bf5fe24..7061ff5 100644
--- a/gdb/guile/scm-symbol.c
+++ b/gdb/guile/scm-symbol.c
@@ -617,7 +617,8 @@ gdbscm_lookup_symbol (SCM name_scm, SCM rest)
gdbscm_gdb_exception except {};
try
{
- symbol = lookup_symbol (name, block, (domain_enum) domain,
+ domain_search_flags flags = from_scripting_domain (domain);
+ symbol = lookup_symbol (name, block, flags,
&is_a_field_of_this).symbol;
}
catch (const gdb_exception &ex)
@@ -654,7 +655,8 @@ gdbscm_lookup_global_symbol (SCM name_scm, SCM rest)
try
{
- symbol = lookup_global_symbol (name, NULL, (domain_enum) domain).symbol;
+ domain_search_flags flags = from_scripting_domain (domain);
+ symbol = lookup_global_symbol (name, NULL, flags).symbol;
}
catch (const gdb_exception &ex)
{
@@ -696,14 +698,15 @@ static const scheme_integer_constant symbol_integer_constants[] =
#undef X
#define DOMAIN(X) \
- { "SYMBOL_" #X "_DOMAIN", X ## _DOMAIN },
+ { "SYMBOL_" #X "_DOMAIN", to_scripting_domain (X ## _DOMAIN) }, \
+ { "SEARCH_" #X "_DOMAIN", to_scripting_domain (SEARCH_ ## X ## _DOMAIN) },
#include "sym-domains.def"
#undef DOMAIN
- /* These were never correct. */
- { "SYMBOL_VARIABLES_DOMAIN", VAR_DOMAIN },
- { "SYMBOL_FUNCTIONS_DOMAIN", VAR_DOMAIN },
- { "SYMBOL_TYPES_DOMAIN", VAR_DOMAIN },
+ /* Historical. */
+ { "SYMBOL_VARIABLES_DOMAIN", to_scripting_domain (SEARCH_VAR_DOMAIN) },
+ { "SYMBOL_FUNCTIONS_DOMAIN", to_scripting_domain (SEARCH_FUNCTION_DOMAIN) },
+ { "SYMBOL_TYPES_DOMAIN", to_scripting_domain (SEARCH_TYPE_DOMAIN) },
END_INTEGER_CONSTANTS
};