mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 01:07:52 +00:00
Use parameters to track whether we are doing a static link. Fix up
final_value_is_known for weak undefined symbols. Pointed out by Cary Coutant.
This commit is contained in:
@@ -31,7 +31,8 @@ namespace gold
|
||||
// Initialize the parameters from the options.
|
||||
|
||||
Parameters::Parameters(const General_options* options)
|
||||
: is_size_and_endian_valid_(false), size_(0), is_big_endian_(false),
|
||||
: is_doing_static_link_valid_(false), doing_static_link_(false),
|
||||
is_size_and_endian_valid_(false), size_(0), is_big_endian_(false),
|
||||
optimization_level_(options->optimization_level())
|
||||
{
|
||||
if (options->is_shared())
|
||||
@@ -42,6 +43,15 @@ Parameters::Parameters(const General_options* options)
|
||||
this->output_file_type_ = OUTPUT_EXECUTABLE;
|
||||
}
|
||||
|
||||
// Set whether we are doing a static link.
|
||||
|
||||
void
|
||||
Parameters::set_doing_static_link(bool doing_static_link)
|
||||
{
|
||||
this->doing_static_link_ = doing_static_link;
|
||||
this->is_doing_static_link_valid_ = true;
|
||||
}
|
||||
|
||||
// Set the size and endianness.
|
||||
|
||||
void
|
||||
@@ -76,6 +86,16 @@ initialize_parameters(const General_options* options)
|
||||
parameters = static_parameters = new Parameters(options);
|
||||
}
|
||||
|
||||
// Set whether we are doing a static link.
|
||||
|
||||
void
|
||||
set_parameters_doing_static_link(bool doing_static_link)
|
||||
{
|
||||
static_parameters->set_doing_static_link(doing_static_link);
|
||||
}
|
||||
|
||||
// Set the size and endianness.
|
||||
|
||||
void
|
||||
set_parameters_size_and_endianness(int size, bool is_big_endian)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user