Don't handle every plugin symbol as defined.
Gold was fetching --start-lib/--end-lib members if that member defined or used a currently undefined symbol.
This commit is contained in:
parent
82838bd626
commit
a06ed37d75
2 changed files with 7 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
2015-03-03 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
|
||||
|
||||
* plugin.cc (do_should_include_member): Ignore LDPK_UNDEF and
|
||||
LDPK_WEAKUNDEF symbols.
|
||||
|
||||
2015-03-03 Evgenii Stepanov <eugenis@google.com>
|
||||
|
||||
* plugin.h (Pluginobj::get_symbol_resolution_info): Add version
|
||||
|
|
|
@ -1179,6 +1179,8 @@ Sized_pluginobj<size, big_endian>::do_should_include_member(
|
|||
for (int i = 0; i < this->nsyms_; ++i)
|
||||
{
|
||||
const struct ld_plugin_symbol& sym = this->syms_[i];
|
||||
if (sym.def == LDPK_UNDEF || sym.def == LDPK_WEAKUNDEF)
|
||||
continue;
|
||||
const char* name = sym.name;
|
||||
Symbol* symbol;
|
||||
Archive::Should_include t = Archive::should_include_member(symtab,
|
||||
|
|
Loading…
Reference in a new issue