aboutsummaryrefslogtreecommitdiff
path: root/gold/symtab.cc
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2009-12-11 13:42:17 +0000
committerNick Clifton <nickc@redhat.com>2009-12-11 13:42:17 +0000
commit91d6fa6a035cc7d0b7be5c99c194a64cb80924b0 (patch)
tree214507c313b77d619b52afcae2af0b02c9fa700b /gold/symtab.cc
parent01fe1b4183324882e88e8c64748bffdc69ea3a9c (diff)
downloadgdb-91d6fa6a035cc7d0b7be5c99c194a64cb80924b0.zip
gdb-91d6fa6a035cc7d0b7be5c99c194a64cb80924b0.tar.gz
gdb-91d6fa6a035cc7d0b7be5c99c194a64cb80924b0.tar.bz2
Add -Wshadow to the gcc command line options used when compiling the binutils.
Fix up all warnings generated by the addition of this switch.
Diffstat (limited to 'gold/symtab.cc')
-rw-r--r--gold/symtab.cc644
1 files changed, 322 insertions, 322 deletions
diff --git a/gold/symtab.cc b/gold/symtab.cc
index 7e8a890..30ed8f7 100644
--- a/gold/symtab.cc
+++ b/gold/symtab.cc
@@ -50,20 +50,20 @@ namespace gold
// and source_.
void
-Symbol::init_fields(const char* name, const char* version,
- elfcpp::STT type, elfcpp::STB binding,
- elfcpp::STV visibility, unsigned char nonvis)
+Symbol::init_fields(const char* aname, const char* aversion,
+ elfcpp::STT atype, elfcpp::STB abinding,
+ elfcpp::STV avisibility, unsigned char non_vis)
{
- this->name_ = name;
- this->version_ = version;
+ this->name_ = aname;
+ this->version_ = aversion;
this->symtab_index_ = 0;
this->dynsym_index_ = 0;
this->got_offsets_.init();
this->plt_offset_ = 0;
- this->type_ = type;
- this->binding_ = binding;
- this->visibility_ = visibility;
- this->nonvis_ = nonvis;
+ this->type_ = atype;
+ this->binding_ = abinding;
+ this->visibility_ = avisibility;
+ this->nonvis_ = non_vis;
this->is_target_special_ = false;
this->is_def_ = false;
this->is_forwarder_ = false;
@@ -83,16 +83,16 @@ Symbol::init_fields(const char* name, const char* version,
// if the --demangle flag was set.
static std::string
-demangle(const char* name)
+demangle(const char* aname)
{
if (!parameters->options().do_demangle())
- return name;
+ return aname;
// cplus_demangle allocates memory for the result it returns,
// and returns NULL if the name is already demangled.
- char* demangled_name = cplus_demangle(name, DMGL_ANSI | DMGL_PARAMS);
+ char* demangled_name = cplus_demangle(aname, DMGL_ANSI | DMGL_PARAMS);
if (demangled_name == NULL)
- return name;
+ return aname;
std::string retval(demangled_name);
free(demangled_name);
@@ -109,33 +109,33 @@ Symbol::demangled_name() const
template<int size, bool big_endian>
void
-Symbol::init_base_object(const char* name, const char* version, Object* object,
+Symbol::init_base_object(const char* aname, const char* aversion, Object* aobject,
const elfcpp::Sym<size, big_endian>& sym,
unsigned int st_shndx, bool is_ordinary)
{
- this->init_fields(name, version, sym.get_st_type(), sym.get_st_bind(),
+ this->init_fields(aname, aversion, sym.get_st_type(), sym.get_st_bind(),
sym.get_st_visibility(), sym.get_st_nonvis());
- this->u_.from_object.object = object;
+ this->u_.from_object.object = aobject;
this->u_.from_object.shndx = st_shndx;
this->is_ordinary_shndx_ = is_ordinary;
this->source_ = FROM_OBJECT;
- this->in_reg_ = !object->is_dynamic();
- this->in_dyn_ = object->is_dynamic();
- this->in_real_elf_ = object->pluginobj() == NULL;
+ this->in_reg_ = !aobject->is_dynamic();
+ this->in_dyn_ = aobject->is_dynamic();
+ this->in_real_elf_ = aobject->pluginobj() == NULL;
}
// Initialize the fields in the base class Symbol for a symbol defined
// in an Output_data.
void
-Symbol::init_base_output_data(const char* name, const char* version,
- Output_data* od, elfcpp::STT type,
- elfcpp::STB binding, elfcpp::STV visibility,
- unsigned char nonvis, bool offset_is_from_end)
+Symbol::init_base_output_data(const char* aname, const char* aversion,
+ Output_data* od, elfcpp::STT atype,
+ elfcpp::STB abinding, elfcpp::STV avisibility,
+ unsigned char non_vis, bool offset_is_from_the_end)
{
- this->init_fields(name, version, type, binding, visibility, nonvis);
+ this->init_fields(aname, aversion, atype, abinding, avisibility, non_vis);
this->u_.in_output_data.output_data = od;
- this->u_.in_output_data.offset_is_from_end = offset_is_from_end;
+ this->u_.in_output_data.offset_is_from_end = offset_is_from_the_end;
this->source_ = IN_OUTPUT_DATA;
this->in_reg_ = true;
this->in_real_elf_ = true;
@@ -145,15 +145,15 @@ Symbol::init_base_output_data(const char* name, const char* version,
// in an Output_segment.
void
-Symbol::init_base_output_segment(const char* name, const char* version,
- Output_segment* os, elfcpp::STT type,
- elfcpp::STB binding, elfcpp::STV visibility,
- unsigned char nonvis,
- Segment_offset_base offset_base)
+Symbol::init_base_output_segment(const char* aname, const char* aversion,
+ Output_segment* os, elfcpp::STT atype,
+ elfcpp::STB abinding, elfcpp::STV avisibility,
+ unsigned char non_vis,
+ Segment_offset_base offsetbase)
{
- this->init_fields(name, version, type, binding, visibility, nonvis);
+ this->init_fields(aname, aversion, atype, abinding, avisibility, non_vis);
this->u_.in_output_segment.output_segment = os;
- this->u_.in_output_segment.offset_base = offset_base;
+ this->u_.in_output_segment.offset_base = offsetbase;
this->source_ = IN_OUTPUT_SEGMENT;
this->in_reg_ = true;
this->in_real_elf_ = true;
@@ -163,11 +163,11 @@ Symbol::init_base_output_segment(const char* name, const char* version,
// as a constant.
void
-Symbol::init_base_constant(const char* name, const char* version,
- elfcpp::STT type, elfcpp::STB binding,
- elfcpp::STV visibility, unsigned char nonvis)
+Symbol::init_base_constant(const char* aname, const char* aversion,
+ elfcpp::STT atype, elfcpp::STB abinding,
+ elfcpp::STV avisibility, unsigned char non_vis)
{
- this->init_fields(name, version, type, binding, visibility, nonvis);
+ this->init_fields(aname, aversion, atype, abinding, avisibility, non_vis);
this->source_ = IS_CONSTANT;
this->in_reg_ = true;
this->in_real_elf_ = true;
@@ -177,11 +177,11 @@ Symbol::init_base_constant(const char* name, const char* version,
// symbol.
void
-Symbol::init_base_undefined(const char* name, const char* version,
- elfcpp::STT type, elfcpp::STB binding,
- elfcpp::STV visibility, unsigned char nonvis)
+Symbol::init_base_undefined(const char* aname, const char* aversion,
+ elfcpp::STT atype, elfcpp::STB abinding,
+ elfcpp::STV avisibility, unsigned char non_vis)
{
- this->init_fields(name, version, type, binding, visibility, nonvis);
+ this->init_fields(aname, aversion, atype, abinding, avisibility, non_vis);
this->dynsym_index_ = -1U;
this->source_ = IS_UNDEFINED;
this->in_reg_ = true;
@@ -204,12 +204,12 @@ Symbol::allocate_base_common(Output_data* od)
template<int size>
template<bool big_endian>
void
-Sized_symbol<size>::init_object(const char* name, const char* version,
- Object* object,
+Sized_symbol<size>::init_object(const char* aname, const char* aversion,
+ Object* aobject,
const elfcpp::Sym<size, big_endian>& sym,
unsigned int st_shndx, bool is_ordinary)
{
- this->init_base_object(name, version, object, sym, st_shndx, is_ordinary);
+ this->init_base_object(aname, aversion, aobject, sym, st_shndx, is_ordinary);
this->value_ = sym.get_st_value();
this->symsize_ = sym.get_st_size();
}
@@ -219,18 +219,18 @@ Sized_symbol<size>::init_object(const char* name, const char* version,
template<int size>
void
-Sized_symbol<size>::init_output_data(const char* name, const char* version,
- Output_data* od, Value_type value,
- Size_type symsize, elfcpp::STT type,
- elfcpp::STB binding,
- elfcpp::STV visibility,
- unsigned char nonvis,
- bool offset_is_from_end)
+Sized_symbol<size>::init_output_data(const char* aname, const char* aversion,
+ Output_data* od, Value_type avalue,
+ Size_type sym_size, elfcpp::STT atype,
+ elfcpp::STB abinding,
+ elfcpp::STV avisibility,
+ unsigned char non_vis,
+ bool offset_is_from_the_end)
{
- this->init_base_output_data(name, version, od, type, binding, visibility,
- nonvis, offset_is_from_end);
- this->value_ = value;
- this->symsize_ = symsize;
+ this->init_base_output_data(aname, aversion, od, atype, abinding, avisibility,
+ non_vis, offset_is_from_the_end);
+ this->value_ = avalue;
+ this->symsize_ = sym_size;
}
// Initialize the fields in Sized_symbol for a symbol defined in an
@@ -238,18 +238,18 @@ Sized_symbol<size>::init_output_data(const char* name, const char* version,
template<int size>
void
-Sized_symbol<size>::init_output_segment(const char* name, const char* version,
- Output_segment* os, Value_type value,
- Size_type symsize, elfcpp::STT type,
- elfcpp::STB binding,
- elfcpp::STV visibility,
- unsigned char nonvis,
- Segment_offset_base offset_base)
+Sized_symbol<size>::init_output_segment(const char* aname, const char* aversion,
+ Output_segment* os, Value_type avalue,
+ Size_type sym_size, elfcpp::STT atype,
+ elfcpp::STB abinding,
+ elfcpp::STV avisibility,
+ unsigned char non_vis,
+ Segment_offset_base offsetbase)
{
- this->init_base_output_segment(name, version, os, type, binding, visibility,
- nonvis, offset_base);
- this->value_ = value;
- this->symsize_ = symsize;
+ this->init_base_output_segment(aname, aversion, os, atype, abinding, avisibility,
+ non_vis, offsetbase);
+ this->value_ = avalue;
+ this->symsize_ = sym_size;
}
// Initialize the fields in Sized_symbol for a symbol defined as a
@@ -257,25 +257,25 @@ Sized_symbol<size>::init_output_segment(const char* name, const char* version,
template<int size>
void
-Sized_symbol<size>::init_constant(const char* name, const char* version,
- Value_type value, Size_type symsize,
- elfcpp::STT type, elfcpp::STB binding,
- elfcpp::STV visibility, unsigned char nonvis)
+Sized_symbol<size>::init_constant(const char* aname, const char* aversion,
+ Value_type avalue, Size_type sym_size,
+ elfcpp::STT atype, elfcpp::STB abinding,
+ elfcpp::STV avisibility, unsigned char non_vis)
{
- this->init_base_constant(name, version, type, binding, visibility, nonvis);
- this->value_ = value;
- this->symsize_ = symsize;
+ this->init_base_constant(aname, aversion, atype, abinding, avisibility, non_vis);
+ this->value_ = avalue;
+ this->symsize_ = sym_size;
}
// Initialize the fields in Sized_symbol for an undefined symbol.
template<int size>
void
-Sized_symbol<size>::init_undefined(const char* name, const char* version,
- elfcpp::STT type, elfcpp::STB binding,
- elfcpp::STV visibility, unsigned char nonvis)
+Sized_symbol<size>::init_undefined(const char* aname, const char* aversion,
+ elfcpp::STT atype, elfcpp::STB abinding,
+ elfcpp::STV avisibility, unsigned char non_vis)
{
- this->init_base_undefined(name, version, type, binding, visibility, nonvis);
+ this->init_base_undefined(aname, aversion, atype, abinding, avisibility, non_vis);
this->value_ = 0;
this->symsize_ = 0;
}
@@ -283,21 +283,21 @@ Sized_symbol<size>::init_undefined(const char* name, const char* version,
// Return true if SHNDX represents a common symbol.
bool
-Symbol::is_common_shndx(unsigned int shndx)
+Symbol::is_common_shndx(unsigned int sec_shndx)
{
- return (shndx == elfcpp::SHN_COMMON
- || shndx == parameters->target().small_common_shndx()
- || shndx == parameters->target().large_common_shndx());
+ return (sec_shndx == elfcpp::SHN_COMMON
+ || sec_shndx == parameters->target().small_common_shndx()
+ || sec_shndx == parameters->target().large_common_shndx());
}
// Allocate a common symbol.
template<int size>
void
-Sized_symbol<size>::allocate_common(Output_data* od, Value_type value)
+Sized_symbol<size>::allocate_common(Output_data* od, Value_type avalue)
{
this->allocate_base_common(od);
- this->value_ = value;
+ this->value_ = avalue;
}
// The ""'s around str ensure str is a string literal, so sizeof works.
@@ -323,9 +323,9 @@ Symbol::should_add_dynsym_entry() const
{
Relobj* relobj = static_cast<Relobj*>(this->object());
bool is_ordinary;
- unsigned int shndx = this->shndx(&is_ordinary);
- if (is_ordinary && shndx != elfcpp::SHN_UNDEF
- && !relobj->is_section_included(shndx))
+ unsigned int sec_shndx = this->shndx(&is_ordinary);
+ if (is_ordinary && sec_shndx != elfcpp::SHN_UNDEF
+ && !relobj->is_section_included(sec_shndx))
return false;
}
@@ -351,28 +351,28 @@ Symbol::should_add_dynsym_entry() const
{
// TODO(csilvers): We could probably figure out if we're an operator
// new/delete or typeinfo without the need to demangle.
- char* demangled_name = cplus_demangle(this->name(),
- DMGL_ANSI | DMGL_PARAMS);
- if (demangled_name == NULL)
+ char* ademangled_name = cplus_demangle(this->name(),
+ DMGL_ANSI | DMGL_PARAMS);
+ if (ademangled_name == NULL)
{
// Not a C++ symbol, so it can't satisfy these flags
}
else if (parameters->options().dynamic_list_cpp_new()
- && (strprefix(demangled_name, "operator new")
- || strprefix(demangled_name, "operator delete")))
+ && (strprefix(ademangled_name, "operator new")
+ || strprefix(ademangled_name, "operator delete")))
{
- free(demangled_name);
+ free(ademangled_name);
return true;
}
else if (parameters->options().dynamic_list_cpp_typeinfo()
- && (strprefix(demangled_name, "typeinfo name for")
- || strprefix(demangled_name, "typeinfo for")))
+ && (strprefix(ademangled_name, "typeinfo name for")
+ || strprefix(ademangled_name, "typeinfo for")))
{
- free(demangled_name);
+ free(ademangled_name);
return true;
}
else
- free(demangled_name);
+ free(ademangled_name);
}
// If exporting all symbols or building a shared library,
@@ -434,13 +434,13 @@ Symbol::output_section() const
{
case FROM_OBJECT:
{
- unsigned int shndx = this->u_.from_object.shndx;
- if (shndx != elfcpp::SHN_UNDEF && this->is_ordinary_shndx_)
+ unsigned int sec_shndx = this->u_.from_object.shndx;
+ if (sec_shndx != elfcpp::SHN_UNDEF && this->is_ordinary_shndx_)
{
gold_assert(!this->u_.from_object.object->is_dynamic());
gold_assert(this->u_.from_object.object->pluginobj() == NULL);
Relobj* relobj = static_cast<Relobj*>(this->u_.from_object.object);
- return relobj->output_section(shndx);
+ return relobj->output_section(sec_shndx);
}
return NULL;
}
@@ -486,11 +486,11 @@ Symbol::set_output_section(Output_section* os)
// Class Symbol_table.
Symbol_table::Symbol_table(unsigned int count,
- const Version_script_info& version_script)
+ const Version_script_info& aversion_script)
: saw_undefined_(0), offset_(0), table_(count), namepool_(),
forwarders_(), commons_(), tls_commons_(), small_commons_(),
large_commons_(), forced_locals_(), warnings_(),
- version_script_(version_script), gc_(NULL), icf_(NULL)
+ version_script_(aversion_script), gc_(NULL), icf_(NULL)
{
namepool_.reserve(count);
}
@@ -518,10 +518,10 @@ Symbol_table::Symbol_table_eq::operator()(const Symbol_table_key& k1,
}
bool
-Symbol_table::is_section_folded(Object* obj, unsigned int shndx) const
+Symbol_table::is_section_folded(Object* obj, unsigned int sec_shndx) const
{
return (parameters->options().icf_enabled()
- && this->icf_->is_section_folded(obj, shndx));
+ && this->icf_->is_section_folded(obj, sec_shndx));
}
// For symbols that have been listed with -u option, add them to the
@@ -535,19 +535,19 @@ Symbol_table::gc_mark_undef_symbols()
p != parameters->options().undefined_end();
++p)
{
- const char* name = p->c_str();
- Symbol* sym = this->lookup(name);
+ const char* aname = p->c_str();
+ Symbol* sym = this->lookup(aname);
gold_assert (sym != NULL);
if (sym->source() == Symbol::FROM_OBJECT
&& !sym->object()->is_dynamic())
{
Relobj* obj = static_cast<Relobj*>(sym->object());
bool is_ordinary;
- unsigned int shndx = sym->shndx(&is_ordinary);
+ unsigned int sec_shndx = sym->shndx(&is_ordinary);
if (is_ordinary)
{
gold_assert(this->gc_ != NULL);
- this->gc_->worklist().push(Section_id(obj, shndx));
+ this->gc_->worklist().push(Section_id(obj, sec_shndx));
}
}
}
@@ -562,11 +562,11 @@ Symbol_table::gc_mark_symbol_for_shlib(Symbol* sym)
//Add the object and section to the work list.
Relobj* obj = static_cast<Relobj*>(sym->object());
bool is_ordinary;
- unsigned int shndx = sym->shndx(&is_ordinary);
- if (is_ordinary && shndx != elfcpp::SHN_UNDEF)
+ unsigned int sec_shndx = sym->shndx(&is_ordinary);
+ if (is_ordinary && sec_shndx != elfcpp::SHN_UNDEF)
{
gold_assert(this->gc_!= NULL);
- this->gc_->worklist().push(Section_id(obj, shndx));
+ this->gc_->worklist().push(Section_id(obj, sec_shndx));
}
}
}
@@ -581,11 +581,11 @@ Symbol_table::gc_mark_dyn_syms(Symbol* sym)
{
Relobj *obj = static_cast<Relobj*>(sym->object());
bool is_ordinary;
- unsigned int shndx = sym->shndx(&is_ordinary);
- if (is_ordinary && shndx != elfcpp::SHN_UNDEF)
+ unsigned int sec_shndx = sym->shndx(&is_ordinary);
+ if (is_ordinary && sec_shndx != elfcpp::SHN_UNDEF)
{
gold_assert(this->gc_ != NULL);
- this->gc_->worklist().push(Section_id(obj, shndx));
+ this->gc_->worklist().push(Section_id(obj, sec_shndx));
}
}
}
@@ -616,18 +616,18 @@ Symbol_table::resolve_forwards(const Symbol* from) const
// Look up a symbol by name.
Symbol*
-Symbol_table::lookup(const char* name, const char* version) const
+Symbol_table::lookup(const char* aname, const char* aversion) const
{
Stringpool::Key name_key;
- name = this->namepool_.find(name, &name_key);
- if (name == NULL)
+ aname = this->namepool_.find(aname, &name_key);
+ if (aname == NULL)
return NULL;
Stringpool::Key version_key = 0;
- if (version != NULL)
+ if (aversion != NULL)
{
- version = this->namepool_.find(version, &version_key);
- if (version == NULL)
+ aversion = this->namepool_.find(aversion, &version_key);
+ if (aversion == NULL)
return NULL;
}
@@ -656,8 +656,8 @@ Symbol_table::resolve(Sized_symbol<size>* to, const Sized_symbol<size>* from)
esym.put_st_info(from->binding(), from->type());
esym.put_st_other(from->visibility(), from->nonvis());
bool is_ordinary;
- unsigned int shndx = from->shndx(&is_ordinary);
- this->resolve(to, esym.sym(), shndx, is_ordinary, shndx, from->object(),
+ unsigned int sec_shndx = from->shndx(&is_ordinary);
+ this->resolve(to, esym.sym(), sec_shndx, is_ordinary, sec_shndx, from->object(),
from->version());
if (from->in_reg())
to->set_in_reg();
@@ -689,25 +689,25 @@ Symbol_table::force_local(Symbol* sym)
// option was used.
const char*
-Symbol_table::wrap_symbol(const char* name, Stringpool::Key* name_key)
+Symbol_table::wrap_symbol(const char* aname, Stringpool::Key* name_key)
{
// For some targets, we need to ignore a specific character when
// wrapping, and add it back later.
char prefix = '\0';
- if (name[0] == parameters->target().wrap_char())
+ if (aname[0] == parameters->target().wrap_char())
{
- prefix = name[0];
- ++name;
+ prefix = aname[0];
+ ++aname;
}
- if (parameters->options().is_wrap(name))
+ if (parameters->options().is_wrap(aname))
{
// Turn NAME into __wrap_NAME.
std::string s;
if (prefix != '\0')
s += prefix;
s += "__wrap_";
- s += name;
+ s += aname;
// This will give us both the old and new name in NAMEPOOL_, but
// that is OK. Only the versions we need will wind up in the
@@ -717,18 +717,18 @@ Symbol_table::wrap_symbol(const char* name, Stringpool::Key* name_key)
const char* const real_prefix = "__real_";
const size_t real_prefix_length = strlen(real_prefix);
- if (strncmp(name, real_prefix, real_prefix_length) == 0
- && parameters->options().is_wrap(name + real_prefix_length))
+ if (strncmp(aname, real_prefix, real_prefix_length) == 0
+ && parameters->options().is_wrap(aname + real_prefix_length))
{
// Turn __real_NAME into NAME.
std::string s;
if (prefix != '\0')
s += prefix;
- s += name + real_prefix_length;
+ s += aname + real_prefix_length;
return this->namepool_.add(s.c_str(), true, name_key);
}
- return name;
+ return aname;
}
// This is called when we see a symbol NAME/VERSION, and the symbol
@@ -839,10 +839,10 @@ Symbol_table::define_default_version(Sized_symbol<size>* sym,
template<int size, bool big_endian>
Sized_symbol<size>*
-Symbol_table::add_from_object(Object* object,
- const char *name,
+Symbol_table::add_from_object(Object* aobject,
+ const char *aname,
Stringpool::Key name_key,
- const char *version,
+ const char *aversion,
Stringpool::Key version_key,
bool def,
const elfcpp::Sym<size, big_endian>& sym,
@@ -851,12 +851,12 @@ Symbol_table::add_from_object(Object* object,
unsigned int orig_st_shndx)
{
// Print a message if this symbol is being traced.
- if (parameters->options().is_trace_symbol(name))
+ if (parameters->options().is_trace_symbol(aname))
{
if (orig_st_shndx == elfcpp::SHN_UNDEF)
- gold_info(_("%s: reference to %s"), object->name().c_str(), name);
+ gold_info(_("%s: reference to %s"), aobject->name().c_str(), aname);
else
- gold_info(_("%s: definition of %s"), object->name().c_str(), name);
+ gold_info(_("%s: definition of %s"), aobject->name().c_str(), aname);
}
// For an undefined symbol, we may need to adjust the name using
@@ -864,17 +864,17 @@ Symbol_table::add_from_object(Object* object,
if (orig_st_shndx == elfcpp::SHN_UNDEF
&& parameters->options().any_wrap())
{
- const char* wrap_name = this->wrap_symbol(name, &name_key);
- if (wrap_name != name)
+ const char* wrap_name = this->wrap_symbol(aname, &name_key);
+ if (wrap_name != aname)
{
// If we see a reference to malloc with version GLIBC_2.0,
// and we turn it into a reference to __wrap_malloc, then we
// discard the version number. Otherwise the user would be
// required to specify the correct version for
// __wrap_malloc.
- version = NULL;
+ aversion = NULL;
version_key = 0;
- name = wrap_name;
+ aname = wrap_name;
}
}
@@ -910,8 +910,8 @@ Symbol_table::add_from_object(Object* object,
was_undefined = ret->is_undefined();
was_common = ret->is_common();
- this->resolve(ret, sym, st_shndx, is_ordinary, orig_st_shndx, object,
- version);
+ this->resolve(ret, sym, st_shndx, is_ordinary, orig_st_shndx, aobject,
+ aversion);
if (parameters->options().gc_sections())
this->gc_mark_dyn_syms(ret);
@@ -933,8 +933,8 @@ Symbol_table::add_from_object(Object* object,
was_undefined = ret->is_undefined();
was_common = ret->is_common();
- this->resolve(ret, sym, st_shndx, is_ordinary, orig_st_shndx, object,
- version);
+ this->resolve(ret, sym, st_shndx, is_ordinary, orig_st_shndx, aobject,
+ aversion);
if (parameters->options().gc_sections())
this->gc_mark_dyn_syms(ret);
ins.first->second = ret;
@@ -968,7 +968,7 @@ Symbol_table::add_from_object(Object* object,
}
}
- ret->init_object(name, version, object, sym, st_shndx, is_ordinary);
+ ret->init_object(aname, aversion, aobject, sym, st_shndx, is_ordinary);
ins.first->second = ret;
if (def)
@@ -1055,7 +1055,7 @@ Symbol_table::add_from_relobj(
continue;
}
- const char* name = sym_names + st_name;
+ const char* aname = sym_names + st_name;
bool is_ordinary;
unsigned int st_shndx = relobj->adjust_sym_shndx(i + symndx_offset,
@@ -1078,7 +1078,7 @@ Symbol_table::add_from_relobj(
// In an object file, an '@' in the name separates the symbol
// name from the version name. If there are two '@' characters,
// this is the default version.
- const char* ver = strchr(name, '@');
+ const char* ver = strchr(aname, '@');
Stringpool::Key ver_key = 0;
int namelen = 0;
// DEF: is the version default? LOCAL: is the symbol forced local?
@@ -1088,7 +1088,7 @@ Symbol_table::add_from_relobj(
if (ver != NULL)
{
// The symbol name is of the form foo@VERSION or foo@@VERSION
- namelen = ver - name;
+ namelen = ver - aname;
++ver;
if (*ver == '@')
{
@@ -1102,27 +1102,27 @@ Symbol_table::add_from_relobj(
// about a common symbol?
else
{
- namelen = strlen(name);
+ namelen = strlen(aname);
if (!this->version_script_.empty()
&& st_shndx != elfcpp::SHN_UNDEF)
{
// The symbol name did not have a version, but the
// version script may assign a version anyway.
- std::string version;
- if (this->version_script_.get_symbol_version(name, &version))
+ std::string aversion;
+ if (this->version_script_.get_symbol_version(aname, &aversion))
{
// The version can be empty if the version script is
// only used to force some symbols to be local.
- if (!version.empty())
+ if (!aversion.empty())
{
- ver = this->namepool_.add_with_length(version.c_str(),
- version.length(),
+ ver = this->namepool_.add_with_length(aversion.c_str(),
+ aversion.length(),
true,
&ver_key);
def = true;
}
}
- else if (this->version_script_.symbol_is_local(name))
+ else if (this->version_script_.symbol_is_local(aname))
local = true;
}
}
@@ -1171,11 +1171,11 @@ Symbol_table::add_from_relobj(
}
Stringpool::Key name_key;
- name = this->namepool_.add_with_length(name, namelen, true,
+ aname = this->namepool_.add_with_length(aname, namelen, true,
&name_key);
Sized_symbol<size>* res;
- res = this->add_from_object(relobj, name, name_key, ver, ver_key,
+ res = this->add_from_object(relobj, aname, name_key, ver, ver_key,
def, *psym, st_shndx, is_ordinary,
orig_st_shndx);
@@ -1198,7 +1198,7 @@ template<int size, bool big_endian>
Symbol*
Symbol_table::add_from_pluginobj(
Sized_pluginobj<size, big_endian>* obj,
- const char* name,
+ const char* aname,
const char* ver,
elfcpp::Sym<size, big_endian>* sym)
{
@@ -1223,30 +1223,30 @@ Symbol_table::add_from_pluginobj(
{
// The symbol name did not have a version, but the
// version script may assign a version anyway.
- std::string version;
- if (this->version_script_.get_symbol_version(name, &version))
+ std::string aversion;
+ if (this->version_script_.get_symbol_version(aname, &aversion))
{
// The version can be empty if the version script is
// only used to force some symbols to be local.
- if (!version.empty())
+ if (!aversion.empty())
{
- ver = this->namepool_.add_with_length(version.c_str(),
- version.length(),
+ ver = this->namepool_.add_with_length(aversion.c_str(),
+ aversion.length(),
true,
&ver_key);
def = true;
}
}
- else if (this->version_script_.symbol_is_local(name))
+ else if (this->version_script_.symbol_is_local(aname))
local = true;
}
}
Stringpool::Key name_key;
- name = this->namepool_.add(name, true, &name_key);
+ aname = this->namepool_.add(aname, true, &name_key);
Sized_symbol<size>* res;
- res = this->add_from_object(obj, name, name_key, ver, ver_key,
+ res = this->add_from_object(obj, aname, name_key, ver, ver_key,
def, *sym, st_shndx, is_ordinary, st_shndx);
if (local)
@@ -1337,7 +1337,7 @@ Symbol_table::add_from_dynobj(
continue;
}
- const char* name = sym_names + st_name;
+ const char* aname = sym_names + st_name;
bool is_ordinary;
unsigned int st_shndx = dynobj->adjust_sym_shndx(i, psym->get_st_shndx(),
@@ -1351,8 +1351,8 @@ Symbol_table::add_from_dynobj(
if (versym == NULL)
{
Stringpool::Key name_key;
- name = this->namepool_.add(name, true, &name_key);
- res = this->add_from_object(dynobj, name, name_key, NULL, 0,
+ aname = this->namepool_.add(aname, true, &name_key);
+ res = this->add_from_object(dynobj, aname, name_key, NULL, 0,
false, *psym, st_shndx, is_ordinary,
st_shndx);
}
@@ -1381,13 +1381,13 @@ Symbol_table::add_from_dynobj(
// At this point we are definitely going to add this symbol.
Stringpool::Key name_key;
- name = this->namepool_.add(name, true, &name_key);
+ aname = this->namepool_.add(aname, true, &name_key);
if (v == static_cast<unsigned int>(elfcpp::VER_NDX_LOCAL)
|| v == static_cast<unsigned int>(elfcpp::VER_NDX_GLOBAL))
{
// This symbol does not have a version.
- res = this->add_from_object(dynobj, name, name_key, NULL, 0,
+ res = this->add_from_object(dynobj, aname, name_key, NULL, 0,
false, *psym, st_shndx, is_ordinary,
st_shndx);
}
@@ -1400,8 +1400,8 @@ Symbol_table::add_from_dynobj(
continue;
}
- const char* version = (*version_map)[v];
- if (version == NULL)
+ const char* aversion = (*version_map)[v];
+ if (aversion == NULL)
{
dynobj->error(_("versym for symbol %zu has no name: %u"),
i, v);
@@ -1409,7 +1409,7 @@ Symbol_table::add_from_dynobj(
}
Stringpool::Key version_key;
- version = this->namepool_.add(version, true, &version_key);
+ aversion = this->namepool_.add(aversion, true, &version_key);
// If this is an absolute symbol, and the version name
// and symbol name are the same, then this is the
@@ -1419,14 +1419,14 @@ Symbol_table::add_from_dynobj(
if (st_shndx == elfcpp::SHN_ABS
&& !is_ordinary
&& name_key == version_key)
- res = this->add_from_object(dynobj, name, name_key, NULL, 0,
+ res = this->add_from_object(dynobj, aname, name_key, NULL, 0,
false, *psym, st_shndx, is_ordinary,
st_shndx);
else
{
const bool def = (!hidden
&& st_shndx != elfcpp::SHN_UNDEF);
- res = this->add_from_object(dynobj, name, name_key, version,
+ res = this->add_from_object(dynobj, aname, name_key, aversion,
version_key, def, *psym, st_shndx,
is_ordinary, st_shndx);
}
@@ -1684,25 +1684,25 @@ Symbol_table::define_special_symbol(const char** pname, const char** pversion,
// Define a symbol based on an Output_data.
Symbol*
-Symbol_table::define_in_output_data(const char* name,
- const char* version,
+Symbol_table::define_in_output_data(const char* aname,
+ const char* aversion,
Output_data* od,
- uint64_t value,
- uint64_t symsize,
+ uint64_t avalue,
+ uint64_t sym_size,
elfcpp::STT type,
elfcpp::STB binding,
elfcpp::STV visibility,
unsigned char nonvis,
- bool offset_is_from_end,
+ bool offset_is_from_the_end,
bool only_if_ref)
{
if (parameters->target().get_size() == 32)
{
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_32_BIG)
- return this->do_define_in_output_data<32>(name, version, od,
- value, symsize, type, binding,
+ return this->do_define_in_output_data<32>(aname, aversion, od,
+ avalue, sym_size, type, binding,
visibility, nonvis,
- offset_is_from_end,
+ offset_is_from_the_end,
only_if_ref);
#else
gold_unreachable();
@@ -1711,10 +1711,10 @@ Symbol_table::define_in_output_data(const char* name,
else if (parameters->target().get_size() == 64)
{
#if defined(HAVE_TARGET_64_LITTLE) || defined(HAVE_TARGET_64_BIG)
- return this->do_define_in_output_data<64>(name, version, od,
- value, symsize, type, binding,
+ return this->do_define_in_output_data<64>(aname, aversion, od,
+ avalue, sym_size, type, binding,
visibility, nonvis,
- offset_is_from_end,
+ offset_is_from_the_end,
only_if_ref);
#else
gold_unreachable();
@@ -1729,16 +1729,16 @@ Symbol_table::define_in_output_data(const char* name,
template<int size>
Sized_symbol<size>*
Symbol_table::do_define_in_output_data(
- const char* name,
- const char* version,
+ const char* aname,
+ const char* aversion,
Output_data* od,
- typename elfcpp::Elf_types<size>::Elf_Addr value,
- typename elfcpp::Elf_types<size>::Elf_WXword symsize,
+ typename elfcpp::Elf_types<size>::Elf_Addr avalue,
+ typename elfcpp::Elf_types<size>::Elf_WXword sym_size,
elfcpp::STT type,
elfcpp::STB binding,
elfcpp::STV visibility,
unsigned char nonvis,
- bool offset_is_from_end,
+ bool offset_is_from_the_end,
bool only_if_ref)
{
Sized_symbol<size>* sym;
@@ -1748,7 +1748,7 @@ Symbol_table::do_define_in_output_data(
if (parameters->target().is_big_endian())
{
#if defined(HAVE_TARGET_32_BIG) || defined(HAVE_TARGET_64_BIG)
- sym = this->define_special_symbol<size, true>(&name, &version,
+ sym = this->define_special_symbol<size, true>(&aname, &aversion,
only_if_ref, &oldsym,
&resolve_oldsym);
#else
@@ -1758,7 +1758,7 @@ Symbol_table::do_define_in_output_data(
else
{
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_64_LITTLE)
- sym = this->define_special_symbol<size, false>(&name, &version,
+ sym = this->define_special_symbol<size, false>(&aname, &aversion,
only_if_ref, &oldsym,
&resolve_oldsym);
#else
@@ -1769,15 +1769,15 @@ Symbol_table::do_define_in_output_data(
if (sym == NULL)
return NULL;
- sym->init_output_data(name, version, od, value, symsize, type, binding,
- visibility, nonvis, offset_is_from_end);
+ sym->init_output_data(aname, aversion, od, avalue, sym_size, type, binding,
+ visibility, nonvis, offset_is_from_the_end);
if (oldsym == NULL)
{
if (binding == elfcpp::STB_LOCAL
- || this->version_script_.symbol_is_local(name))
+ || this->version_script_.symbol_is_local(aname))
this->force_local(sym);
- else if (version != NULL)
+ else if (aversion != NULL)
sym->set_is_default();
return sym;
}
@@ -1797,24 +1797,24 @@ Symbol_table::do_define_in_output_data(
// Define a symbol based on an Output_segment.
Symbol*
-Symbol_table::define_in_output_segment(const char* name,
- const char* version, Output_segment* os,
- uint64_t value,
- uint64_t symsize,
+Symbol_table::define_in_output_segment(const char* aname,
+ const char* aversion, Output_segment* os,
+ uint64_t avalue,
+ uint64_t sym_size,
elfcpp::STT type,
elfcpp::STB binding,
elfcpp::STV visibility,
unsigned char nonvis,
- Symbol::Segment_offset_base offset_base,
+ Symbol::Segment_offset_base offsetbase,
bool only_if_ref)
{
if (parameters->target().get_size() == 32)
{
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_32_BIG)
- return this->do_define_in_output_segment<32>(name, version, os,
- value, symsize, type,
+ return this->do_define_in_output_segment<32>(aname, aversion, os,
+ avalue, sym_size, type,
binding, visibility, nonvis,
- offset_base, only_if_ref);
+ offsetbase, only_if_ref);
#else
gold_unreachable();
#endif
@@ -1822,10 +1822,10 @@ Symbol_table::define_in_output_segment(const char* name,
else if (parameters->target().get_size() == 64)
{
#if defined(HAVE_TARGET_64_LITTLE) || defined(HAVE_TARGET_64_BIG)
- return this->do_define_in_output_segment<64>(name, version, os,
- value, symsize, type,
+ return this->do_define_in_output_segment<64>(aname, aversion, os,
+ avalue, sym_size, type,
binding, visibility, nonvis,
- offset_base, only_if_ref);
+ offsetbase, only_if_ref);
#else
gold_unreachable();
#endif
@@ -1839,16 +1839,16 @@ Symbol_table::define_in_output_segment(const char* name,
template<int size>
Sized_symbol<size>*
Symbol_table::do_define_in_output_segment(
- const char* name,
- const char* version,
+ const char* aname,
+ const char* aversion,
Output_segment* os,
- typename elfcpp::Elf_types<size>::Elf_Addr value,
- typename elfcpp::Elf_types<size>::Elf_WXword symsize,
+ typename elfcpp::Elf_types<size>::Elf_Addr avalue,
+ typename elfcpp::Elf_types<size>::Elf_WXword sym_size,
elfcpp::STT type,
elfcpp::STB binding,
elfcpp::STV visibility,
unsigned char nonvis,
- Symbol::Segment_offset_base offset_base,
+ Symbol::Segment_offset_base offsetbase,
bool only_if_ref)
{
Sized_symbol<size>* sym;
@@ -1858,7 +1858,7 @@ Symbol_table::do_define_in_output_segment(
if (parameters->target().is_big_endian())
{
#if defined(HAVE_TARGET_32_BIG) || defined(HAVE_TARGET_64_BIG)
- sym = this->define_special_symbol<size, true>(&name, &version,
+ sym = this->define_special_symbol<size, true>(&aname, &aversion,
only_if_ref, &oldsym,
&resolve_oldsym);
#else
@@ -1868,7 +1868,7 @@ Symbol_table::do_define_in_output_segment(
else
{
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_64_LITTLE)
- sym = this->define_special_symbol<size, false>(&name, &version,
+ sym = this->define_special_symbol<size, false>(&aname, &aversion,
only_if_ref, &oldsym,
&resolve_oldsym);
#else
@@ -1879,15 +1879,15 @@ Symbol_table::do_define_in_output_segment(
if (sym == NULL)
return NULL;
- sym->init_output_segment(name, version, os, value, symsize, type, binding,
- visibility, nonvis, offset_base);
+ sym->init_output_segment(aname, aversion, os, avalue, sym_size, type, binding,
+ visibility, nonvis, offsetbase);
if (oldsym == NULL)
{
if (binding == elfcpp::STB_LOCAL
- || this->version_script_.symbol_is_local(name))
+ || this->version_script_.symbol_is_local(aname))
this->force_local(sym);
- else if (version != NULL)
+ else if (aversion != NULL)
sym->set_is_default();
return sym;
}
@@ -1908,10 +1908,10 @@ Symbol_table::do_define_in_output_segment(
// definition error if this symbol is already defined.
Symbol*
-Symbol_table::define_as_constant(const char* name,
- const char* version,
- uint64_t value,
- uint64_t symsize,
+Symbol_table::define_as_constant(const char* aname,
+ const char* aversion,
+ uint64_t avalue,
+ uint64_t sym_size,
elfcpp::STT type,
elfcpp::STB binding,
elfcpp::STV visibility,
@@ -1922,8 +1922,8 @@ Symbol_table::define_as_constant(const char* name,
if (parameters->target().get_size() == 32)
{
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_32_BIG)
- return this->do_define_as_constant<32>(name, version, value,
- symsize, type, binding,
+ return this->do_define_as_constant<32>(aname, aversion, avalue,
+ sym_size, type, binding,
visibility, nonvis, only_if_ref,
force_override);
#else
@@ -1933,8 +1933,8 @@ Symbol_table::define_as_constant(const char* name,
else if (parameters->target().get_size() == 64)
{
#if defined(HAVE_TARGET_64_LITTLE) || defined(HAVE_TARGET_64_BIG)
- return this->do_define_as_constant<64>(name, version, value,
- symsize, type, binding,
+ return this->do_define_as_constant<64>(aname, aversion, avalue,
+ sym_size, type, binding,
visibility, nonvis, only_if_ref,
force_override);
#else
@@ -1950,10 +1950,10 @@ Symbol_table::define_as_constant(const char* name,
template<int size>
Sized_symbol<size>*
Symbol_table::do_define_as_constant(
- const char* name,
- const char* version,
- typename elfcpp::Elf_types<size>::Elf_Addr value,
- typename elfcpp::Elf_types<size>::Elf_WXword symsize,
+ const char* aname,
+ const char* aversion,
+ typename elfcpp::Elf_types<size>::Elf_Addr avalue,
+ typename elfcpp::Elf_types<size>::Elf_WXword sym_size,
elfcpp::STT type,
elfcpp::STB binding,
elfcpp::STV visibility,
@@ -1968,7 +1968,7 @@ Symbol_table::do_define_as_constant(
if (parameters->target().is_big_endian())
{
#if defined(HAVE_TARGET_32_BIG) || defined(HAVE_TARGET_64_BIG)
- sym = this->define_special_symbol<size, true>(&name, &version,
+ sym = this->define_special_symbol<size, true>(&aname, &aversion,
only_if_ref, &oldsym,
&resolve_oldsym);
#else
@@ -1978,7 +1978,7 @@ Symbol_table::do_define_as_constant(
else
{
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_64_LITTLE)
- sym = this->define_special_symbol<size, false>(&name, &version,
+ sym = this->define_special_symbol<size, false>(&aname, &aversion,
only_if_ref, &oldsym,
&resolve_oldsym);
#else
@@ -1989,21 +1989,21 @@ Symbol_table::do_define_as_constant(
if (sym == NULL)
return NULL;
- sym->init_constant(name, version, value, symsize, type, binding, visibility,
+ sym->init_constant(aname, aversion, avalue, sym_size, type, binding, visibility,
nonvis);
if (oldsym == NULL)
{
// Version symbols are absolute symbols with name == version.
// We don't want to force them to be local.
- if ((version == NULL
- || name != version
- || value != 0)
+ if ((aversion == NULL
+ || aname != aversion
+ || avalue != 0)
&& (binding == elfcpp::STB_LOCAL
- || this->version_script_.symbol_is_local(name)))
+ || this->version_script_.symbol_is_local(aname)))
this->force_local(sym);
- else if (version != NULL
- && (name != version || value != 0))
+ else if (aversion != NULL
+ && (aname != aversion || avalue != 0))
sym->set_is_default();
return sym;
}
@@ -2079,13 +2079,13 @@ void
Symbol_table::define_with_copy_reloc(
Sized_symbol<size>* csym,
Output_data* posd,
- typename elfcpp::Elf_types<size>::Elf_Addr value)
+ typename elfcpp::Elf_types<size>::Elf_Addr avalue)
{
gold_assert(csym->is_from_dynobj());
gold_assert(!csym->is_copied_from_dynobj());
- Object* object = csym->object();
- gold_assert(object->is_dynamic());
- Dynobj* dynobj = static_cast<Dynobj*>(object);
+ Object* aobject = csym->object();
+ gold_assert(aobject->is_dynamic());
+ Dynobj* dynobj = static_cast<Dynobj*>(aobject);
// Our copied variable has to override any variable in a shared
// library.
@@ -2094,7 +2094,7 @@ Symbol_table::define_with_copy_reloc(
binding = elfcpp::STB_GLOBAL;
this->define_in_output_data(csym->name(), csym->version(),
- posd, value, csym->symsize(),
+ posd, avalue, csym->symsize(),
csym->type(), binding,
csym->visibility(), csym->nonvis(),
false, false);
@@ -2172,12 +2172,12 @@ Symbol_table::do_add_undefined_symbols_from_command_line()
p != parameters->options().undefined_end();
++p)
{
- const char* name = p->c_str();
+ const char* aname = p->c_str();
- if (this->lookup(name) != NULL)
+ if (this->lookup(aname) != NULL)
continue;
- const char* version = NULL;
+ const char* aversion = NULL;
Sized_symbol<size>* sym;
Sized_symbol<size>* oldsym;
@@ -2185,7 +2185,7 @@ Symbol_table::do_add_undefined_symbols_from_command_line()
if (parameters->target().is_big_endian())
{
#if defined(HAVE_TARGET_32_BIG) || defined(HAVE_TARGET_64_BIG)
- sym = this->define_special_symbol<size, true>(&name, &version,
+ sym = this->define_special_symbol<size, true>(&aname, &aversion,
false, &oldsym,
&resolve_oldsym);
#else
@@ -2195,7 +2195,7 @@ Symbol_table::do_add_undefined_symbols_from_command_line()
else
{
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_64_LITTLE)
- sym = this->define_special_symbol<size, false>(&name, &version,
+ sym = this->define_special_symbol<size, false>(&aname, &aversion,
false, &oldsym,
&resolve_oldsym);
#else
@@ -2205,7 +2205,7 @@ Symbol_table::do_add_undefined_symbols_from_command_line()
gold_assert(oldsym == NULL);
- sym->init_undefined(name, version, elfcpp::STT_NOTYPE, elfcpp::STB_GLOBAL,
+ sym->init_undefined(aname, aversion, elfcpp::STT_NOTYPE, elfcpp::STB_GLOBAL,
elfcpp::STV_DEFAULT, 0);
++this->saw_undefined_;
}
@@ -2375,18 +2375,18 @@ Symbol_table::compute_final_value(
Compute_final_value_status* pstatus) const
{
typedef typename Sized_symbol<size>::Value_type Value_type;
- Value_type value;
+ Value_type avalue;
switch (sym->source())
{
case Symbol::FROM_OBJECT:
{
bool is_ordinary;
- unsigned int shndx = sym->shndx(&is_ordinary);
+ unsigned int sec_shndx = sym->shndx(&is_ordinary);
if (!is_ordinary
- && shndx != elfcpp::SHN_ABS
- && !Symbol::is_common_shndx(shndx))
+ && sec_shndx != elfcpp::SHN_ABS
+ && !Symbol::is_common_shndx(sec_shndx))
{
*pstatus = CFVS_UNSUPPORTED_SYMBOL_SECTION;
return 0;
@@ -2395,32 +2395,32 @@ Symbol_table::compute_final_value(
Object* symobj = sym->object();
if (symobj->is_dynamic())
{
- value = 0;
- shndx = elfcpp::SHN_UNDEF;
+ avalue = 0;
+ sec_shndx = elfcpp::SHN_UNDEF;
}
else if (symobj->pluginobj() != NULL)
{
- value = 0;
- shndx = elfcpp::SHN_UNDEF;
+ avalue = 0;
+ sec_shndx = elfcpp::SHN_UNDEF;
}
- else if (shndx == elfcpp::SHN_UNDEF)
- value = 0;
+ else if (sec_shndx == elfcpp::SHN_UNDEF)
+ avalue = 0;
else if (!is_ordinary
- && (shndx == elfcpp::SHN_ABS
- || Symbol::is_common_shndx(shndx)))
- value = sym->value();
+ && (sec_shndx == elfcpp::SHN_ABS
+ || Symbol::is_common_shndx(sec_shndx)))
+ avalue = sym->value();
else
{
Relobj* relobj = static_cast<Relobj*>(symobj);
- Output_section* os = relobj->output_section(shndx);
- uint64_t secoff64 = relobj->output_section_offset(shndx);
+ Output_section* os = relobj->output_section(sec_shndx);
+ uint64_t secoff64 = relobj->output_section_offset(sec_shndx);
- if (this->is_section_folded(relobj, shndx))
+ if (this->is_section_folded(relobj, sec_shndx))
{
gold_assert(os == NULL);
// Get the os of the section it is folded onto.
Section_id folded = this->icf_->get_folded_section(relobj,
- shndx);
+ sec_shndx);
gold_assert(folded.first != NULL);
Relobj* folded_obj = reinterpret_cast<Relobj*>(folded.first);
os = folded_obj->output_section(folded.second);
@@ -2442,16 +2442,16 @@ Symbol_table::compute_final_value(
{
// The section needs special handling (e.g., a merge section).
- value = os->output_address(relobj, shndx, sym->value());
+ avalue = os->output_address(relobj, sec_shndx, sym->value());
}
else
{
Value_type secoff =
convert_types<Value_type, uint64_t>(secoff64);
if (sym->type() == elfcpp::STT_TLS)
- value = sym->value() + os->tls_offset() + secoff;
+ avalue = sym->value() + os->tls_offset() + secoff;
else
- value = sym->value() + os->address() + secoff;
+ avalue = sym->value() + os->address() + secoff;
}
}
}
@@ -2460,35 +2460,35 @@ Symbol_table::compute_final_value(
case Symbol::IN_OUTPUT_DATA:
{
Output_data* od = sym->output_data();
- value = sym->value();
+ avalue = sym->value();
if (sym->type() != elfcpp::STT_TLS)
- value += od->address();
+ avalue += od->address();
else
{
Output_section* os = od->output_section();
gold_assert(os != NULL);
- value += os->tls_offset() + (od->address() - os->address());
+ avalue += os->tls_offset() + (od->address() - os->address());
}
if (sym->offset_is_from_end())
- value += od->data_size();
+ avalue += od->data_size();
}
break;
case Symbol::IN_OUTPUT_SEGMENT:
{
Output_segment* os = sym->output_segment();
- value = sym->value();
+ avalue = sym->value();
if (sym->type() != elfcpp::STT_TLS)
- value += os->vaddr();
+ avalue += os->vaddr();
switch (sym->offset_base())
{
case Symbol::SEGMENT_START:
break;
case Symbol::SEGMENT_END:
- value += os->memsz();
+ avalue += os->memsz();
break;
case Symbol::SEGMENT_BSS:
- value += os->filesz();
+ avalue += os->filesz();
break;
default:
gold_unreachable();
@@ -2497,11 +2497,11 @@ Symbol_table::compute_final_value(
break;
case Symbol::IS_CONSTANT:
- value = sym->value();
+ avalue = sym->value();
break;
case Symbol::IS_UNDEFINED:
- value = 0;
+ avalue = 0;
break;
default:
@@ -2509,7 +2509,7 @@ Symbol_table::compute_final_value(
}
*pstatus = CFVS_OK;
- return value;
+ return avalue;
}
// Finalize the symbol SYM. This returns true if the symbol should be
@@ -2538,7 +2538,7 @@ Symbol_table::sized_finalize_symbol(Symbol* unsized_sym)
// Compute final symbol value.
Compute_final_value_status status;
- Value_type value = this->compute_final_value(sym, &status);
+ Value_type avalue = this->compute_final_value(sym, &status);
switch (status)
{
@@ -2547,9 +2547,9 @@ Symbol_table::sized_finalize_symbol(Symbol* unsized_sym)
case CFVS_UNSUPPORTED_SYMBOL_SECTION:
{
bool is_ordinary;
- unsigned int shndx = sym->shndx(&is_ordinary);
+ unsigned int sec_shndx = sym->shndx(&is_ordinary);
gold_error(_("%s: unsupported symbol section 0x%x"),
- sym->demangled_name().c_str(), shndx);
+ sym->demangled_name().c_str(), sec_shndx);
}
break;
case CFVS_NO_OUTPUT_SECTION:
@@ -2559,7 +2559,7 @@ Symbol_table::sized_finalize_symbol(Symbol* unsized_sym)
gold_unreachable();
}
- sym->set_value(value);
+ sym->set_value(avalue);
if (parameters->options().strip_all()
|| !parameters->options().should_retain_symbol(sym->name()))
@@ -2666,7 +2666,7 @@ Symbol_table::sized_write_globals(const Stringpool* sympool,
continue;
}
- unsigned int shndx;
+ unsigned int sec_shndx;
typename elfcpp::Elf_types<size>::Elf_Addr sym_value = sym->value();
typename elfcpp::Elf_types<size>::Elf_Addr dynsym_value = sym_value;
switch (sym->source())
@@ -2682,7 +2682,7 @@ Symbol_table::sized_write_globals(const Stringpool* sympool,
{
gold_error(_("%s: unsupported symbol section 0x%x"),
sym->demangled_name().c_str(), in_shndx);
- shndx = in_shndx;
+ sec_shndx = in_shndx;
}
else
{
@@ -2691,15 +2691,15 @@ Symbol_table::sized_write_globals(const Stringpool* sympool,
{
if (sym->needs_dynsym_value())
dynsym_value = target.dynsym_value(sym);
- shndx = elfcpp::SHN_UNDEF;
+ sec_shndx = elfcpp::SHN_UNDEF;
}
else if (symobj->pluginobj() != NULL)
- shndx = elfcpp::SHN_UNDEF;
+ sec_shndx = elfcpp::SHN_UNDEF;
else if (in_shndx == elfcpp::SHN_UNDEF
|| (!is_ordinary
&& (in_shndx == elfcpp::SHN_ABS
|| Symbol::is_common_shndx(in_shndx))))
- shndx = in_shndx;
+ sec_shndx = in_shndx;
else
{
Relobj* relobj = static_cast<Relobj*>(symobj);
@@ -2718,15 +2718,15 @@ Symbol_table::sized_write_globals(const Stringpool* sympool,
gold_assert(os != NULL);
}
gold_assert(os != NULL);
- shndx = os->out_shndx();
+ sec_shndx = os->out_shndx();
- if (shndx >= elfcpp::SHN_LORESERVE)
+ if (sec_shndx >= elfcpp::SHN_LORESERVE)
{
if (sym_index != -1U)
- symtab_xindex->add(sym_index, shndx);
+ symtab_xindex->add(sym_index, sec_shndx);
if (dynsym_index != -1U)
- dynsym_xindex->add(dynsym_index, shndx);
- shndx = elfcpp::SHN_XINDEX;
+ dynsym_xindex->add(dynsym_index, sec_shndx);
+ sec_shndx = elfcpp::SHN_XINDEX;
}
// In object files symbol values are section
@@ -2739,27 +2739,27 @@ Symbol_table::sized_write_globals(const Stringpool* sympool,
break;
case Symbol::IN_OUTPUT_DATA:
- shndx = sym->output_data()->out_shndx();
- if (shndx >= elfcpp::SHN_LORESERVE)
+ sec_shndx = sym->output_data()->out_shndx();
+ if (sec_shndx >= elfcpp::SHN_LORESERVE)
{
if (sym_index != -1U)
- symtab_xindex->add(sym_index, shndx);
+ symtab_xindex->add(sym_index, sec_shndx);
if (dynsym_index != -1U)
- dynsym_xindex->add(dynsym_index, shndx);
- shndx = elfcpp::SHN_XINDEX;
+ dynsym_xindex->add(dynsym_index, sec_shndx);
+ sec_shndx = elfcpp::SHN_XINDEX;
}
break;
case Symbol::IN_OUTPUT_SEGMENT:
- shndx = elfcpp::SHN_ABS;
+ sec_shndx = elfcpp::SHN_ABS;
break;
case Symbol::IS_CONSTANT:
- shndx = elfcpp::SHN_ABS;
+ sec_shndx = elfcpp::SHN_ABS;
break;
case Symbol::IS_UNDEFINED:
- shndx = elfcpp::SHN_UNDEF;
+ sec_shndx = elfcpp::SHN_UNDEF;
break;
default:
@@ -2771,7 +2771,7 @@ Symbol_table::sized_write_globals(const Stringpool* sympool,
sym_index -= first_global_index;
gold_assert(sym_index < output_count);
unsigned char* ps = psyms + (sym_index * sym_size);
- this->sized_write_symbol<size, big_endian>(sym, sym_value, shndx,
+ this->sized_write_symbol<size, big_endian>(sym, sym_value, sec_shndx,
sympool, ps);
}
@@ -2780,7 +2780,7 @@ Symbol_table::sized_write_globals(const Stringpool* sympool,
dynsym_index -= first_dynamic_global_index;
gold_assert(dynsym_index < dynamic_count);
unsigned char* pd = dynamic_view + (dynsym_index * sym_size);
- this->sized_write_symbol<size, big_endian>(sym, dynsym_value, shndx,
+ this->sized_write_symbol<size, big_endian>(sym, dynsym_value, sec_shndx,
dynpool, pd);
}
}
@@ -2797,16 +2797,16 @@ template<int size, bool big_endian>
void
Symbol_table::sized_write_symbol(
Sized_symbol<size>* sym,
- typename elfcpp::Elf_types<size>::Elf_Addr value,
- unsigned int shndx,
+ typename elfcpp::Elf_types<size>::Elf_Addr avalue,
+ unsigned int sec_shndx,
const Stringpool* pool,
unsigned char* p) const
{
elfcpp::Sym_write<size, big_endian> osym(p);
osym.put_st_name(pool->get_offset(sym->name()));
- osym.put_st_value(value);
+ osym.put_st_value(avalue);
// Use a symbol size of zero for undefined symbols from shared libraries.
- if (shndx == elfcpp::SHN_UNDEF && sym->is_from_dynobj())
+ if (sec_shndx == elfcpp::SHN_UNDEF && sym->is_from_dynobj())
osym.put_st_size(0);
else
osym.put_st_size(sym->symsize());
@@ -2821,7 +2821,7 @@ Symbol_table::sized_write_symbol(
else
osym.put_st_info(elfcpp::elf_st_info(sym->binding(), type));
osym.put_st_other(elfcpp::elf_st_other(sym->visibility(), sym->nonvis()));
- osym.put_st_shndx(shndx);
+ osym.put_st_shndx(sec_shndx);
}
// Check for unresolved symbols in shared libraries. This is
@@ -2920,13 +2920,13 @@ Symbol_table::sized_write_section_symbol(const Output_section* os,
elfcpp::STT_SECTION));
osym.put_st_other(elfcpp::elf_st_other(elfcpp::STV_DEFAULT, 0));
- unsigned int shndx = os->out_shndx();
- if (shndx >= elfcpp::SHN_LORESERVE)
+ unsigned int sec_shndx = os->out_shndx();
+ if (sec_shndx >= elfcpp::SHN_LORESERVE)
{
- symtab_xindex->add(os->symtab_index(), shndx);
- shndx = elfcpp::SHN_XINDEX;
+ symtab_xindex->add(os->symtab_index(), sec_shndx);
+ sec_shndx = elfcpp::SHN_XINDEX;
}
- osym.put_st_shndx(shndx);
+ osym.put_st_shndx(sec_shndx);
of->write_output_view(offset, sym_size, pov);
}
@@ -3029,11 +3029,11 @@ Symbol_table::detect_odr_violations(const Task* task,
// Add a new warning.
void
-Warnings::add_warning(Symbol_table* symtab, const char* name, Object* obj,
+Warnings::add_warning(Symbol_table* symtab, const char* aname, Object* obj,
const std::string& warning)
{
- name = symtab->canonicalize_name(name);
- this->warnings_[name].set(obj, warning);
+ aname = symtab->canonicalize_name(aname);
+ this->warnings_[aname].set(obj, warning);
}
// Look through the warnings and mark the symbols for which we should
@@ -3253,7 +3253,7 @@ void
Symbol_table::define_with_copy_reloc<32>(
Sized_symbol<32>* sym,
Output_data* posd,
- elfcpp::Elf_types<32>::Elf_Addr value);
+ elfcpp::Elf_types<32>::Elf_Addr avalue);
#endif
#if defined(HAVE_TARGET_64_LITTLE) || defined(HAVE_TARGET_64_BIG)
@@ -3262,7 +3262,7 @@ void
Symbol_table::define_with_copy_reloc<64>(
Sized_symbol<64>* sym,
Output_data* posd,
- elfcpp::Elf_types<64>::Elf_Addr value);
+ elfcpp::Elf_types<64>::Elf_Addr avalue);
#endif
#ifdef HAVE_TARGET_32_LITTLE