From 30bc8c4670a8c99dbfd7e7b31d2e794dab54fcda Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 5 Jan 2010 05:56:28 +0000 Subject: PR 10980 * options.h (class General_options): Add --allow-multiple-definition and -z muldefs. * resolve.cc (Symbol_table::should_override): Don't warn about a multiple symbol definition if --allow-multiple-definition or -z muldefs. --- gold/resolve.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'gold/resolve.cc') 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: -- cgit v1.1