diff options
Diffstat (limited to 'gold/plugin.cc')
-rw-r--r-- | gold/plugin.cc | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/gold/plugin.cc b/gold/plugin.cc index 76b2431..1c86c03 100644 --- a/gold/plugin.cc +++ b/gold/plugin.cc @@ -705,26 +705,32 @@ Sized_pluginobj<size, big_endian>::do_add_symbols(Symbol_table* symtab, template<int size, bool big_endian> Archive::Should_include Sized_pluginobj<size, big_endian>::do_should_include_member( - Symbol_table* symtab, Read_symbols_data*, std::string* why) + Symbol_table* symtab, + Layout* layout, + Read_symbols_data*, + std::string* why) { char* tmpbuf = NULL; size_t tmpbuflen = 0; - for (int i = 0; i < this->nsyms_; ++i) { - const struct ld_plugin_symbol& sym = this->syms_[i]; - const char* name = sym.name; - Symbol* symbol; - Archive::Should_include t = Archive::should_include_member(symtab, name, - &symbol, why, - &tmpbuf, - &tmpbuflen); + for (int i = 0; i < this->nsyms_; ++i) + { + const struct ld_plugin_symbol& sym = this->syms_[i]; + const char* name = sym.name; + Symbol* symbol; + Archive::Should_include t = Archive::should_include_member(symtab, + layout, + name, + &symbol, why, + &tmpbuf, + &tmpbuflen); if (t == Archive::SHOULD_INCLUDE_YES) { if (tmpbuf != NULL) free(tmpbuf); return t; } - } + } if (tmpbuf != NULL) free(tmpbuf); return Archive::SHOULD_INCLUDE_UNKNOWN; |