diff options
author | Iain Buclaw <ibuclaw@gdcproject.org> | 2015-08-13 20:34:15 +0200 |
---|---|---|
committer | Iain Buclaw <ibuclaw@gdcproject.org> | 2015-08-13 21:07:09 +0200 |
commit | bc7c9fab612d4d33f7fe5d17eef4f5bd5cdc4144 (patch) | |
tree | 7b016c69aeb9253d52045f9fa374a063f125d911 /gdb/d-lang.c | |
parent | 52bbc560524ec3691203eccd05207d13913a1e35 (diff) | |
download | binutils-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.c | 2 |
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 |