aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2016-02-21 21:38:10 +0100
committerIain Buclaw <ibuclaw@gdcproject.org>2016-02-21 21:38:34 +0100
commit30a6a7f035026d05b52c92c26d4cb7ea3c6d6e5c (patch)
tree95bce25e289932610bd36a942ade9ffac16f8a0a
parent8ecb73ddd7efde747f9b025cb624e378bc994db5 (diff)
downloadgdb-30a6a7f035026d05b52c92c26d4cb7ea3c6d6e5c.zip
gdb-30a6a7f035026d05b52c92c26d4cb7ea3c6d6e5c.tar.gz
gdb-30a6a7f035026d05b52c92c26d4cb7ea3c6d6e5c.tar.bz2
Remove search_parents parameter from d_lookup_symbol_imports.
gdb/ChangeLog: * d-namespace.c (d_lookup_symbol_imports): Remove argument 'search_parents'. All callers updated.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/d-namespace.c37
2 files changed, 11 insertions, 31 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 274d98b..3d442cc 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2016-02-21 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * d-namespace.c (d_lookup_symbol_imports): Remove argument
+ 'search_parents'. All callers updated.
+
2016-02-18 Marcin Koƛcielnicki <koriakin@0x04.net>
* s390-linux-tdep.c (s390_guess_tracepoint_registers): New function.
diff --git a/gdb/d-namespace.c b/gdb/d-namespace.c
index bcd0f45..2c8b36c 100644
--- a/gdb/d-namespace.c
+++ b/gdb/d-namespace.c
@@ -388,31 +388,15 @@ reset_directive_searched (void *data)
}
/* Search for NAME by applying all import statements belonging to
- BLOCK which are applicable in SCOPE.
-
- If SEARCH_PARENTS the search will include imports which are
- applicable in parents of SCOPE.
- Example:
-
- module A;
- import X;
- void B() {
- import Y;
- }
-
- If SCOPE is "A.B" and SEARCH_PARENTS is true, the imports of
- modules X and Y will be considered. If SEARCH_PARENTS is false
- only the import of Y is considered. */
+ BLOCK which are applicable in SCOPE. */
static struct block_symbol
d_lookup_symbol_imports (const char *scope, const char *name,
const struct block *block,
- const domain_enum domain,
- const int search_parents)
+ const domain_enum domain)
{
struct using_direct *current;
struct block_symbol sym;
- int directive_match;
struct cleanup *searched_cleanup;
/* First, try to find the symbol in the given module. */
@@ -430,18 +414,9 @@ d_lookup_symbol_imports (const char *scope, const char *name,
current = current->next)
{
const char **excludep;
- int len = strlen (current->import_dest);
-
- directive_match = (search_parents
- ? (strncmp (scope, current->import_dest, len) == 0
- && (len == 0
- || scope[len] == '.'
- || scope[len] == '\0'))
- : strcmp (scope, current->import_dest) == 0);
-
- /* If the import destination is the current scope or one of its
- ancestors then it is applicable. */
- if (directive_match && !current->searched)
+
+ /* If the import destination is the current scope then search it. */
+ if (!current->searched && strcmp (scope, current->import_dest) == 0)
{
/* Mark this import as searched so that the recursive call
does not search it again. */
@@ -554,7 +529,7 @@ d_lookup_symbol_module (const char *scope, const char *name,
blocks. */
while (block != NULL)
{
- sym = d_lookup_symbol_imports (scope, name, block, domain, 1);
+ sym = d_lookup_symbol_imports (scope, name, block, domain);
if (sym.symbol != NULL)
return sym;