diff options
author | Yiran Wang <yiran@google.com> | 2015-07-20 08:47:57 -0700 |
---|---|---|
committer | Cary Coutant <ccoutant@gmail.com> | 2015-07-20 09:19:02 -0700 |
commit | c20ceeb226168ffd84078ef74d890c2b7f69a435 (patch) | |
tree | 2363a36537a40a2c1191397af3468c477251024d /gold/resolve.cc | |
parent | 3675a06a823132663f7c2376796c5345032fddad (diff) | |
download | gdb-c20ceeb226168ffd84078ef74d890c2b7f69a435.zip gdb-c20ceeb226168ffd84078ef74d890c2b7f69a435.tar.gz gdb-c20ceeb226168ffd84078ef74d890c2b7f69a435.tar.bz2 |
Remove warning about references from shared objects to hidden symbols.
gold/
PR gold/15574
* resolve.cc (Symbol_table): Remove warning about references
from shared objects to hidden symbols.
* testsuite/Makefile.am (hidden_test): Add hidden_test.syms.
* testsuite/Makefile.in: Regenerate.
* testsuite/hidden_test.sh: Check dynamic symbol table; update
expected error messages.
Diffstat (limited to 'gold/resolve.cc')
-rw-r--r-- | gold/resolve.cc | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/gold/resolve.cc b/gold/resolve.cc index fdae0ba..22d1e78 100644 --- a/gold/resolve.cc +++ b/gold/resolve.cc @@ -286,15 +286,10 @@ Symbol_table::resolve(Sized_symbol<size>* to, && (to->visibility() == elfcpp::STV_HIDDEN || to->visibility() == elfcpp::STV_INTERNAL)) { - // A dynamic object cannot reference a hidden or internal symbol - // defined in another object. - gold_warning(_("%s symbol '%s' in %s is referenced by DSO %s"), - (to->visibility() == elfcpp::STV_HIDDEN - ? "hidden" - : "internal"), - to->demangled_name().c_str(), - to->object()->name().c_str(), - object->name().c_str()); + // The symbol is hidden, so a reference from a shared object + // cannot bind to it. We tried issuing a warning in this case, + // but that produces false positives when the symbol is + // actually resolved in a different shared object (PR 15574). return; } else |