2012-08-21 Cary Coutant <ccoutant@google.com>

gold/
	* symtab.cc (Symbol_table::gc_mark_undef_symbols): Don't assert
	if --export-dynamic-symbol names an undef symbol.
This commit is contained in:
Cary Coutant 2012-08-21 21:41:04 +00:00
parent 45b7da814b
commit 1d5dfe78f9
2 changed files with 9 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2012-08-21 Cary Coutant <ccoutant@google.com>
* symtab.cc (Symbol_table::gc_mark_undef_symbols): Don't assert
if --export-dynamic-symbol names an undef symbol.
2012-08-18 Alan Modra <amodra@gmail.com> 2012-08-18 Alan Modra <amodra@gmail.com>
* powerpc.cc: Formatting and white space. * powerpc.cc: Formatting and white space.

View file

@ -595,8 +595,10 @@ Symbol_table::gc_mark_undef_symbols(Layout* layout)
{ {
const char* name = p->c_str(); const char* name = p->c_str();
Symbol* sym = this->lookup(name); Symbol* sym = this->lookup(name);
gold_assert(sym != NULL); // It's not an error if a symbol named by --export-dynamic-symbol
if (sym->source() == Symbol::FROM_OBJECT // is undefined.
if (sym != NULL
&& sym->source() == Symbol::FROM_OBJECT
&& !sym->object()->is_dynamic()) && !sym->object()->is_dynamic())
{ {
Relobj* obj = static_cast<Relobj*>(sym->object()); Relobj* obj = static_cast<Relobj*>(sym->object());