aboutsummaryrefslogtreecommitdiff
path: root/gold/target-reloc.h
diff options
context:
space:
mode:
Diffstat (limited to 'gold/target-reloc.h')
-rw-r--r--gold/target-reloc.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/gold/target-reloc.h b/gold/target-reloc.h
index 8b87963..c38d5f6 100644
--- a/gold/target-reloc.h
+++ b/gold/target-reloc.h
@@ -32,10 +32,10 @@ namespace gold
{
// This function implements the generic part of reloc scanning. This
-// is an inline function which takes a class whose operator()
-// implements the machine specific part of scanning. We do it this
-// way to avoidmaking a function call for each relocation, and to
-// avoid repeating the generic code for each target.
+// is an inline function which takes a class whose member functions
+// local() and global() implement the machine specific part of scanning.
+// We do it this way to avoidmaking a function call for each relocation,
+// and to avoid repeating the generic code for each target.
template<int size, bool big_endian, typename Target_type, int sh_type,
typename Scan>
@@ -195,7 +195,8 @@ relocate_section(
if (sym != NULL
&& sym->is_undefined()
- && sym->binding() != elfcpp::STB_WEAK)
+ && sym->binding() != elfcpp::STB_WEAK
+ && !parameters->output_is_shared())
gold_undefined_symbol(sym, relinfo, i, offset);
if (sym != NULL && sym->has_warning())