summaryrefslogtreecommitdiffstats
path: root/binutils-2.25/gold/options.cc
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.25/gold/options.cc')
-rw-r--r--binutils-2.25/gold/options.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/binutils-2.25/gold/options.cc b/binutils-2.25/gold/options.cc
index 000e6d07..731061d5 100644
--- a/binutils-2.25/gold/options.cc
+++ b/binutils-2.25/gold/options.cc
@@ -1,7 +1,6 @@
// options.c -- handle command line options for gold
-// Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013
-// Free Software Foundation, Inc.
+// Copyright (C) 2006-2014 Free Software Foundation, Inc.
// Written by Ian Lance Taylor <iant@google.com>.
// This file is part of gold.
@@ -549,6 +548,7 @@ General_options::parse_dynamic_list(const char*, const char* arg,
{
if (!read_dynamic_list(arg, cmdline, &this->dynamic_list_))
gold::gold_fatal(_("unable to parse dynamic-list script file %s"), arg);
+ this->have_dynamic_list_ = true;
}
void
@@ -918,6 +918,7 @@ General_options::General_options()
do_demangle_(false),
plugins_(NULL),
dynamic_list_(),
+ have_dynamic_list_(false),
incremental_mode_(INCREMENTAL_OFF),
incremental_disposition_(INCREMENTAL_STARTUP),
incremental_startup_disposition_(INCREMENTAL_CHECK),
@@ -1199,6 +1200,13 @@ General_options::finalize()
// in the path, as appropriate.
this->add_sysroot();
+ // --dynamic-list overrides -Bsymbolic and -Bsymbolic-functions.
+ if (this->have_dynamic_list())
+ {
+ this->set_Bsymbolic(false);
+ this->set_Bsymbolic_functions(false);
+ }
+
// Now that we've normalized the options, check for contradictory ones.
if (this->shared() && this->is_static())
gold_fatal(_("-shared and -static are incompatible"));