When creating the special __start_ and __stop_ section symbols, gold
does not check the version script to see if they should be local
instead of global.
2015-07-21 Cary Coutant <ccoutant@gmail.com>
gold/
PR gold/18548
* symtab.cc (Symbol_table::do_define_in_output_data): Check for
forced local symbol even when oldsym != NULL.
(Symbol_table::do_define_in_output_segment): Likewise.
(Symbol_table::do_define_as_constant): Likewise.
+2015-07-21 Cary Coutant <ccoutant@gmail.com>
+
+ PR gold/18548
+ * symtab.cc (Symbol_table::do_define_in_output_data): Check for
+ forced local symbol even when oldsym != NULL.
+ (Symbol_table::do_define_in_output_segment): Likewise.
+ (Symbol_table::do_define_as_constant): Likewise.
+
2015-07-21 Cary Coutant <ccoutant@gmail.com>
PR gold/18698
return sym;
else
{
+ if (binding == elfcpp::STB_LOCAL
+ || this->version_script_.symbol_is_local(name))
+ this->force_local(oldsym);
delete sym;
return oldsym;
}
return sym;
else
{
+ if (binding == elfcpp::STB_LOCAL
+ || this->version_script_.symbol_is_local(name))
+ this->force_local(oldsym);
delete sym;
return oldsym;
}
return sym;
else
{
+ if (binding == elfcpp::STB_LOCAL
+ || this->version_script_.symbol_is_local(name))
+ this->force_local(oldsym);
delete sym;
return oldsym;
}