aboutsummaryrefslogtreecommitdiff
path: root/gold/resolve.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gold/resolve.cc')
-rw-r--r--gold/resolve.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/gold/resolve.cc b/gold/resolve.cc
index d32b2b9..24b80a8 100644
--- a/gold/resolve.cc
+++ b/gold/resolve.cc
@@ -440,9 +440,11 @@ Symbol_table::should_override(const Symbol* to, unsigned int frombits,
|| (object != NULL && object->just_symbols()))
return false;
- Symbol_table::report_resolve_problem(true,
- _("multiple definition of '%s'"),
- to, defined, object);
+ if (!parameters->options().allow_multiple_definition()
+ && !parameters->options().muldefs())
+ Symbol_table::report_resolve_problem(true,
+ _("multiple definition of '%s'"),
+ to, defined, object);
return false;
case WEAK_DEF * 16 + DEF: