From e3f07b5b750554bbbbee1bddc34bb77fd7d31eeb Mon Sep 17 00:00:00 2001 From: Cary Coutant Date: Tue, 27 Sep 2016 12:08:19 -0700 Subject: Don't treat as separate symbols if unversioned symbol is undefined. When we see an unversioned symbol reference in a shared library, followed by a default definition of the symbol in another shared library, we were treating them as separate symbols. That should only happen when both are definitions. gold/ PR gold/20238 * symtab.cc (Symbol_table::define_default_version): Check that unversioned symbol is defined. --- gold/symtab.cc | 1 + 1 file changed, 1 insertion(+) (limited to 'gold/symtab.cc') diff --git a/gold/symtab.cc b/gold/symtab.cc index b31794a..c872f47 100644 --- a/gold/symtab.cc +++ b/gold/symtab.cc @@ -882,6 +882,7 @@ Symbol_table::define_default_version(Sized_symbol* sym, ; else if (pdef->second->is_from_dynobj() && sym->is_from_dynobj() + && pdef->second->is_defined() && pdef->second->object() != sym->object()) ; else -- cgit v1.1