summaryrefslogtreecommitdiff
path: root/gdb/d-lang.c
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2015-08-13 20:34:15 +0200
committerIain Buclaw <ibuclaw@gdcproject.org>2015-08-13 21:07:09 +0200
commitbc7c9fab612d4d33f7fe5d17eef4f5bd5cdc4144 (patch)
tree7b016c69aeb9253d52045f9fa374a063f125d911 /gdb/d-lang.c
parent52bbc560524ec3691203eccd05207d13913a1e35 (diff)
downloadbinutils-gdb-bc7c9fab612d4d33f7fe5d17eef4f5bd5cdc4144.tar.gz
[D] Support looking up symbols in the current and imported modules.
In D, there is the notion of modules, and importing from one to the other, whether it is a basic, selective or renamed import declaration. module A; import X; void foo() { import Y : bar; } If the compiler emits DW_TAG_imported_declaration at the appropriate locations, then we can make use of what gdb stores in using_direct when performing nonlocal symbol lookups. gdb/ChangeLog * Makefile.in (SFILES): Add d-namespace.c. (COMMON_OBS): Add d-namespace.o. * d-lang.c (d_language_defn): Use d_lookup_symbol_nonlocal as the la_lookup_symbol_nonlocal callback function pointer. * d-lang.h (d_lookup_symbol_nonlocal): New declaration. (d_lookup_nested_symbol): New declaration. * d-namespace.c: New file.
Diffstat (limited to 'gdb/d-lang.c')
-rw-r--r--gdb/d-lang.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gdb/d-lang.c b/gdb/d-lang.c
index bfb8e57ef84..2fc5080bee5 100644
--- a/gdb/d-lang.c
+++ b/gdb/d-lang.c
@@ -214,7 +214,7 @@ static const struct language_defn d_language_defn =
default_read_var_value, /* la_read_var_value */
NULL, /* Language specific skip_trampoline. */
"this",
- basic_lookup_symbol_nonlocal,
+ d_lookup_symbol_nonlocal,
basic_lookup_transparent_type,
d_demangle, /* Language specific symbol demangler. */
NULL, /* Language specific